{{$:/language/OfficialPluginLibrary/Hint}}
{
"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-2021, 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/add-comment": {
"title": "$:/core/images/add-comment",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-add-comment tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 56H36a8 8 0 100 16h20v20a8 8 0 1016 0V72h20a8 8 0 100-16H72V36a8 8 0 10-16 0v20zm-12.595 58.362c-6.683 7.659-20.297 12.903-36.006 12.903-2.196 0-4.35-.102-6.451-.3 9.652-3.836 17.356-12.24 21.01-22.874C8.516 94.28 0 79.734 0 63.5 0 33.953 28.206 10 63 10s63 23.953 63 53.5S97.794 117 63 117c-6.841 0-13.428-.926-19.595-2.638z\"/></svg>"
},
"$:/core/images/advanced-search-button": {
"title": "$:/core/images/advanced-search-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-advanced-search-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M74.565 87.985A47.776 47.776 0 0148 96C21.49 96 0 74.51 0 48S21.49 0 48 0s48 21.49 48 48c0 9.854-2.97 19.015-8.062 26.636l34.347 34.347a9.443 9.443 0 010 13.36 9.446 9.446 0 01-13.36 0l-34.36-34.358zM48 80c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/><circle cx=\"48\" cy=\"48\" r=\"8\"/><circle cx=\"28\" cy=\"48\" r=\"8\"/><circle cx=\"68\" cy=\"48\" r=\"8\"/></g></svg>"
},
"$:/core/images/auto-height": {
"title": "$:/core/images/auto-height",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-auto-height tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M67.987 114.356l-.029-14.477a4 4 0 00-2.067-3.494l-15.966-8.813-1.933 7.502H79.9c4.222 0 5.564-5.693 1.786-7.58L49.797 71.572 48.01 79.15h31.982c4.217 0 5.564-5.682 1.795-7.575L49.805 55.517l-1.795 7.575h31.982c4.212 0 5.563-5.67 1.805-7.57l-16.034-8.105 2.195 3.57V35.614l9.214 9.213a4 4 0 105.656-5.656l-16-16a4 4 0 00-5.656 0l-16 16a4 4 0 105.656 5.656l9.13-9.13v15.288a4 4 0 002.195 3.57l16.035 8.106 1.804-7.57H48.01c-4.217 0-5.564 5.682-1.795 7.574l31.982 16.059 1.795-7.575H48.01c-4.222 0-5.564 5.693-1.787 7.579l31.89 15.923 1.787-7.578H47.992c-4.133 0-5.552 5.504-1.933 7.501l15.966 8.813-2.067-3.494.029 14.436-9.159-9.158a4 4 0 00-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656l-9.185 9.184zM16 20h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
},
"$:/core/images/blank": {
"title": "$:/core/images/blank",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-blank tc-image-button\" viewBox=\"0 0 128 128\"/>"
},
"$:/core/images/bold": {
"title": "$:/core/images/bold",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-bold tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.146 51.81V21.87h26.353c2.51 0 4.93.21 7.26.628 2.33.418 4.392 1.165 6.185 2.24 1.793 1.076 3.227 2.57 4.302 4.482 1.076 1.913 1.614 4.363 1.614 7.35 0 5.379-1.613 9.263-4.84 11.653-3.227 2.39-7.35 3.586-12.37 3.586H41.146zM13 0v128h62.028a65.45 65.45 0 0016.762-2.151c5.438-1.434 10.278-3.645 14.52-6.633 4.244-2.988 7.62-6.842 10.13-11.563 2.51-4.721 3.764-10.308 3.764-16.762 0-8.008-1.942-14.85-5.826-20.527-3.884-5.677-9.77-9.65-17.658-11.921 5.737-2.75 10.069-6.275 12.997-10.577 2.928-4.303 4.392-9.681 4.392-16.135 0-5.976-.986-10.995-2.958-15.059-1.972-4.063-4.75-7.32-8.336-9.77-3.585-2.45-7.888-4.213-12.907-5.289C84.888.538 79.33 0 73.235 0H13zm28.146 106.129V70.992H71.8c6.095 0 10.995 1.404 14.7 4.212 3.705 2.81 5.558 7.5 5.558 14.073 0 3.347-.568 6.096-1.703 8.247-1.136 2.151-2.66 3.854-4.572 5.11-1.912 1.254-4.123 2.15-6.633 2.688-2.51.538-5.139.807-7.888.807H41.146z\"/></svg>"
},
"$:/core/images/cancel-button": {
"title": "$:/core/images/cancel-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-cancel-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 76.314l-16.97 16.97a7.999 7.999 0 01-11.314 0c-3.118-3.118-3.124-8.19 0-11.313L52.686 65l-16.97-16.97a7.999 7.999 0 010-11.314c3.118-3.118 8.19-3.124 11.313 0L64 53.686l16.97-16.97a7.999 7.999 0 0111.314 0c3.118 3.118 3.124 8.19 0 11.313L75.314 65l16.97 16.97a7.999 7.999 0 010 11.314c-3.118 3.118-8.19 3.124-11.313 0L64 76.314zM64 129c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 1 0 29.654 0 65c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 17 64 17 16 38.49 16 65s21.49 48 48 48z\"/></svg>"
},
"$:/core/images/chevron-down": {
"title": "$:/core/images/chevron-down",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-down tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.053 85.456a7.889 7.889 0 01-5.6-2.316L2.473 27.16a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0L64.05 66.344l50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.105 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.317z\"/><path d=\"M64.053 124.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></g></svg>"
},
"$:/core/images/chevron-left": {
"title": "$:/core/images/chevron-left",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M47.544 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L66.656 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.105 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.317-5.595z\"/><path d=\"M8.931 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L28.041 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.104 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.316-5.595z\"/></g></svg>"
},
"$:/core/images/chevron-right": {
"title": "$:/core/images/chevron-right",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-right tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M83.456 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196L64.344 63.95 13.963 13.567a7.92 7.92 0 010-11.195c3.086-3.085 8.105-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.317 5.595z\"/><path d=\"M122.069 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></g></svg>"
},
"$:/core/images/chevron-up": {
"title": "$:/core/images/chevron-up",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-up tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M63.947 44.544c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 63.656l-50.382 50.382a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.317z\"/><path d=\"M63.947 5.931c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 25.041 13.567 75.423a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.104 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.316z\"/></g></svg>"
},
"$:/core/images/clone-button": {
"title": "$:/core/images/clone-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-clone-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M32.265 96v24.002A7.996 7.996 0 0040.263 128h79.74a7.996 7.996 0 007.997-7.998v-79.74a7.996 7.996 0 00-7.998-7.997H96V48h12.859a2.99 2.99 0 012.994 2.994v57.865a2.99 2.99 0 01-2.994 2.994H50.994A2.99 2.99 0 0148 108.859V96H32.265z\"/><path d=\"M40 56h-7.993C27.588 56 24 52.418 24 48c0-4.41 3.585-8 8.007-8H40v-7.993C40 27.588 43.582 24 48 24c4.41 0 8 3.585 8 8.007V40h7.993C68.412 40 72 43.582 72 48c0 4.41-3.585 8-8.007 8H56v7.993C56 68.412 52.418 72 48 72c-4.41 0-8-3.585-8-8.007V56zM8 0C3.58 0 0 3.588 0 8v80c0 4.419 3.588 8 8 8h80c4.419 0 8-3.588 8-8V8c0-4.419-3.588-8-8-8H8zM19 16A2.997 2.997 0 0016 19.001v57.998A2.997 2.997 0 0019.001 80h57.998A2.997 2.997 0 0080 76.999V19.001A2.997 2.997 0 0076.999 16H19.001z\"/></g></svg>"
},
"$:/core/images/close-all-button": {
"title": "$:/core/images/close-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-close-all-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M28 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L16.686 100 2.543 85.856a8 8 0 0111.313-11.313L28 88.686l14.144-14.143a8 8 0 0111.313 11.313L39.314 100l14.143 14.144a8 8 0 01-11.313 11.313L28 111.314zM28 39.314L13.856 53.457A8 8 0 012.543 42.144L16.686 28 2.543 13.856A8 8 0 0113.856 2.543L28 16.686 42.144 2.543a8 8 0 0111.313 11.313L39.314 28l14.143 14.144a8 8 0 01-11.313 11.313L28 39.314zM100 39.314L85.856 53.457a8 8 0 01-11.313-11.313L88.686 28 74.543 13.856A8 8 0 0185.856 2.543L100 16.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 28l14.143 14.144a8 8 0 01-11.313 11.313L100 39.314zM100 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L88.686 100 74.543 85.856a8 8 0 0111.313-11.313L100 88.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 100l14.143 14.144a8 8 0 01-11.313 11.313L100 111.314z\"/></g></svg>"
},
"$:/core/images/close-button": {
"title": "$:/core/images/close-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M65.086 75.41l-50.113 50.113c-3.121 3.121-8.192 3.126-11.316.002-3.118-3.118-3.123-8.19.002-11.316l50.114-50.114L3.659 13.982C.538 10.86.533 5.79 3.657 2.666c3.118-3.118 8.19-3.123 11.316.002l50.113 50.114L115.2 2.668c3.121-3.121 8.192-3.126 11.316-.002 3.118 3.118 3.123 8.19-.002 11.316L76.4 64.095l50.114 50.114c3.121 3.121 3.126 8.192.002 11.316-3.118 3.118-8.19 3.123-11.316-.002L65.086 75.409z\"/></svg>"
},
"$:/core/images/close-others-button": {
"title": "$:/core/images/close-others-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-others-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48zm0-16c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32zm0-16c8.837 0 16-7.163 16-16s-7.163-16-16-16-16 7.163-16 16 7.163 16 16 16z\"/></svg>"
},
"$:/core/images/copy-clipboard": {
"title": "$:/core/images/copy-clipboard",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-copy-clipboard tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"33\" height=\"8\" x=\"40\" y=\"40\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"82\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"54\" rx=\"4\"/><rect width=\"33\" height=\"8\" x=\"40\" y=\"96\" rx=\"4\"/><rect width=\"12\" height=\"8\" x=\"40\" y=\"68\" rx=\"4\"/><path d=\"M40 16H24c-4.419 0-8 3.59-8 8a8.031 8.031 0 000 .01v95.98a8.03 8.03 0 000 .01c0 4.41 3.581 8 8 8h80a7.975 7.975 0 005.652-2.34 7.958 7.958 0 002.348-5.652v-16.016c0-4.414-3.582-7.992-8-7.992-4.41 0-8 3.578-8 7.992V112H32V32h64v8.008C96 44.422 99.582 48 104 48c4.41 0 8-3.578 8-7.992V23.992a7.963 7.963 0 00-2.343-5.651A7.995 7.995 0 00104.001 16H88c0-4.41-3.585-8-8.007-8H48.007C43.588 8 40 11.582 40 16zm4-1.004A4.001 4.001 0 0148 11h32c2.21 0 4 1.797 4 3.996v4.008A4.001 4.001 0 0180 23H48c-2.21 0-4-1.797-4-3.996v-4.008z\"/><rect width=\"66\" height=\"16\" x=\"62\" y=\"64\" rx=\"8\"/><path d=\"M84.657 82.343l-16-16v11.314l16-16a8 8 0 10-11.314-11.314l-16 16a8 8 0 000 11.314l16 16a8 8 0 1011.314-11.314z\"/></g></svg>"
},
"$:/core/images/delete-button": {
"title": "$:/core/images/delete-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-delete-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(12)\"><rect width=\"105\" height=\"16\" y=\"11\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"28\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"8\" y=\"16\" rx=\"8\"/><rect width=\"88\" height=\"16\" x=\"8\" y=\"112\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"80\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"56\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"32\" y=\"16\" rx=\"8\"/></g></svg>"
},
"$:/core/images/done-button": {
"title": "$:/core/images/done-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-done-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M42.26 111.032c-2.051.001-4.103-.78-5.668-2.345L2.662 74.758a8 8 0 01-.005-11.32c3.118-3.117 8.192-3.12 11.32.007l28.278 28.278 72.124-72.124a8.002 8.002 0 0111.314-.001c3.118 3.118 3.124 8.19 0 11.315l-77.78 77.78a7.978 7.978 0 01-5.658 2.343z\"/></svg>"
},
"$:/core/images/down-arrow": {
"title": "$:/core/images/down-arrow",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-down-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.177 100.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.086 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></svg>"
},
"$:/core/images/download-button": {
"title": "$:/core/images/download-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-download-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\" class=\"tc-image-download-button-ring\"/><path d=\"M34.35 66.43l26.892 27.205a4.57 4.57 0 006.516 0L94.65 66.43a4.7 4.7 0 000-6.593 4.581 4.581 0 00-3.258-1.365h-8.46c-2.545 0-4.608-2.087-4.608-4.661v-15.15c0-2.575-2.063-4.662-4.608-4.662H55.284c-2.545 0-4.608 2.087-4.608 4.662v15.15c0 2.574-2.063 4.661-4.608 4.661h-8.46c-2.545 0-4.608 2.087-4.608 4.662a4.69 4.69 0 001.35 3.296z\"/></g></svg>"
},
"$:/core/images/edit-button": {
"title": "$:/core/images/edit-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-edit-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M95.627 10.059l-5.656 5.657 11.313 11.313 5.657-5.656-11.314-11.314zm5.657-5.657l1.966-1.966c3.123-3.122 8.194-3.129 11.319-.005 3.117 3.118 3.122 8.192-.005 11.32l-1.966 1.965-11.314-11.314zm-16.97 16.97l-60.25 60.25a8.12 8.12 0 00-.322.342c-.1.087-.198.179-.295.275-5.735 5.735-10.702 22.016-10.702 22.016s16.405-5.09 22.016-10.702c.095-.096.186-.193.272-.292a8.12 8.12 0 00.345-.325l60.25-60.25-11.314-11.313zM35.171 124.19c6.788-.577 13.898-2.272 23.689-5.348 1.825-.573 3.57-1.136 6.336-2.04 16-5.226 21.877-6.807 28.745-7.146 8.358-.413 13.854 2.13 17.58 8.699a4 4 0 006.959-3.946c-5.334-9.406-13.745-13.296-24.933-12.744-7.875.39-14.057 2.052-30.835 7.533-2.739.894-4.46 1.45-6.25 2.012-19.46 6.112-30.77 7.072-39.597 1.747a4 4 0 10-4.132 6.85c6.333 3.82 13.754 5.12 22.438 4.383z\"/></g></svg>"
},
"$:/core/images/erase": {
"title": "$:/core/images/erase",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-erase tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.087 127.996l63.015-63.015c6.535-6.535 6.528-17.115-.003-23.646L99.466 17.702c-6.539-6.538-17.117-6.532-23.646-.003L4.898 88.62c-6.535 6.534-6.528 17.115.003 23.646l15.73 15.73h39.456zm-34.95-7.313l-14.324-14.325c-3.267-3.268-3.268-8.564-.008-11.824L46.269 59.07l35.462 35.462-26.15 26.15H25.137z\"/></svg>"
},
"$:/core/images/excise": {
"title": "$:/core/images/excise",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-excise tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 107.314l-2.343 2.343a8 8 0 11-11.314-11.314l16-16a8 8 0 0111.314 0l16 16a8 8 0 11-11.314 11.314L72 107.314v14.284c0 3.536-3.582 6.402-8 6.402s-8-2.866-8-6.402v-14.284zM0 40.007C0 35.585 3.59 32 8 32c4.418 0 8 3.588 8 8.007v31.986C16 76.415 12.41 80 8 80c-4.418 0-8-3.588-8-8.007V40.007zm32 0C32 35.585 35.59 32 40 32c4.418 0 8 3.588 8 8.007v31.986C48 76.415 44.41 80 40 80c-4.418 0-8-3.588-8-8.007V40.007zm48 0C80 35.585 83.59 32 88 32c4.418 0 8 3.588 8 8.007v31.986C96 76.415 92.41 80 88 80c-4.418 0-8-3.588-8-8.007V40.007zm-24-32C56 3.585 59.59 0 64 0c4.418 0 8 3.588 8 8.007v31.986C72 44.415 68.41 48 64 48c-4.418 0-8-3.588-8-8.007V8.007zm56 32c0-4.422 3.59-8.007 8-8.007 4.418 0 8 3.588 8 8.007v31.986c0 4.422-3.59 8.007-8 8.007-4.418 0-8-3.588-8-8.007V40.007z\"/></svg>"
},
"$:/core/images/export-button": {
"title": "$:/core/images/export-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-export-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.003 128H119.993a7.984 7.984 0 005.664-2.349v.007A7.975 7.975 0 00128 120V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v56H16V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v64c0 4.418 3.59 8 8 8h.003zm48.62-100.689l-8.965 8.966c-3.125 3.125-8.195 3.13-11.319.005-3.118-3.118-3.122-8.192.005-11.319L58.962 2.346A7.986 7.986 0 0164.625 0l-.006.002c2.05-.001 4.102.78 5.666 2.344l22.618 22.617c3.124 3.125 3.129 8.195.005 11.319-3.118 3.118-8.192 3.122-11.319-.005l-8.965-8.966v61.256c0 4.411-3.582 8-8 8-4.41 0-8-3.582-8-8V27.311z\"/></svg>"
},
"$:/core/images/file": {
"title": "$:/core/images/file",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-file tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M111.968 30.5H112V120a8 8 0 01-8 8H24a8 8 0 01-8-8V8a8 8 0 018-8h57v.02a7.978 7.978 0 015.998 2.337l22.627 22.627a7.975 7.975 0 012.343 5.516zM81 8H24v112h80V30.5H89c-4.418 0-8-3.578-8-8V8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"68\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"84\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"100\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/></svg>"
},
"$:/core/images/fixed-height": {
"title": "$:/core/images/fixed-height",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fixed-height tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60 35.657l-9.172 9.171a4 4 0 11-5.656-5.656l16-16a4 4 0 015.656 0l16 16a4 4 0 01-5.656 5.656L68 35.657v57.686l9.172-9.171a4 4 0 115.656 5.656l-16 16a4 4 0 01-5.656 0l-16-16a4 4 0 115.656-5.656L60 93.343V35.657zM16 116h96a4 4 0 100-8H16a4 4 0 100 8zm0-96h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
},
"$:/core/images/fold-all-button": {
"title": "$:/core/images/fold-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M64.03 20.004c-2.05 0-4.102.78-5.667 2.344L35.746 44.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 22.348a7.986 7.986 0 00-5.663-2.346zM64.03 85.002c-2.05-.001-4.102.78-5.667 2.344l-22.617 22.617c-3.125 3.125-3.13 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.966 16.966 16.966c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.192-.005-11.319L69.687 87.346A7.986 7.986 0 0064.024 85z\"/></g></svg>"
},
"$:/core/images/fold-button": {
"title": "$:/core/images/fold-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M64.03 25.004c-2.05 0-4.102.78-5.667 2.344L35.746 49.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 27.348a7.986 7.986 0 00-5.663-2.346zM64.005 67.379c-2.05 0-4.102.78-5.666 2.344L35.722 92.34c-3.125 3.125-3.13 8.195-.006 11.32 3.118 3.117 8.192 3.121 11.32-.006L64 86.69l16.965 16.965c3.125 3.125 8.195 3.13 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L69.663 69.723A7.986 7.986 0 0064 67.377z\"/></g></svg>"
},
"$:/core/images/fold-others-button": {
"title": "$:/core/images/fold-others-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-others tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" y=\"56.031\" rx=\"8\"/><path d=\"M86.632 79.976c-2.05 0-4.102.78-5.666 2.345L64 99.286 47.034 82.321a7.986 7.986 0 00-5.662-2.346l.005.001c-2.05 0-4.102.78-5.666 2.345l-22.618 22.617c-3.124 3.125-3.129 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.966-16.966 16.965 16.966a7.986 7.986 0 005.663 2.346l-.005-.002c2.05 0 4.102-.78 5.666-2.344l16.965-16.966 16.966 16.966c3.125 3.124 8.194 3.129 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L92.289 82.321a7.986 7.986 0 00-5.663-2.346zM86.7 48.024c-2.05 0-4.102-.78-5.666-2.345L64.07 28.714 47.103 45.679a7.986 7.986 0 01-5.663 2.346l.005-.001c-2.05 0-4.101-.78-5.666-2.345L13.162 23.062c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L41.44 28.714l16.966-16.966a7.986 7.986 0 015.662-2.346l-.005.002c2.05 0 4.102.78 5.666 2.344l16.966 16.966 16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L92.358 45.679a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/folder": {
"title": "$:/core/images/folder",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-folder tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.694 128H8C3.58 128 0 124.414 0 119.996V48.004C0 43.584 3.584 40 7.999 40H16v-8c0-4.418 3.578-8 8-8h32a8 8 0 018 8v8h40.001c4.418 0 7.999 3.586 7.999 8.004V59.83l-8-.082v-7.749A4 4 0 0099.997 48H56V36c0-2.21-1.793-4-4.004-4H28.004A4 4 0 0024 36v12H12.003A4 4 0 008 52v64a4 4 0 004.003 4h46.76l-3.069 8z\"/><path d=\"M23.873 55.5h96.003c4.417 0 7.004 4.053 5.774 9.063l-13.344 54.374c-1.228 5.005-5.808 9.063-10.223 9.063H6.08c-4.417 0-7.003-4.053-5.774-9.063L13.65 64.563c1.228-5.005 5.808-9.063 10.223-9.063zm1.78 8.5h87.994c2.211 0 3.504 2.093 2.891 4.666l-11.12 46.668c-.614 2.577-2.902 4.666-5.115 4.666H12.31c-2.211 0-3.504-2.093-2.891-4.666l11.12-46.668C21.152 66.09 23.44 64 25.653 64z\"/></g></svg>"
},
"$:/core/images/full-screen-button": {
"title": "$:/core/images/full-screen-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-full-screen-button tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 8a8 8 0 018-8h32a8 8 0 110 16H16v24a8 8 0 11-16 0V8zM128 120a8 8 0 01-8 8H88a8 8 0 110-16h24V88a8 8 0 1116 0v32zM8 128a8 8 0 01-8-8V88a8 8 0 1116 0v24h24a8 8 0 110 16H8zM120 0a8 8 0 018 8v32a8 8 0 11-16 0V16H88a8 8 0 110-16h32z\"/></svg>"
},
"$:/core/images/github": {
"title": "$:/core/images/github",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-github tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M63.938 1.607c-35.336 0-63.994 28.69-63.994 64.084 0 28.312 18.336 52.329 43.768 60.802 3.202.59 4.37-1.388 4.37-3.088 0-1.518-.056-5.55-.087-10.897-17.802 3.871-21.558-8.591-21.558-8.591-2.911-7.404-7.108-9.375-7.108-9.375-5.81-3.973.44-3.895.44-3.895 6.424.453 9.803 6.606 9.803 6.606 5.709 9.791 14.981 6.963 18.627 5.322.582-4.138 2.236-6.963 4.063-8.564-14.211-1.617-29.153-7.117-29.153-31.672 0-6.995 2.495-12.718 6.589-17.195-.66-1.621-2.856-8.14.629-16.96 0 0 5.37-1.722 17.597 6.57 5.104-1.424 10.58-2.132 16.022-2.16 5.438.028 10.91.736 16.022 2.16 12.22-8.292 17.582-6.57 17.582-6.57 3.493 8.82 1.297 15.339.64 16.96 4.102 4.477 6.578 10.2 6.578 17.195 0 24.618-14.966 30.035-29.22 31.62 2.295 1.98 4.342 5.89 4.342 11.87 0 8.564-.079 15.476-.079 17.576 0 1.715 1.155 3.71 4.4 3.084 25.413-8.493 43.733-32.494 43.733-60.798 0-35.394-28.657-64.084-64.006-64.084\"/></svg>"
},
"$:/core/images/gitter": {
"title": "$:/core/images/gitter",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-gitter tc-image-button\" viewBox=\"0 0 18 25\"><path d=\"M15 5h2v10h-2zM10 5h2v20h-2zM5 5h2v20H5zM0 0h2v15H0z\"/></svg>"
},
"$:/core/images/globe": {
"title": "$:/core/images/globe",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-globe tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M72.811 37.128v2.554c0 2.196.978 6.881 0 8.832-1.466 2.928-4.65 3.54-6.394 5.867-1.182 1.577-4.618 10.601-3.69 12.92 3.969 9.922 11.534 3.187 17.962 9.293.864.821 2.887 2.273 3.296 3.296 3.29 8.223-7.576 15.009 3.757 26.3 1.245 1.24 3.813-3.817 4.079-4.614.852-2.563 6.725-5.45 9.088-7.053 2.02-1.37 4.873-2.667 6.328-4.745 2.27-3.244 1.48-7.514 3.098-10.745 2.139-4.274 3.828-9.635 5.998-13.966 3.898-7.781 4.721 2.093 5.067 2.439.358.357 1.011 0 1.517 0 .094 0 1.447.099 1.516 0 .65-.935-1.043-17.92-1.318-19.297-1.404-7.01-6.944-15.781-11.865-20.5-6.274-6.015-7.09-16.197-18.259-14.954-.204.022-5.084 10.148-7.777 13.512-3.728 4.657-2.47-4.153-6.526-4.153-.081 0-1.183-.103-1.253 0-.586.88-1.44 3.896-2.306 4.417-.265.16-1.722-.239-1.846 0-2.243 4.3 8.256 2.212 5.792 7.952-2.352 5.481-6.328-1.997-6.328 8.56M44.467 7.01c9.685 6.13.682 12.198 2.694 16.215 1.655 3.303 4.241 5.395 1.714 9.814-2.063 3.608-6.87 3.966-9.623 6.723-3.04 3.044-5.464 8.94-6.79 12.911-1.617 4.843 14.547 6.866 12.063 11.008-1.386 2.311-6.746 1.466-8.437.198-1.165-.873-3.593-.546-4.417-1.78-2.613-3.915-2.26-8.023-3.625-12.128-.938-2.822-6.313-2.12-7.844-.593-.523.522-.33 1.792-.33 2.505 0 5.285 7.12 3.316 7.12 6.46 0 14.636 3.927 6.534 11.14 11.336 10.036 6.683 7.844 7.303 14.946 14.404 3.673 3.673 7.741 3.686 9.425 9.294 1.602 5.331-9.327 5.339-11.716 7.448-1.123.991-2.813 4.146-4.219 4.615-1.792.598-3.234.496-4.944 1.78-2.427 1.82-3.9 4.932-4.02 4.81-2.148-2.147-3.52-15.479-3.89-18.257-.588-4.42-5.59-5.54-6.986-9.03-1.57-3.927 1.524-9.52-1.129-13.761-6.52-10.424-11.821-14.5-15.35-26.292-.942-3.148 3.342-6.529 4.877-8.833 1.877-2.816 2.662-5.854 4.746-8.635C22.147 24.19 40.855 9.461 43.857 8.635l.61-1.625z\"/><path d=\"M64 126c34.242 0 62-27.758 62-62 0-34.242-27.758-62-62-62C29.758 2 2 29.758 2 64c0 34.242 27.758 62 62 62zm0-6c30.928 0 56-25.072 56-56S94.928 8 64 8 8 33.072 8 64s25.072 56 56 56z\"/></g></svg>"
},
"$:/core/images/heading-1": {
"title": "$:/core/images/heading-1",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-1 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M14 30h13.25v30.104H61.7V30h13.25v75.684H61.7V71.552H27.25v34.132H14V30zm70.335 13.78c2.544 0 5.017-.212 7.42-.636 2.403-.424 4.576-1.13 6.52-2.12 1.942-.99 3.603-2.261 4.981-3.816 1.378-1.555 2.28-3.463 2.703-5.724h9.858v74.2h-13.25V53.32H84.335v-9.54z\"/></svg>"
},
"$:/core/images/heading-2": {
"title": "$:/core/images/heading-2",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-2 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm119.52 75.684H74.85c.07-6.148 1.555-11.519 4.452-16.112 2.897-4.593 6.855-8.586 11.872-11.978a133.725 133.725 0 017.526-5.141 59.6 59.6 0 007.208-5.353c2.19-1.908 3.993-3.975 5.406-6.201 1.413-2.226 2.155-4.788 2.226-7.685 0-1.343-.159-2.774-.477-4.293a11.357 11.357 0 00-1.855-4.24c-.919-1.307-2.19-2.403-3.816-3.286-1.625-.883-3.745-1.325-6.36-1.325-2.403 0-4.399.477-5.989 1.431-1.59.954-2.862 2.261-3.816 3.922-.954 1.66-1.66 3.622-2.12 5.883-.46 2.261-.724 4.7-.795 7.314H76.23c0-4.099.548-7.897 1.643-11.395 1.095-3.498 2.738-6.519 4.93-9.063 2.19-2.544 4.857-4.54 8.002-5.989C93.95 30.724 97.606 30 101.775 30c4.523 0 8.303.742 11.342 2.226 3.039 1.484 5.494 3.357 7.367 5.618 1.873 2.261 3.198 4.717 3.975 7.367.777 2.65 1.166 5.176 1.166 7.579 0 2.968-.46 5.653-1.378 8.056a25.942 25.942 0 01-3.71 6.625 37.5 37.5 0 01-5.3 5.565 79.468 79.468 0 01-6.148 4.77 165.627 165.627 0 01-6.36 4.24 94.28 94.28 0 00-5.883 4.028c-1.802 1.343-3.374 2.738-4.717 4.187-1.343 1.449-2.261 2.986-2.756 4.611h36.146v10.812z\"/></svg>"
},
"$:/core/images/heading-3": {
"title": "$:/core/images/heading-3",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-3 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm88.885 32.224c1.979.07 3.957-.07 5.936-.424 1.979-.353 3.745-.972 5.3-1.855a10.365 10.365 0 003.763-3.657c.954-1.555 1.431-3.463 1.431-5.724 0-3.18-1.078-5.724-3.233-7.632-2.155-1.908-4.929-2.862-8.32-2.862-2.12 0-3.958.424-5.513 1.272a11.318 11.318 0 00-3.869 3.445c-1.025 1.449-1.784 3.074-2.279 4.876a18.335 18.335 0 00-.636 5.565H75.381c.141-3.604.813-6.943 2.014-10.017 1.201-3.074 2.844-5.742 4.93-8.003 2.084-2.261 4.61-4.028 7.578-5.3C92.871 30.636 96.228 30 99.973 30a29.2 29.2 0 018.533 1.272c2.791.848 5.3 2.085 7.526 3.71s4.01 3.692 5.353 6.201c1.343 2.509 2.014 5.388 2.014 8.639 0 3.745-.848 7.014-2.544 9.805-1.696 2.791-4.346 4.823-7.95 6.095v.212c4.24.848 7.544 2.95 9.911 6.307s3.551 7.438 3.551 12.243c0 3.533-.707 6.696-2.12 9.487a21.538 21.538 0 01-5.724 7.102c-2.403 1.943-5.194 3.445-8.374 4.505-3.18 1.06-6.537 1.59-10.07 1.59-4.31 0-8.074-.618-11.289-1.855s-5.9-2.986-8.056-5.247c-2.155-2.261-3.798-4.982-4.929-8.162-1.13-3.18-1.731-6.713-1.802-10.6h12.084c-.141 4.523.972 8.286 3.34 11.289 2.366 3.003 5.917 4.505 10.652 4.505 4.028 0 7.402-1.148 10.123-3.445 2.72-2.297 4.081-5.565 4.081-9.805 0-2.897-.565-5.194-1.696-6.89a10.97 10.97 0 00-4.452-3.869c-1.837-.883-3.904-1.431-6.2-1.643a58.067 58.067 0 00-7.05-.212v-9.01z\"/></svg>"
},
"$:/core/images/heading-4": {
"title": "$:/core/images/heading-4",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-4 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8 30h13.25v30.104H55.7V30h13.25v75.684H55.7V71.552H21.25v34.132H8V30zm76.59 48.548h22.471V45.9h-.212L84.59 78.548zm43.46 9.54h-9.54v17.596H107.06V88.088h-31.8V76.11l31.8-44.626h11.448v47.064h9.54v9.54z\"/></svg>"
},
"$:/core/images/heading-5": {
"title": "$:/core/images/heading-5",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-5 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm77.755 1.484h38.372v10.812H92.765L88.95 61.164l.212.212c1.625-1.837 3.692-3.233 6.201-4.187 2.509-.954 5-1.431 7.473-1.431 3.675 0 6.96.618 9.858 1.855 2.897 1.237 5.335 2.968 7.314 5.194s3.48 4.858 4.505 7.897c1.025 3.039 1.537 6.325 1.537 9.858 0 2.968-.477 6.024-1.43 9.169a25.161 25.161 0 01-4.559 8.586c-2.085 2.58-4.752 4.7-8.003 6.36-3.25 1.66-7.137 2.491-11.66 2.491-3.604 0-6.943-.477-10.017-1.431-3.074-.954-5.777-2.385-8.109-4.293-2.332-1.908-4.187-4.258-5.565-7.049-1.378-2.791-2.138-6.06-2.279-9.805h12.084c.353 4.028 1.731 7.12 4.134 9.275 2.403 2.155 5.583 3.233 9.54 3.233 2.544 0 4.7-.424 6.466-1.272 1.767-.848 3.198-2.014 4.293-3.498 1.095-1.484 1.873-3.215 2.332-5.194.46-1.979.69-4.099.69-6.36 0-2.05-.284-4.01-.849-5.883-.565-1.873-1.413-3.516-2.544-4.929-1.13-1.413-2.597-2.544-4.399-3.392-1.802-.848-3.904-1.272-6.307-1.272-2.544 0-4.929.477-7.155 1.431-2.226.954-3.834 2.738-4.823 5.353H75.805l7.95-40.598z\"/></svg>"
},
"$:/core/images/heading-6": {
"title": "$:/core/images/heading-6",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-6 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm106.587 20.246c-.283-3.039-1.36-5.494-3.233-7.367-1.873-1.873-4.399-2.809-7.579-2.809-2.19 0-4.08.406-5.67 1.219a12.435 12.435 0 00-4.029 3.233c-1.095 1.343-1.979 2.88-2.65 4.611a37.696 37.696 0 00-1.643 5.459 46.08 46.08 0 00-.9 5.671 722.213 722.213 0 00-.478 5.247l.212.212c1.625-2.968 3.87-5.176 6.731-6.625 2.862-1.449 5.954-2.173 9.275-2.173 3.675 0 6.96.636 9.858 1.908 2.897 1.272 5.353 3.021 7.367 5.247 2.014 2.226 3.551 4.858 4.611 7.897 1.06 3.039 1.59 6.325 1.59 9.858 0 3.604-.583 6.943-1.749 10.017-1.166 3.074-2.844 5.76-5.035 8.056-2.19 2.297-4.805 4.081-7.844 5.353-3.039 1.272-6.395 1.908-10.07 1.908-5.441 0-9.91-1.007-13.409-3.021-3.498-2.014-6.254-4.77-8.268-8.268-2.014-3.498-3.41-7.597-4.187-12.296-.777-4.7-1.166-9.77-1.166-15.211 0-4.452.477-8.94 1.431-13.462.954-4.523 2.526-8.639 4.717-12.349 2.19-3.71 5.07-6.731 8.64-9.063C92.676 31.166 97.075 30 102.304 30c2.968 0 5.76.495 8.374 1.484 2.615.99 4.93 2.367 6.943 4.134 2.014 1.767 3.657 3.887 4.93 6.36 1.271 2.473 1.978 5.23 2.12 8.268h-12.085zm-11.66 46.852c2.19 0 4.099-.442 5.724-1.325a12.869 12.869 0 004.081-3.445c1.095-1.413 1.908-3.056 2.438-4.929.53-1.873.795-3.798.795-5.777s-.265-3.887-.795-5.724c-.53-1.837-1.343-3.445-2.438-4.823-1.095-1.378-2.456-2.491-4.08-3.339-1.626-.848-3.534-1.272-5.725-1.272-2.19 0-4.116.406-5.777 1.219-1.66.813-3.056 1.908-4.187 3.286-1.13 1.378-1.979 2.986-2.544 4.823-.565 1.837-.848 3.78-.848 5.83 0 2.05.283 3.993.848 5.83.565 1.837 1.413 3.48 2.544 4.929a12.39 12.39 0 004.187 3.445c1.66.848 3.586 1.272 5.777 1.272z\"/></svg>"
},
"$:/core/images/help": {
"title": "$:/core/images/help",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-help tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M36.055 111.441c-5.24 4.396-15.168 7.362-26.555 7.362-1.635 0-3.24-.06-4.806-.179 7.919-2.64 14.062-8.6 16.367-16.014C8.747 92.845 1.05 78.936 1.05 63.5c0-29.547 28.206-53.5 63-53.5s63 23.953 63 53.5-28.206 53.5-63 53.5c-10.055 0-19.56-2-27.994-5.559zm35.35-33.843a536.471 536.471 0 00.018-4.682 199.02 199.02 0 00-.023-3.042c.008-1.357.595-2.087 3.727-4.235.112-.077 1.085-.74 1.386-.948 3.093-2.133 5.022-3.786 6.762-6.187 2.34-3.228 3.558-7.077 3.558-11.649 0-13.292-9.86-21.952-21.455-21.952-11.103 0-22.499 9.609-24.066 22.295a6.023 6.023 0 1011.956 1.477c.806-6.527 6.972-11.726 12.11-11.726 5.265 0 9.408 3.64 9.408 9.906 0 3.634-1.1 5.153-5.111 7.919l-1.362.93c-2.682 1.84-4.227 3.1-5.7 4.931-2.109 2.62-3.242 5.717-3.258 9.314.013.892.02 1.86.022 2.981a470.766 470.766 0 01-.022 4.943 6.023 6.023 0 1012.046.12l.003-.395zm-6.027 24.499a7.529 7.529 0 100-15.058 7.529 7.529 0 000 15.058z\"/></svg>"
},
"$:/core/images/home-button": {
"title": "$:/core/images/home-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-home-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112.985 119.502c.01-.165.015-.331.015-.499V67.568c3.137 2.948 8.076 2.884 11.134-.174a7.999 7.999 0 00-.002-11.316L70.396 2.343A7.978 7.978 0 0064.734 0a7.957 7.957 0 00-5.656 2.343L33 28.42V8.007C33 3.585 29.41 0 25 0c-4.418 0-8 3.59-8 8.007V44.42L5.342 56.078c-3.125 3.125-3.12 8.198-.002 11.316a7.999 7.999 0 0011.316-.003l.344-.343v52.945a8.11 8.11 0 000 .007c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8a8.11 8.11 0 00-.015-.498zM97 112V51.574L64.737 19.31 33 51.048V112h64z\"/></svg>"
},
"$:/core/images/import-button": {
"title": "$:/core/images/import-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-import-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M114.832 60.436s3.235-3.27 6.921.417c3.686 3.686.231 7.14.231 7.14l-42.153 42.92s-30.765 32.367-58.798 4.333C-7 87.213 24.59 55.623 24.59 55.623L67.363 12.85s22.725-24.6 43.587-3.738c20.862 20.862-3.96 43.09-3.96 43.09l-35.04 35.04S49.903 112.546 36.426 99.07c-13.476-13.477 11.83-35.523 11.83-35.523l35.04-35.04s3.902-3.902 7.78-.023c3.879 3.878.118 7.921.118 7.921l-35.04 35.04s-13.212 13.212-8.872 17.551c4.34 4.34 16.77-9.653 16.77-9.653l35.04-35.04s16.668-14.598 3.966-27.3c-13.893-13.892-27.565 3.702-27.565 3.702l-42.91 42.91s-23.698 23.698-3.658 43.738 43.012-4.385 43.012-4.385l42.895-42.533z\"/></svg>"
},
"$:/core/images/info-button": {
"title": "$:/core/images/info-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-info-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(.05)\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\"/><circle cx=\"64\" cy=\"32\" r=\"8\"/><rect width=\"16\" height=\"56\" x=\"56\" y=\"48\" rx=\"8\"/></g></svg>"
},
"$:/core/images/italic": {
"title": "$:/core/images/italic",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-italic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M66.711 0h22.41L62.408 128H40z\"/></svg>"
},
"$:/core/images/left-arrow": {
"title": "$:/core/images/left-arrow",
"created": "20150315234410875",
"modified": "20150315235324760",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-left-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 64.177c0-2.026.771-4.054 2.317-5.6l55.98-55.98a7.92 7.92 0 0111.195.001c3.086 3.085 3.092 8.104.001 11.195L19.111 64.175l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.086-8.105 3.092-11.196.001l-55.98-55.98A7.892 7.892 0 010 64.177z\"/></svg>"
},
"$:/core/images/line-width": {
"title": "$:/core/images/line-width",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-line-width tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M16 18h96a2 2 0 000-4H16a2 2 0 100 4zm0 17h96a4 4 0 100-8H16a4 4 0 100 8zm0 21h96a6 6 0 000-12H16a6 6 0 100 12zm0 29h96c5.523 0 10-4.477 10-10s-4.477-10-10-10H16c-5.523 0-10 4.477-10 10s4.477 10 10 10zm0 43h96c8.837 0 16-7.163 16-16s-7.163-16-16-16H16c-8.837 0-16 7.163-16 16s7.163 16 16 16z\"/></svg>"
},
"$:/core/images/link": {
"title": "$:/core/images/link",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-link tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M42.263 69.38a31.919 31.919 0 006.841 10.13c12.5 12.5 32.758 12.496 45.255 0l22.627-22.628c12.502-12.501 12.497-32.758 0-45.255-12.5-12.5-32.758-12.496-45.254 0L49.104 34.255a32.333 32.333 0 00-2.666 3.019 36.156 36.156 0 0121.94.334l14.663-14.663c6.25-6.25 16.382-6.254 22.632-.004 6.248 6.249 6.254 16.373-.004 22.631l-22.62 22.62c-6.25 6.25-16.381 6.254-22.631.004a15.93 15.93 0 01-4.428-8.433 11.948 11.948 0 00-7.59 3.48l-6.137 6.137z\"/><path d=\"M86.35 59.234a31.919 31.919 0 00-6.84-10.13c-12.5-12.5-32.758-12.497-45.255 0L11.627 71.732c-12.501 12.5-12.496 32.758 0 45.254 12.5 12.5 32.758 12.497 45.255 0L79.51 94.36a32.333 32.333 0 002.665-3.02 36.156 36.156 0 01-21.94-.333l-14.663 14.663c-6.25 6.25-16.381 6.253-22.63.004-6.25-6.249-6.255-16.374.003-22.632l22.62-22.62c6.25-6.25 16.381-6.253 22.631-.003a15.93 15.93 0 014.428 8.432 11.948 11.948 0 007.59-3.48l6.137-6.136z\"/></g></svg>"
},
"$:/core/images/linkify": {
"title": "$:/core/images/linkify",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-linkify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" 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\"/></svg>"
},
"$:/core/images/list-bullet": {
"title": "$:/core/images/list-bullet",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-bullet tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M11.636 40.273c6.427 0 11.637-5.21 11.637-11.637C23.273 22.21 18.063 17 11.636 17 5.21 17 0 22.21 0 28.636c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.637 0-6.426-5.21-11.636-11.637-11.636C5.21 51.91 0 57.12 0 63.545c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.636 0-6.427-5.21-11.637-11.637-11.637C5.21 86.818 0 92.028 0 98.455c0 6.426 5.21 11.636 11.636 11.636zM34.91 22.818H128v11.637H34.91V22.818zm0 34.91H128v11.636H34.91V57.727zm0 34.908H128v11.637H34.91V92.636z\"/></svg>"
},
"$:/core/images/list-number": {
"title": "$:/core/images/list-number",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-number tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M33.84 22.356H128v11.77H33.84v-11.77zm0 35.31H128v11.77H33.84v-11.77zm0 35.311H128v11.77H33.84v-11.77zM.38 42.631v-2.223h.998c.826 0 1.445-.14 1.858-.42.413-.28.619-.948.619-2.002V22.769c0-1.442-.193-2.336-.58-2.683-.385-.347-1.477-.52-3.275-.52v-2.143c3.502-.147 6.252-.955 8.25-2.423h2.117v22.865c0 .921.15 1.575.449 1.963.3.387.949.58 1.948.58h.998v2.223H.38zm-.3 35.356v-1.902c7.19-6.554 10.786-12.58 10.786-18.08 0-1.562-.326-2.81-.979-3.744-.652-.934-1.524-1.402-2.616-1.402-.893 0-1.655.317-2.287.952-.633.634-.95 1.364-.95 2.192 0 .974.247 1.829.74 2.563.106.16.16.28.16.36 0 .147-.16.28-.48.4-.213.08-.752.308-1.618.681-.839.374-1.358.561-1.558.561-.24 0-.512-.37-.819-1.111A6.2 6.2 0 010 57.064c0-1.949.849-3.544 2.547-4.785 1.698-1.242 3.798-1.862 6.302-1.862 2.463 0 4.53.67 6.202 2.012 1.67 1.341 2.506 3.093 2.506 5.256a8.644 8.644 0 01-.849 3.724c-.566 1.201-1.92 3.053-4.064 5.556a165.471 165.471 0 01-6.272 6.938h11.445l-1.019 5.726h-2.117c.08-.28.12-.534.12-.76 0-.388-.1-.631-.3-.731-.2-.1-.599-.15-1.198-.15H.08zm12.124 19.207c1.745.04 3.236.637 4.474 1.792 1.239 1.154 1.858 2.773 1.858 4.855 0 2.99-1.132 5.393-3.396 7.208-2.263 1.815-5 2.723-8.209 2.723-2.01 0-3.669-.384-4.974-1.151C.652 111.853 0 110.849 0 109.607c0-.774.27-1.398.809-1.872.54-.474 1.128-.71 1.768-.71.639 0 1.162.2 1.568.6.406.4.782 1.055 1.128 1.962.466 1.268 1.239 1.902 2.317 1.902 1.265 0 2.287-.477 3.066-1.431.78-.955 1.169-2.686 1.169-5.196 0-1.709-.12-3.023-.36-3.944-.24-.921-.792-1.382-1.658-1.382-.586 0-1.185.307-1.797.921-.493.494-.932.741-1.319.741-.333 0-.602-.147-.809-.44-.206-.294-.31-.574-.31-.841 0-.32.104-.594.31-.821.207-.227.69-.594 1.449-1.102 2.876-1.922 4.314-4.017 4.314-6.287 0-1.188-.306-2.092-.919-2.713a3.001 3.001 0 00-2.217-.93c-.799 0-1.525.263-2.177.79-.653.528-.979 1.158-.979 1.892 0 .641.253 1.235.76 1.782.172.2.259.367.259.5 0 .121-.57.428-1.708.922-1.139.494-1.854.74-2.147.74-.413 0-.75-.333-1.009-1-.26-.668-.39-1.282-.39-1.842 0-1.749.93-3.224 2.787-4.425 1.858-1.202 3.965-1.802 6.322-1.802 2.064 0 3.851.447 5.363 1.341 1.511.895 2.267 2.116 2.267 3.664 0 1.362-.57 2.623-1.708 3.784a13.387 13.387 0 01-3.945 2.784z\"/></svg>"
},
"$:/core/images/list": {
"title": "$:/core/images/list",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M87.748 128H23.999c-4.418 0-7.999-3.59-7.999-8.007V8.007C16 3.585 19.588 0 24 0h80c4.419 0 8 3.59 8 8.007V104H91.25c-.965 0-1.84.392-2.473 1.025a3.476 3.476 0 00-1.029 2.476V128zm8-.12l15.88-15.88h-15.88v15.88zM40 15.508A3.502 3.502 0 0143.5 12h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 20h-55a3.498 3.498 0 01-3.5-3.509v-.982zM32 22a6 6 0 100-12 6 6 0 000 12zm8 9.509A3.502 3.502 0 0143.5 28h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 36h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 44h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 52h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 60h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 68h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 76h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 84h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 92h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 100h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.505 3.505 0 0143.497 108h33.006A3.497 3.497 0 0180 111.509v.982A3.505 3.505 0 0176.503 116H43.497A3.497 3.497 0 0140 112.491v-.982zM32 38a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12z\"/></svg>"
},
"$:/core/images/locked-padlock": {
"title": "$:/core/images/locked-padlock",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-locked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M96.472 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h8c.003-15.723.303-47.731 32.16-47.731 31.794 0 32.305 32.057 32.312 47.731zm-15.897 0H48.44c.002-16.287.142-32 15.719-32 15.684 0 16.977 16.136 16.415 32zM67.732 92.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
},
"$:/core/images/mail": {
"title": "$:/core/images/mail",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mail tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M122.827 104.894a7.986 7.986 0 01-2.834.516H8.007c-.812 0-1.597-.12-2.335-.345l34.163-34.163 20.842 20.842a3.998 3.998 0 003.418 1.134 4.003 4.003 0 003.395-1.134L88.594 70.64c.075.09.155.176.24.26l33.993 33.994zm5.076-6.237c.064-.406.097-.823.097-1.247v-64c0-.669-.082-1.318-.237-1.94L94.23 65.006c.09.075.177.154.261.239l33.413 33.413zm-127.698.56A8.023 8.023 0 010 97.41v-64c0-.716.094-1.41.271-2.071l33.907 33.906L.205 99.218zM5.93 25.684a8.012 8.012 0 012.078-.273h111.986c.766 0 1.507.108 2.209.308L64.083 83.837 5.93 25.683z\"/></svg>"
},
"$:/core/images/menu-button": {
"title": "$:/core/images/menu-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-menu-button tc-image-button\" viewBox=\"0 0 128 128\"><rect width=\"128\" height=\"16\" y=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"56\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"96\" rx=\"8\"/></svg>"
},
"$:/core/images/mono-block": {
"title": "$:/core/images/mono-block",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-block tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M23.965 32.967h.357c.755 0 1.328.192 1.72.577.39.384.586.947.586 1.688 0 .824-.206 1.418-.618 1.782-.413.363-1.094.545-2.045.545h-6.31c-.965 0-1.65-.178-2.056-.535-.405-.356-.608-.954-.608-1.792 0-.811.203-1.391.608-1.74.406-.35 1.09-.525 2.055-.525h.734l-.86-2.453H8.471l-.902 2.453h.734c.95 0 1.632.178 2.044.535.413.356.619.933.619 1.73 0 .824-.206 1.418-.619 1.782-.412.363-1.094.545-2.044.545h-5.41c-.964 0-1.649-.182-2.054-.545-.406-.364-.608-.958-.608-1.782 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.719-.577h.356l5.62-15.641H6.835c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.95-.619-1.76 0-.825.207-1.42.619-1.783.412-.363 1.094-.545 2.044-.545h7.863c1.244 0 2.118.67 2.62 2.013v.063l6.647 18.2zM12.98 17.326l-3.04 8.848h6.08l-3.04-8.848zm22.402 9.372v6.395h3.145c2.223 0 3.788-.245 4.697-.734.908-.49 1.362-1.307 1.362-2.453 0-1.16-.433-1.985-1.3-2.474-.866-.49-2.383-.734-4.55-.734h-3.354zm10.693-2.327c1.524.559 2.642 1.324 3.355 2.295.713.972 1.07 2.212 1.07 3.722 0 1.272-.308 2.432-.923 3.48-.615 1.049-1.496 1.909-2.642 2.58a7.499 7.499 0 01-2.254.849c-.832.174-2.01.262-3.533.262H30.202c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.782 0-.741.189-1.304.566-1.688.378-.385.93-.577 1.657-.577h.356V17.326h-.356c-.727 0-1.28-.196-1.657-.587-.377-.392-.566-.965-.566-1.72 0-.81.203-1.401.608-1.771.406-.37 1.062-.556 1.971-.556h9.645c2.95 0 5.19.573 6.72 1.72 1.53 1.145 2.296 2.823 2.296 5.031 0 1.09-.234 2.052-.703 2.883-.468.832-1.163 1.513-2.086 2.045zM35.381 17.2v5.284h2.83c1.72 0 2.932-.203 3.638-.609.706-.405 1.06-1.09 1.06-2.054 0-.909-.319-1.573-.955-1.992-.636-.42-1.667-.63-3.093-.63h-3.48zm35.863-3.816c.28-.503.566-.86.86-1.07.293-.21.664-.314 1.111-.314.685 0 1.17.182 1.457.545.287.364.43.986.43 1.866l.042 5.452c0 .964-.157 1.614-.472 1.95-.314.335-.884.503-1.709.503-.587 0-1.037-.14-1.352-.42-.314-.28-.584-.796-.807-1.551-.364-1.328-.944-2.282-1.74-2.862-.797-.58-1.901-.87-3.313-.87-2.153 0-3.802.727-4.948 2.18-1.147 1.454-1.72 3.558-1.72 6.311 0 2.74.58 4.844 1.74 6.311 1.16 1.468 2.817 2.202 4.97 2.202 1.467 0 3.085-.49 4.854-1.468 1.768-.978 2.883-1.467 3.344-1.467.545 0 1.003.23 1.373.692.37.46.556 1.034.556 1.719 0 1.23-1.084 2.39-3.25 3.48-2.167 1.09-4.606 1.636-7.318 1.636-3.662 0-6.625-1.21-8.89-3.627-2.264-2.419-3.396-5.578-3.396-9.478 0-3.76 1.146-6.884 3.438-9.372 2.293-2.488 5.2-3.732 8.723-3.732.992 0 1.97.112 2.935.335.964.224 1.992.574 3.082 1.049zm10.22 19.583V17.326h-.356c-.755 0-1.328-.196-1.72-.587-.39-.392-.586-.965-.586-1.72 0-.81.21-1.401.629-1.771.42-.37 1.097-.556 2.034-.556h5.178c2.922 0 5.06.126 6.416.377 1.356.252 2.51.671 3.46 1.258 1.691 1.007 2.988 2.443 3.89 4.31.9 1.865 1.352 4.021 1.352 6.467 0 2.586-.514 4.847-1.541 6.783-1.028 1.936-2.485 3.4-4.372 4.393-.853.447-1.852.772-2.998.975-1.147.203-2.852.304-5.116.304h-6.269c-.965 0-1.65-.178-2.055-.535-.406-.356-.608-.954-.608-1.792 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.72-.577h.356zm5.41-15.725v15.725h1.195c2.642 0 4.592-.646 5.85-1.94 1.258-1.292 1.887-3.28 1.887-5.965 0-2.641-.64-4.612-1.918-5.912-1.28-1.3-3.205-1.95-5.777-1.95-.335 0-.59.003-.765.01a7.992 7.992 0 00-.472.032zm35.067-.126h-9.75v5.368h3.69v-.252c0-.797.175-1.39.524-1.782.35-.392.88-.587 1.594-.587.629 0 1.142.178 1.54.534.4.357.598.808.598 1.353 0 .028.007.118.021.272.014.154.021.308.021.462v4.34c0 .936-.167 1.607-.503 2.013-.335.405-.88.608-1.635.608-.713 0-1.251-.19-1.615-.567-.363-.377-.545-.936-.545-1.677v-.377h-3.69v6.269h9.75v-2.495c0-.937.178-1.608.534-2.013.357-.405.94-.608 1.75-.608.798 0 1.367.2 1.71.597.342.399.513 1.073.513 2.024v5.074c0 .755-.146 1.258-.44 1.51-.293.251-.873.377-1.74.377h-17.172c-.923 0-1.583-.182-1.982-.545-.398-.364-.597-.958-.597-1.782 0-.741.189-1.304.566-1.688.377-.385.93-.577 1.656-.577h.357V17.326h-.357c-.712 0-1.261-.2-1.646-.598-.384-.398-.576-.968-.576-1.709 0-.81.203-1.401.608-1.771.405-.37 1.062-.556 1.97-.556h17.173c.853 0 1.43.13 1.73.388.3.258.45.772.45 1.54v4.698c0 .95-.174 1.631-.524 2.044-.35.412-.915.618-1.698.618-.81 0-1.394-.21-1.75-.629-.357-.419-.535-1.097-.535-2.033v-2.202zM19.77 47.641c.267-.504.55-.86.85-1.07.3-.21.675-.314 1.122-.314.685 0 1.17.181 1.457.545.287.363.43.985.43 1.866l.042 5.451c0 .965-.157 1.615-.472 1.95-.314.336-.891.504-1.73.504-.587 0-1.045-.144-1.373-.43-.329-.287-.598-.8-.807-1.541-.378-1.342-.958-2.3-1.74-2.873-.783-.573-1.88-.86-3.292-.86-2.153 0-3.799.727-4.938 2.181-1.14 1.454-1.709 3.557-1.709 6.311s.598 4.882 1.793 6.385C10.599 67.248 12.294 68 14.488 68c.503 0 1.077-.06 1.72-.179a23.809 23.809 0 002.264-.555v-3.313h-2.37c-.95 0-1.624-.175-2.023-.524-.398-.35-.597-.93-.597-1.74 0-.84.199-1.437.597-1.793.399-.357 1.073-.535 2.024-.535h7.569c.978 0 1.667.175 2.065.524.398.35.598.937.598 1.762 0 .74-.2 1.31-.598 1.708-.398.399-.975.598-1.73.598h-.335v5.242c0 .447-.05.758-.147.933-.098.174-.293.353-.587.534-.797.476-2.062.895-3.795 1.258a25.576 25.576 0 01-5.263.546c-3.662 0-6.625-1.21-8.89-3.628-2.264-2.418-3.397-5.577-3.397-9.477 0-3.76 1.147-6.884 3.44-9.372 2.292-2.488 5.199-3.732 8.721-3.732.979 0 1.954.112 2.925.335.972.224 2.003.573 3.093 1.049zm15.84 3.941v4.823h6.857v-4.823h-.336c-.754 0-1.331-.195-1.73-.587-.398-.391-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.364 1.093-.545 2.044-.545h5.41c.95 0 1.624.181 2.023.545.398.363.597.957.597 1.782 0 .755-.192 1.328-.576 1.72-.385.39-.947.586-1.688.586h-.357v15.642h.357c.755 0 1.328.192 1.719.576.391.385.587.947.587 1.688 0 .825-.203 1.419-.608 1.782-.405.364-1.09.546-2.055.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.2-1.303.598-1.688.398-.384.975-.576 1.73-.576h.335v-6.186h-6.856v6.186h.335c.755 0 1.331.192 1.73.576.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.412.364-1.094.546-2.044.546h-5.41c-.964 0-1.65-.179-2.055-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.392-.384.965-.576 1.72-.576h.356V51.582h-.356c-.741 0-1.304-.195-1.688-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.073-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.335zm31.754 0v15.642h3.523c.95 0 1.632.178 2.044.534.412.357.618.933.618 1.73 0 .811-.21 1.402-.629 1.772-.419.37-1.097.556-2.033.556H58.433c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.957-.619-1.782 0-.81.203-1.39.608-1.74.406-.35 1.09-.524 2.055-.524h3.523V51.582h-3.523c-.95 0-1.632-.181-2.044-.545-.412-.363-.619-.95-.619-1.761 0-.825.203-1.412.608-1.761.406-.35 1.09-.524 2.055-.524h12.455c.992 0 1.684.174 2.075.524.392.35.587.936.587 1.761 0 .81-.202 1.398-.608 1.761-.405.364-1.09.545-2.054.545h-3.523zm30.496 0v11.994c0 1.873-.122 3.228-.367 4.067a5.876 5.876 0 01-1.227 2.244c-.74.852-1.768 1.495-3.082 1.929-1.314.433-2.893.65-4.738.65-1.3 0-2.555-.126-3.764-.378a16.843 16.843 0 01-3.491-1.132c-.615-.28-1.017-.643-1.206-1.09-.188-.448-.283-1.175-.283-2.18v-4.32c0-1.202.175-2.04.525-2.516.349-.475.957-.713 1.824-.713 1.244 0 1.929.915 2.054 2.747.014.321.035.566.063.733.168 1.622.545 2.73 1.133 3.324.587.594 1.523.89 2.81.89 1.593 0 2.714-.422 3.364-1.268.65-.845.975-2.386.975-4.623V51.582H88.93c-.95 0-1.632-.181-2.044-.545-.413-.363-.619-.95-.619-1.761 0-.825.2-1.412.598-1.761.398-.35 1.086-.524 2.065-.524h10.693c.979 0 1.667.174 2.065.524.399.35.598.936.598 1.761 0 .81-.206 1.398-.619 1.761-.412.364-1.093.545-2.044.545h-1.761zm14.644 0v6.353l6.48-6.478c-.728-.084-1.238-.29-1.531-.619-.294-.328-.44-.85-.44-1.562 0-.825.198-1.419.597-1.782.398-.364 1.073-.545 2.023-.545h5.137c.95 0 1.625.181 2.023.545.399.363.598.957.598 1.782 0 .769-.2 1.345-.598 1.73-.398.384-.982.576-1.75.576h-.483l-6.101 6.06c1.132.839 2.167 1.94 3.103 3.302.937 1.363 2.034 3.456 3.292 6.28h.692c.825 0 1.44.188 1.845.566.405.377.608.943.608 1.698 0 .825-.206 1.419-.619 1.782-.412.364-1.093.546-2.044.546h-2.579c-1.132 0-2.048-.762-2.746-2.286-.126-.28-.224-.503-.294-.67-.923-1.958-1.768-3.467-2.537-4.53a16.616 16.616 0 00-2.705-2.914l-1.97 1.887v3.92h.335c.755 0 1.331.193 1.73.577.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.413.364-1.094.546-2.045.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.391-.384.965-.576 1.72-.576h.356V51.582h-.357c-.74 0-1.303-.195-1.687-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.072-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.336zM13.44 96.326l4.005-11.889c.251-.782.6-1.352 1.048-1.709.447-.356 1.041-.534 1.782-.534h3.271c.95 0 1.632.182 2.044.545.413.363.619.957.619 1.782 0 .755-.2 1.328-.598 1.72-.398.39-.975.587-1.73.587h-.335l.587 15.641h.357c.754 0 1.32.192 1.698.577.377.384.566.947.566 1.687 0 .825-.2 1.42-.598 1.783-.398.363-1.072.545-2.023.545h-4.718c-.95 0-1.624-.178-2.023-.535-.398-.356-.597-.954-.597-1.793 0-.74.192-1.303.576-1.687.385-.385.954-.577 1.709-.577h.335l-.293-12.79-3.061 9.52c-.224.712-.542 1.226-.954 1.54-.413.315-.982.472-1.709.472-.727 0-1.303-.157-1.73-.472-.426-.314-.751-.828-.975-1.54l-3.04-9.52-.294 12.79h.336c.755 0 1.324.192 1.709.577.384.384.576.947.576 1.687 0 .825-.202 1.42-.608 1.783-.405.363-1.076.545-2.013.545H2.621c-.937 0-1.608-.182-2.013-.545-.405-.364-.608-.958-.608-1.783 0-.74.192-1.303.577-1.687.384-.385.954-.577 1.708-.577h.336l.608-15.641h-.336c-.754 0-1.331-.196-1.73-.588-.398-.39-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.363 1.093-.545 2.044-.545h3.27c.728 0 1.311.175 1.752.524.44.35.8.923 1.08 1.72l4.109 11.888zm30.454 2.054V86.828H42.74c-.922 0-1.583-.182-1.981-.546-.398-.363-.598-.95-.598-1.76 0-.812.2-1.402.598-1.773.398-.37 1.059-.555 1.981-.555h5.955c.909 0 1.566.185 1.97.555.406.37.609.961.609 1.772 0 .741-.192 1.31-.577 1.709-.384.398-.933.598-1.646.598h-.356v19.038c0 .657-.07 1.069-.21 1.237-.14.167-.454.251-.943.251h-2.097c-.67 0-1.143-.07-1.415-.21-.273-.14-.507-.384-.703-.733l-8.722-15.327v11.385h1.216c.909 0 1.559.175 1.95.524.392.35.587.93.587 1.74 0 .825-.199 1.42-.597 1.783-.399.363-1.045.545-1.94.545h-6.017c-.909 0-1.566-.182-1.971-.545-.406-.364-.608-.958-.608-1.783 0-.74.188-1.303.566-1.687.377-.385.936-.577 1.677-.577h.336V86.828h-.336c-.713 0-1.265-.2-1.656-.598-.392-.398-.587-.968-.587-1.709 0-.81.206-1.401.618-1.772.413-.37 1.066-.555 1.96-.555h3.44c.824 0 1.383.108 1.677.325.293.216.622.653.985 1.31l7.989 14.551zM64.66 86.366c-1.803 0-3.218.727-4.245 2.18-1.028 1.455-1.541 3.474-1.541 6.06 0 2.586.517 4.613 1.551 6.08 1.034 1.468 2.446 2.202 4.235 2.202 1.804 0 3.222-.73 4.257-2.19 1.034-1.461 1.551-3.492 1.551-6.092 0-2.586-.513-4.605-1.54-6.06-1.028-1.453-2.45-2.18-4.268-2.18zm0-4.864c3.44 0 6.27 1.23 8.492 3.69 2.223 2.46 3.334 5.598 3.334 9.414 0 3.844-1.104 6.99-3.313 9.436-2.208 2.446-5.046 3.669-8.513 3.669-3.424 0-6.255-1.234-8.491-3.701-2.237-2.467-3.355-5.602-3.355-9.404 0-3.83 1.108-6.971 3.323-9.424 2.216-2.454 5.057-3.68 8.523-3.68zM87.461 98.17v4.298h2.16c.908 0 1.555.175 1.94.524.384.35.576.93.576 1.74 0 .825-.196 1.42-.587 1.783-.392.363-1.035.545-1.93.545h-7.254c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.783 0-.74.189-1.303.566-1.687.378-.385.93-.577 1.657-.577h.356V86.828h-.356c-.713 0-1.262-.2-1.646-.598-.385-.398-.577-.968-.577-1.709 0-.81.203-1.401.608-1.772.406-.37 1.063-.555 1.971-.555h8.66c3.424 0 6.014.657 7.768 1.97 1.754 1.315 2.631 3.25 2.631 5.809 0 2.697-.873 4.738-2.62 6.122-1.748 1.384-4.34 2.076-7.78 2.076h-3.564zm0-11.343v6.625h2.977c1.65 0 2.89-.28 3.722-.839.832-.559 1.248-1.397 1.248-2.516 0-1.048-.43-1.855-1.29-2.421-.86-.566-2.086-.85-3.68-.85h-2.977zm27.267 20.568l-1.636 1.636a12.37 12.37 0 011.772-.44c.58-.098 1.15-.147 1.709-.147 1.104 0 2.268.164 3.491.492 1.223.329 1.967.493 2.233.493.447 0 1.03-.15 1.75-.45.72-.301 1.206-.452 1.458-.452.517 0 .947.2 1.29.598.342.398.513.898.513 1.5 0 .796-.472 1.474-1.415 2.033-.944.56-2.1.839-3.47.839-.937 0-2.139-.22-3.607-.66-1.467-.441-2.53-.661-3.187-.661-.992 0-2.11.272-3.354.817-1.244.546-2.013.818-2.307.818a2.14 2.14 0 01-1.53-.597c-.42-.399-.63-.878-.63-1.437 0-.391.134-.807.4-1.247.265-.44.733-1.01 1.404-1.709l2.118-2.139c-2.335-.852-4.194-2.386-5.578-4.602-1.384-2.215-2.075-4.763-2.075-7.642 0-3.802 1.104-6.909 3.312-9.32 2.209-2.411 5.053-3.617 8.534-3.617 3.467 0 6.304 1.209 8.513 3.627 2.208 2.418 3.312 5.522 3.312 9.31 0 3.774-1.097 6.884-3.291 9.33-2.195 2.446-4.977 3.67-8.345 3.67a22.5 22.5 0 01-1.384-.043zm1.195-21.03c-1.803 0-3.218.727-4.246 2.18-1.027 1.455-1.54 3.474-1.54 6.06 0 2.586.516 4.613 1.55 6.08 1.035 1.468 2.447 2.202 4.236 2.202 1.803 0 3.222-.73 4.256-2.19 1.035-1.461 1.552-3.492 1.552-6.092 0-2.586-.514-4.605-1.541-6.06-1.028-1.453-2.45-2.18-4.267-2.18z\"/></svg>"
},
"$:/core/images/mono-line": {
"title": "$:/core/images/mono-line",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-line tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.437 84.523h.908c1.922 0 3.381.489 4.378 1.468.997.979 1.495 2.411 1.495 4.298 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388h-16.07c-2.456 0-4.2-.454-5.232-1.361-1.032-.908-1.548-2.43-1.548-4.565 0-2.065.516-3.542 1.548-4.432 1.032-.89 2.776-1.334 5.232-1.334h1.869l-2.19-6.247H20.983l-2.296 6.247h1.87c2.42 0 4.155.453 5.205 1.361 1.05.908 1.575 2.376 1.575 4.405 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388H6.781c-2.456 0-4.2-.463-5.233-1.388C.516 93.9 0 92.389 0 90.289c0-1.887.498-3.32 1.495-4.298.997-.979 2.456-1.468 4.378-1.468h.908l14.308-39.83h-4.271c-2.42 0-4.156-.462-5.206-1.387-1.05-.926-1.575-2.42-1.575-4.485 0-2.1.525-3.613 1.575-4.538 1.05-.926 2.785-1.388 5.206-1.388h20.021c3.168 0 5.392 1.708 6.674 5.125v.16l16.924 46.343zm-27.976-39.83L24.72 67.225h15.483l-7.742-22.53zM89.506 68.56v16.284h8.008c5.66 0 9.646-.623 11.96-1.869 2.313-1.245 3.47-3.328 3.47-6.246 0-2.955-1.103-5.055-3.31-6.3-2.207-1.246-6.069-1.869-11.586-1.869h-8.542zm27.229-5.926c3.88 1.423 6.727 3.372 8.542 5.846 1.815 2.474 2.723 5.633 2.723 9.477 0 3.239-.783 6.193-2.35 8.862-1.565 2.67-3.808 4.859-6.726 6.567-1.709.997-3.622 1.718-5.74 2.163-2.118.445-5.116.667-8.996.667h-27.87c-2.349 0-4.03-.463-5.045-1.388-1.014-.926-1.521-2.438-1.521-4.538 0-1.887.48-3.32 1.441-4.298.961-.979 2.367-1.468 4.218-1.468h.907v-39.83h-.907c-1.851 0-3.257-.498-4.218-1.494-.961-.997-1.441-2.456-1.441-4.378 0-2.065.516-3.568 1.548-4.512 1.032-.943 2.705-1.414 5.018-1.414h24.56c7.51 0 13.214 1.459 17.111 4.377 3.898 2.92 5.847 7.19 5.847 12.814 0 2.776-.597 5.223-1.789 7.341-1.192 2.118-2.963 3.853-5.312 5.206zm-27.23-18.26v13.455h7.208c4.378 0 7.466-.516 9.264-1.549 1.797-1.032 2.696-2.776 2.696-5.232 0-2.313-.81-4.004-2.43-5.072-1.619-1.068-4.244-1.602-7.874-1.602h-8.863z\"/></svg>"
},
"$:/core/images/new-button": {
"title": "$:/core/images/new-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 72H8.007C3.591 72 0 68.418 0 64c0-4.41 3.585-8 8.007-8H56V8.007C56 3.591 59.582 0 64 0c4.41 0 8 3.585 8 8.007V56h47.993c4.416 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H72v47.993c0 4.416-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V72z\"/></svg>"
},
"$:/core/images/new-here-button": {
"title": "$:/core/images/new-here-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-here-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.838 20.935l-3.572.938c-3.688.968-8.23 4.43-10.136 7.731L3.37 96.738c-1.905 3.3-.771 7.524 2.534 9.432l33.717 19.466c3.297 1.904 7.53.78 9.435-2.521l38.76-67.134c1.905-3.3 2.632-8.963 1.623-12.646L83.285 20.88c-1.009-3.68-4.821-5.884-8.513-4.915l-7.603 1.995.043.287c.524 3.394 2.053 7.498 4.18 11.55.418.163.829.36 1.23.59a8.864 8.864 0 014.438 8.169c.104.132.21.264.316.395l-.386.318a8.663 8.663 0 01-1.082 3.137c-2.42 4.192-7.816 5.608-12.051 3.163-4.12-2.379-5.624-7.534-3.476-11.671-2.177-4.394-3.788-8.874-4.543-12.964z\"/><path d=\"M69.554 44.76c-5.944-7.476-10.74-17.196-11.955-25.059-1.68-10.875 3.503-18.216 15.082-18.04 10.407.158 19.975 5.851 24.728 13.785 5.208 8.695 2.95 17.868-6.855 20.496l-2.037-7.601c4.232-1.134 4.999-4.248 2.24-8.853-3.37-5.626-10.465-9.848-18.146-9.965-6.392-.097-8.31 2.62-7.323 9.01.999 6.465 5.318 15.138 10.582 21.65l-.072.06c.559 1.553-4.17 6.44-5.938 4.888l-.005.004-.028-.034a1.323 1.323 0 01-.124-.135 2.618 2.618 0 01-.149-.205z\"/><rect width=\"16\" height=\"48\" x=\"96\" y=\"80\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"80\" y=\"96\" rx=\"8\"/></g></svg>"
},
"$:/core/images/new-image-button": {
"title": "$:/core/images/new-image-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-image-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.362 73.627l15.826-27.41a2.626 2.626 0 00-.962-3.59l-50.01-28.872a2.626 2.626 0 00-3.588.961L30.058 36.49l10.04-5.261c3.042-1.595 6.771.114 7.55 3.46l3.607 17.702 9.88.85a5.25 5.25 0 014.571 3.77c.034.115.1.344.199.671.165.553.353 1.172.562 1.843.595 1.914 1.23 3.85 1.872 5.678.207.588.412 1.156.614 1.701.625 1.685 1.209 3.114 1.725 4.207.255.54.485.977.726 1.427.214.212.547.425 1.011.622 1.141.482 2.784.74 4.657.758.864.008 1.71-.034 2.492-.11.448-.043.753-.085.871-.104.315-.053.625-.077.927-.076zM37.47 2.649A5.257 5.257 0 0144.649.725l63.645 36.746a5.257 5.257 0 011.923 7.178L73.47 108.294a5.257 5.257 0 01-7.177 1.923L2.649 73.47a5.257 5.257 0 01-1.924-7.177L37.471 2.649zm42.837 50.49a5.25 5.25 0 105.25-9.092 5.25 5.25 0 00-5.25 9.093zM96 112h-7.993c-4.419 0-8.007-3.582-8.007-8 0-4.41 3.585-8 8.007-8H96v-7.993C96 83.588 99.582 80 104 80c4.41 0 8 3.585 8 8.007V96h7.993c4.419 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H112v7.993c0 4.419-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V112zM33.347 51.791c7.428 7.948 9.01 10.69 7.449 13.394-1.56 2.703-13.838-2.328-16.094 1.58-2.256 3.908-.907 3.258-2.437 5.908l19.73 11.39s-5.605-8.255-4.235-10.628c2.515-4.356 8.77-1.256 10.365-4.019 2.414-4.181-5.103-9.639-14.778-17.625z\"/></svg>"
},
"$:/core/images/new-journal-button": {
"title": "$:/core/images/new-journal-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-journal-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.545 112.818v11.818c0 1.306 1.086 2.364 2.425 2.364h6.06c1.34 0 2.425-1.058 2.425-2.364v-11.818h12.12c1.34 0 2.425-1.058 2.425-2.363v-5.91c0-1.305-1.085-2.363-2.424-2.363h-12.121V90.364c0-1.306-1.086-2.364-2.425-2.364h-6.06c-1.34 0-2.425 1.058-2.425 2.364v11.818h-12.12c-1.34 0-2.425 1.058-2.425 2.363v5.91c0 1.305 1.085 2.363 2.424 2.363h12.121zM60.016 4.965c-4.781-2.76-10.897-1.118-13.656 3.66L5.553 79.305A9.993 9.993 0 009.21 92.963l51.04 29.468c4.78 2.76 10.897 1.118 13.655-3.66l40.808-70.681a9.993 9.993 0 00-3.658-13.656L60.016 4.965zm-3.567 27.963a6 6 0 106-10.393 6 6 0 00-6 10.393zm31.697 17.928a6 6 0 106-10.392 6 6 0 00-6 10.392z\"/><text class=\"tc-fill-background\" font-family=\"Helvetica\" font-size=\"47.172\" font-weight=\"bold\" transform=\"rotate(30 25.742 95.82)\"><tspan x=\"42\" y=\"77.485\" text-anchor=\"middle\"><<now \"DD\">></tspan></text></g></svg>"
},
"$:/core/images/opacity": {
"title": "$:/core/images/opacity",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-opacity tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.362 65a51.595 51.595 0 01-1.942 6H82.584a35.867 35.867 0 002.997-6h16.78zm.472-2c.423-1.961.734-3.963.929-6H87.656a35.78 35.78 0 01-1.368 6h16.546zm-3.249 10a51.847 51.847 0 01-3.135 6H75.812a36.205 36.205 0 005.432-6h18.341zm-4.416 8c-1.424 2.116-3 4.12-4.71 6H60.46a35.843 35.843 0 0012.874-6h21.834zm-7.513-34h16.107C101.247 20.627 79.033 0 52 0 23.281 0 0 23.281 0 52c0 25.228 17.965 46.26 41.8 51h20.4a51.66 51.66 0 0015.875-6H39v-2h42.25a52.257 52.257 0 007.288-6H39v-2h4.539C27.739 83.194 16 68.968 16 52c0-19.882 16.118-36 36-36 18.186 0 33.222 13.484 35.656 31zm.22 2h16.039a52.823 52.823 0 010 6H87.877a36.483 36.483 0 000-6z\"/><path d=\"M76 128c28.719 0 52-23.281 52-52s-23.281-52-52-52-52 23.281-52 52 23.281 52 52 52zm0-16c19.882 0 36-16.118 36-36S95.882 40 76 40 40 56.118 40 76s16.118 36 36 36z\"/><path d=\"M37 58h53v4H37v-4zm3-8h53v4H40v-4zm0-8h53v4H40v-4zm-8 24h53v4H32v-4zm-2 8h53v4H30v-4zm-3 8h53v4H27v-4z\"/></g></svg>"
},
"$:/core/images/open-window": {
"title": "$:/core/images/open-window",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-open-window tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M16 112h88.994c3.87 0 7.006 3.59 7.006 8 0 4.418-3.142 8-7.006 8H7.006C3.136 128 0 124.41 0 120a9.321 9.321 0 010-.01V24.01C0 19.586 3.59 16 8 16c4.418 0 8 3.584 8 8.01V112z\"/><path d=\"M96 43.196V56a8 8 0 1016 0V24c0-4.41-3.585-8-8.007-8H72.007C67.588 16 64 19.582 64 24c0 4.41 3.585 8 8.007 8H84.57l-36.3 36.299a8 8 0 00-.001 11.316c3.117 3.117 8.19 3.123 11.316-.003L96 43.196zM32 7.999C32 3.581 35.588 0 40 0h80c4.419 0 8 3.588 8 8v80c0 4.419-3.588 8-8 8H40c-4.419 0-8-3.588-8-8V8z\"/></g></svg>"
},
"$:/core/images/options-button": {
"title": "$:/core/images/options-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-options-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M110.488 76a47.712 47.712 0 01-5.134 12.384l6.724 6.724c3.123 3.123 3.132 8.192.011 11.313l-5.668 5.668c-3.12 3.12-8.186 3.117-11.313-.01l-6.724-6.725c-3.82 2.258-7.98 4-12.384 5.134v9.505c0 4.417-3.578 8.007-7.992 8.007h-8.016C55.58 128 52 124.415 52 119.993v-9.505a47.712 47.712 0 01-12.384-5.134l-6.724 6.725c-3.123 3.122-8.192 3.131-11.313.01l-5.668-5.668c-3.12-3.12-3.116-8.186.01-11.313l6.725-6.724c-2.257-3.82-4-7.98-5.134-12.384H8.007C3.591 76 0 72.422 0 68.01v-8.017C0 55.58 3.585 52 8.007 52h9.505a47.712 47.712 0 015.134-12.383l-6.724-6.725c-3.123-3.122-3.132-8.191-.011-11.312l5.668-5.669c3.12-3.12 8.186-3.116 11.313.01l6.724 6.725c3.82-2.257 7.98-4 12.384-5.134V8.007C52 3.591 55.578 0 59.992 0h8.016C72.42 0 76 3.585 76 8.007v9.505a47.712 47.712 0 0112.384 5.134l6.724-6.724c3.123-3.123 8.192-3.132 11.313-.01l5.668 5.668c3.12 3.12 3.116 8.186-.01 11.312l-6.725 6.725c2.257 3.82 4 7.979 5.134 12.383h9.505c4.416 0 8.007 3.578 8.007 7.992v8.017c0 4.411-3.585 7.991-8.007 7.991h-9.505zM64 96c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/></svg>"
},
"$:/core/images/paint": {
"title": "$:/core/images/paint",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-paint tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M83.527 76.19C90.43 69.287 91.892 59 87.91 50.665l37.903-37.902c2.919-2.92 2.913-7.659 0-10.572a7.474 7.474 0 00-10.572 0L77.338 40.093c-8.335-3.982-18.622-2.521-25.526 4.383l31.715 31.715zm-2.643 2.644L49.169 47.119S8.506 81.243 0 80.282c0 0 3.782 5.592 6.827 8.039 14.024-5.69 37.326-24.6 37.326-24.6l.661.66S19.45 90.222 9.18 92.047c1.222 1.44 4.354 4.053 6.247 5.776 5.417-1.488 34.733-28.57 34.733-28.57l.661.66-32.407 31.022 5.285 5.286L56.106 75.2l.662.66s-27.864 30.536-28.684 32.432c0 0 6.032 6.853 7.569 7.824.702-2.836 27.884-33.485 27.884-33.485l.661.66s-20.597 23.755-24.964 36.732c3.21 3.549 7.5 5.137 10.926 6.298-2.19-11.817 30.724-47.487 30.724-47.487z\"/></svg>"
},
"$:/core/images/palette": {
"title": "$:/core/images/palette",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.247 39.182a93.52 93.52 0 00-16.228-1.4C28.662 37.781 0 57.131 0 81.002c0 9.642 4.676 18.546 12.58 25.735C23.504 91.19 26.34 72.395 36.89 63.562c15.183-12.713 26.538-7.828 26.538-7.828l16.82-16.552zm26.535 9.655c13.049 7.913 21.257 19.392 21.257 32.166 0 9.35.519 17.411-11.874 25.08-10.797 6.681-3.824-6.536-11.844-10.898s-19.946 1.308-18.213 7.906c3.2 12.181 19.422 11.455 6.314 16.658-13.107 5.202-18.202 4.476-28.403 4.476-7.821 0-15.315-.947-22.243-2.68 9.844-4.197 27.88-12.539 33.354-19.456C82.788 92.409 87.37 80 83.324 72.484c-.194-.359 11.215-11.668 23.458-23.647zM1.134 123.867l-.66.002c33.479-14.94 22.161-64.226 58.818-64.226.317 1.418.644 2.944 1.062 4.494-25.907-4.166-23.567 48.031-59.22 59.73zm.713-.007c38.872-.506 78.152-22.347 78.152-44.813-9.27 0-14.073-3.48-16.816-7.942-16.597-7.003-30.365 45.715-61.336 52.755zm65.351-64.008c-4.45 4.115 4.886 16.433 11.318 11.318l45.27-45.27c11.317-11.318 0-22.635-11.318-11.318-11.317 11.318-33.518 34.405-45.27 45.27z\"/></svg>"
},
"$:/core/images/permalink-button": {
"title": "$:/core/images/permalink-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permalink-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.483 48l-7.387 32h-25.58l7.388-32h25.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L100.598 32h3.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-7.096l-7.387 32H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H85.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L69.402 96h-25.58L38.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L27.402 96h-3.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h7.096l7.387-32H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h18.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L58.598 32h25.58z\"/></svg>"
},
"$:/core/images/permaview-button": {
"title": "$:/core/images/permaview-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permaview-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.483 48l-1.846 8h-5.58l1.847-8h5.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L101.598 32h2.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-6.096l-1.847 8h7.944c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H92.364l-1.846 8H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H86.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L70.402 96h-5.58L59.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L48.402 96h-5.58L37.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L26.402 96h-2.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h6.096l1.847-8h-7.944C19.59 72 16 68.418 16 64c0-4.41 3.581-8 8-8h11.637l1.846-8H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h17.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L57.598 32h5.58L68.8 7.642c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L79.598 32h5.58zM53.904 48l-1.847 8h5.58l1.846-8h-5.579zm22.039 24l-1.847 8h-5.58l1.847-8h5.58zm-27.58 0l-1.846 8h5.579l1.847-8h-5.58z\"/></svg>"
},
"$:/core/images/picture": {
"title": "$:/core/images/picture",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-picture tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112 68.233v-48.23A4.001 4.001 0 00107.997 16H20.003A4.001 4.001 0 0016 20.003v38.31l9.241-14.593c2.8-4.422 9.023-5.008 12.6-1.186l18.247 20.613 13.687-6.407a8 8 0 018.903 1.492 264.97 264.97 0 002.92 2.739 249.44 249.44 0 006.798 6.066 166.5 166.5 0 002.106 1.778c2.108 1.747 3.967 3.188 5.482 4.237.748.518 1.383.92 2.044 1.33.444.117 1.046.144 1.809.05 1.873-.233 4.238-1.144 6.723-2.547a36.016 36.016 0 003.205-2.044c.558-.4.93-.686 1.07-.802.376-.31.765-.577 1.165-.806zM0 8.007A8.01 8.01 0 018.007 0h111.986A8.01 8.01 0 01128 8.007v111.986a8.01 8.01 0 01-8.007 8.007H8.007A8.01 8.01 0 010 119.993V8.007zM95 42a8 8 0 100-16 8 8 0 000 16zM32 76c15.859 4.83 20.035 7.244 20.035 12S32 95.471 32 102.347c0 6.876 1.285 4.99 1.285 9.653H68s-13.685-6.625-13.685-10.8c0-7.665 10.615-8.34 10.615-13.2 0-7.357-14.078-8.833-32.93-12z\"/></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\" class=\"tc-image-plugin-generic-language tc-image-button\"><path fill-rule=\"evenodd\" d=\"M61.207 68.137c-4.324 2.795-6.999 6.656-6.999 10.921 0 7.906 9.19 14.424 21.042 15.336 2.162 3.902 8.598 6.785 16.318 7.01-5.126-1.125-9.117-3.742-10.62-7.01C92.805 93.487 102 86.967 102 79.059c0-8.53-10.699-15.445-23.896-15.445-6.599 0-12.572 1.729-16.897 4.524zm12.794-14.158c-4.324 2.795-10.298 4.524-16.897 4.524-2.619 0-5.14-.272-7.497-.775-3.312 2.25-8.383 3.69-14.067 3.69l-.255-.002c4.119-.892 7.511-2.747 9.478-5.13-6.925-2.704-11.555-7.617-11.555-13.228 0-8.53 10.699-15.445 23.896-15.445C70.301 27.613 81 34.528 81 43.058c0 4.265-2.675 8.126-6.999 10.921zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></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\" class=\"tc-image-plugin-generic-plugin tc-image-button\"><path fill-rule=\"evenodd\" d=\"M40.397 76.446V95.34h14.12l-.001-.005a6.912 6.912 0 005.364-11.593l.046-.023a6.912 6.912 0 119.979.526l.086.055a6.914 6.914 0 004.408 10.948l-.023.092h21.32V75.568l-.15.038a6.912 6.912 0 00-11.593-5.364l-.022-.046a6.912 6.912 0 11.526-9.979l.055-.086a6.914 6.914 0 0010.948-4.408c.079.018.158.038.236.059v-15.74h-21.32l.023-.094a6.914 6.914 0 01-4.408-10.947 10.23 10.23 0 00-.086-.055 6.912 6.912 0 10-9.979-.526l-.046.023a6.912 6.912 0 01-5.364 11.593l.001.005h-14.12v12.847A6.912 6.912 0 0129.5 59.843l-.054.086a6.912 6.912 0 10-.526 9.979l.023.046a6.912 6.912 0 0111.455 6.492zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></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\" class=\"tc-image-plugin-generic-theme tc-image-button\"><path fill-rule=\"evenodd\" d=\"M29.408 91.472L51.469 69.41l-.004-.005a2.22 2.22 0 01.004-3.146c.87-.87 2.281-.872 3.147-.005l9.465 9.464a2.22 2.22 0 01-.005 3.147c-.87.87-2.28.871-3.147.005l-.005-.005-22.061 22.062a6.686 6.686 0 11-9.455-9.455zM60.802 66.38c-2.436-2.704-4.465-5.091-5.817-6.869-6.855-9.014-10.313-4.268-14.226 0-3.913 4.268 1.03 7.726-2.683 10.741-3.713 3.015-3.484 4.06-9.752-1.455-6.267-5.516-6.7-7.034-3.823-10.181 2.877-3.147 5.281 1.808 11.159-3.785 5.877-5.593.94-10.55.94-10.55s12.237-25.014 28.588-23.167c16.351 1.848-6.186-2.392-11.792 17.226-2.4 8.4.447 6.42 4.998 9.968 1.394 1.086 6.03 4.401 11.794 8.685l20.677-20.676 1.615-4.766 7.84-4.689 3.151 3.152-4.688 7.84-4.766 1.615-20.224 20.223c12.663 9.547 28.312 22.146 28.312 26.709 0 7.217-3.071 11.526-9.535 9.164-4.693-1.715-18.768-15.192-28.753-25.897l-2.893 2.893-3.151-3.152 3.029-3.029zM63.953 0l54.56 32v64l-54.56 32-54.56-32V32l54.56-32z\"/></svg>"
},
"$:/core/images/preview-closed": {
"title": "$:/core/images/preview-closed",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-closed tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M.088 64a7.144 7.144 0 001.378 5.458C16.246 88.818 39.17 100.414 64 100.414c24.83 0 47.753-11.596 62.534-30.956A7.144 7.144 0 00127.912 64C110.582 78.416 88.304 87.086 64 87.086 39.696 87.086 17.418 78.416.088 64z\"/><rect width=\"4\" height=\"16\" x=\"62\" y=\"96\" rx=\"4\"/><rect width=\"4\" height=\"16\" x=\"78\" y=\"93\" rx=\"4\" transform=\"rotate(-5 80 101)\"/><rect width=\"4\" height=\"16\" x=\"46\" y=\"93\" rx=\"4\" transform=\"rotate(5 48 101)\"/><rect width=\"4\" height=\"16\" x=\"30\" y=\"88\" rx=\"4\" transform=\"rotate(10 32 96)\"/><rect width=\"4\" height=\"16\" x=\"94\" y=\"88\" rx=\"4\" transform=\"rotate(-10 96 96)\"/><rect width=\"4\" height=\"16\" x=\"110\" y=\"80\" rx=\"4\" transform=\"rotate(-20 112 88)\"/><rect width=\"4\" height=\"16\" x=\"14\" y=\"80\" rx=\"4\" transform=\"rotate(20 16 88)\"/></g></svg>"
},
"$:/core/images/preview-open": {
"title": "$:/core/images/preview-open",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-open tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.11 99.588c-24.83 0-47.754-11.596-62.534-30.957a7.148 7.148 0 010-8.675C16.356 40.596 39.28 29 64.11 29c24.83 0 47.753 11.596 62.534 30.956a7.148 7.148 0 010 8.675c-14.78 19.36-37.703 30.957-62.534 30.957zm46.104-32.007c1.44-1.524 1.44-3.638 0-5.162C99.326 50.9 82.439 44 64.147 44S28.968 50.9 18.08 62.42c-1.44 1.523-1.44 3.637 0 5.16C28.968 79.1 45.855 86 64.147 86s35.179-6.9 46.067-18.42z\"/><path d=\"M63.5 88C76.479 88 87 77.479 87 64.5S76.479 41 63.5 41 40 51.521 40 64.5 50.521 88 63.5 88z\"/></g></svg>"
},
"$:/core/images/print-button": {
"title": "$:/core/images/print-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-print-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M112 71V30.5h-.032c-.035-2-.816-3.99-2.343-5.516L86.998 2.357A7.978 7.978 0 0081 .02V0H24a8 8 0 00-8 8v63h8V8h57v14.5c0 4.422 3.582 8 8 8h15V71h8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/><path d=\"M0 80.005C0 71.165 7.156 64 16 64h96c8.836 0 16 7.155 16 16.005v31.99c0 8.84-7.156 16.005-16 16.005H16c-8.836 0-16-7.155-16-16.005v-31.99zM104 96a8 8 0 100-16 8 8 0 000 16z\"/></g></svg>"
},
"$:/core/images/quote": {
"title": "$:/core/images/quote",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-quote tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M51.219 117.713V62.199H27.427c0-8.891 1.683-16.401 5.047-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.36 3.184-20.728 6.669-6.368 3.484-11.835 7.87-16.401 13.157C9.524 27.113 5.98 33.241 3.456 40.21.933 47.18-.21 54.63.03 62.56v55.153H51.22zm76.781 0V62.199h-23.791c0-8.891 1.682-16.401 5.046-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.359 3.184-20.727 6.669-6.369 3.484-11.836 7.87-16.402 13.157-4.566 5.287-8.11 11.415-10.634 18.384-2.523 6.97-3.665 14.42-3.424 22.35v55.153H128z\"/></svg>"
},
"$:/core/images/refresh-button": {
"title": "$:/core/images/refresh-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-refresh-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M106.369 39.433c10.16 20.879 6.57 46.764-10.771 64.106-21.87 21.87-57.327 21.87-79.196 0-21.87-21.87-21.87-57.326 0-79.196a8 8 0 1111.314 11.314c-15.621 15.62-15.621 40.947 0 56.568 15.62 15.621 40.947 15.621 56.568 0C97.72 78.79 99.6 58.175 89.924 42.73l-6.44 12.264a8 8 0 11-14.166-7.437L84.435 18.76a8 8 0 0110.838-3.345l28.873 15.345a8 8 0 11-7.51 14.129l-10.267-5.457zm-8.222-12.368c-.167-.19-.336-.38-.506-.57l.96-.296-.454.866z\"/></svg>"
},
"$:/core/images/right-arrow": {
"title": "$:/core/images/right-arrow",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-right-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M99.069 64.173c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></svg>"
},
"$:/core/images/rotate-left": {
"title": "$:/core/images/rotate-left",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-rotate-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"32\" height=\"80\" rx=\"8\"/><rect width=\"80\" height=\"32\" x=\"48\" y=\"96\" rx=\"8\"/><path d=\"M61.32 36.65c19.743 2.45 35.023 19.287 35.023 39.693a4 4 0 01-8 0c0-15.663-11.254-28.698-26.117-31.46l3.916 3.916a4 4 0 11-5.657 5.657L49.172 43.142a4 4 0 010-5.657l11.313-11.313a4 4 0 115.657 5.656l-4.821 4.822z\"/></g></svg>"
},
"$:/core/images/save-button": {
"title": "$:/core/images/save-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-save-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M120.783 34.33c4.641 8.862 7.266 18.948 7.266 29.646 0 35.347-28.653 64-64 64-35.346 0-64-28.653-64-64 0-35.346 28.654-64 64-64 18.808 0 35.72 8.113 47.43 21.03l2.68-2.68c3.13-3.13 8.197-3.132 11.321-.008 3.118 3.118 3.121 8.193-.007 11.32l-4.69 4.691zm-12.058 12.058a47.876 47.876 0 013.324 17.588c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48c14.39 0 27.3 6.332 36.098 16.362L58.941 73.544 41.976 56.578c-3.127-3.127-8.201-3.123-11.32-.005-3.123 3.124-3.119 8.194.006 11.319l22.617 22.617a7.992 7.992 0 005.659 2.347c2.05 0 4.101-.783 5.667-2.349l44.12-44.12z\"/></svg>"
},
"$:/core/images/size": {
"title": "$:/core/images/size",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-size tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M92.343 26l-9.171 9.172a4 4 0 105.656 5.656l16-16a4 4 0 000-5.656l-16-16a4 4 0 10-5.656 5.656L92.343 18H22a4 4 0 00-4 4v70.343l-9.172-9.171a4 4 0 10-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656L26 92.343V22l-4 4h70.343zM112 52v64l4-4H52a4 4 0 100 8h64a4 4 0 004-4V52a4 4 0 10-8 0z\"/></svg>"
},
"$:/core/images/spiral": {
"title": "$:/core/images/spiral",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-spiral tc-image-button\" viewBox=\"0 0 128 128\"><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.074a4.785 4.785 0 00-4.52-5.03 4.778 4.778 0 00-5.03 4.52c-.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-.01a1.047 1.047 0 01-.264-.332c-.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\"/></svg>"
},
"$:/core/images/stamp": {
"title": "$:/core/images/stamp",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-stamp tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M49.733 64H16.01C11.584 64 8 67.583 8 72.003V97h112V72.003A8 8 0 00111.99 64H78.267A22.813 22.813 0 0175.5 53.077c0-6.475 2.687-12.324 7.009-16.497A22.818 22.818 0 0087 22.952C87 10.276 76.703 0 64 0S41 10.276 41 22.952c0 5.103 1.669 9.817 4.491 13.628 4.322 4.173 7.009 10.022 7.009 16.497 0 3.954-1.002 7.675-2.767 10.923zM8 104h112v8H8v-8z\"/></svg>"
},
"$:/core/images/star-filled": {
"title": "$:/core/images/star-filled",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-star-filled tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M61.836 96.823l37.327 27.287c2.72 1.99 6.379-.69 5.343-3.912L90.29 75.988l-1.26 3.91 37.285-27.345c2.718-1.993 1.32-6.327-2.041-6.33l-46.113-.036 3.3 2.416L67.176 4.416c-1.04-3.221-5.563-3.221-6.604 0L46.29 48.603l3.3-2.416-46.113.036c-3.362.003-4.759 4.337-2.04 6.33L38.72 79.898l-1.26-3.91-14.216 44.21c-1.036 3.223 2.622 5.901 5.343 3.912l37.326-27.287h-4.078z\"/></svg>"
},
"$:/core/images/storyview-classic": {
"title": "$:/core/images/storyview-classic",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-classic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm0 48C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0 32C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
},
"$:/core/images/storyview-pop": {
"title": "$:/core/images/storyview-pop",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-pop tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm-7.99 40C11.587 56 8 59.578 8 63.992v16.016C8 84.422 11.584 88 16.01 88h95.98c4.424 0 8.01-3.578 8.01-7.992V63.992c0-4.414-3.584-7.992-8.01-7.992H16.01zM24 96C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0-32C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
},
"$:/core/images/storyview-zoomin": {
"title": "$:/core/images/storyview-zoomin",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-zoomin tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16A8 8 0 0016 24.009V71.99C16 76.414 19.588 80 24 80h80a8 8 0 008-8.009V24.01c0-4.423-3.588-8.009-8-8.009H24z\"/></svg>"
},
"$:/core/images/strikethrough": {
"title": "$:/core/images/strikethrough",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-strikethrough tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M92.794 38.726h15.422c-.229-6.74-1.514-12.538-3.856-17.393-2.342-4.855-5.54-8.881-9.596-12.08-4.055-3.199-8.767-5.54-14.136-7.025C75.258.743 69.433 0 63.15 0a62.76 62.76 0 00-16.364 2.142C41.474 3.57 36.733 5.74 32.564 8.653c-4.17 2.913-7.511 6.626-10.025 11.138-2.513 4.512-3.77 9.853-3.77 16.022 0 5.597 1.115 10.252 3.342 13.965 2.228 3.712 5.198 6.74 8.91 9.081 3.713 2.342 7.911 4.227 12.595 5.655a194.641 194.641 0 0014.308 3.77c4.855 1.085 9.624 2.142 14.308 3.17 4.683 1.028 8.881 2.37 12.594 4.027 3.713 1.656 6.683 3.798 8.91 6.425 2.228 2.628 3.342 6.055 3.342 10.281 0 4.456-.914 8.111-2.742 10.967a19.953 19.953 0 01-7.197 6.768c-2.97 1.657-6.311 2.828-10.024 3.513a60.771 60.771 0 01-11.052 1.028c-4.57 0-9.025-.571-13.366-1.713-4.34-1.143-8.139-2.913-11.394-5.312-3.256-2.4-5.884-5.455-7.883-9.168-1.999-3.712-2.998-8.139-2.998-13.28H15c0 7.426 1.342 13.852 4.027 19.278 2.684 5.426 6.34 9.881 10.966 13.365 4.627 3.484 9.996 6.083 16.107 7.797 6.112 1.713 12.595 2.57 19.449 2.57 5.597 0 11.223-.657 16.878-1.97 5.655-1.314 10.767-3.428 15.336-6.34 4.57-2.914 8.31-6.683 11.224-11.31 2.913-4.626 4.37-10.195 4.37-16.707 0-6.054-1.115-11.08-3.342-15.079-2.228-3.998-5.198-7.31-8.91-9.938-3.713-2.627-7.911-4.712-12.595-6.254a170.83 170.83 0 00-14.308-4.027 549.669 549.669 0 00-14.308-3.17c-4.683-.971-8.881-2.2-12.594-3.684-3.713-1.485-6.683-3.399-8.91-5.74-2.228-2.342-3.342-5.398-3.342-9.168 0-3.998.771-7.34 2.313-10.024 1.543-2.685 3.599-4.826 6.17-6.426 2.57-1.599 5.51-2.741 8.824-3.427a49.767 49.767 0 0110.11-1.028c8.453 0 15.393 1.97 20.819 5.912 5.426 3.94 8.596 10.31 9.51 19.106z\"/><path d=\"M5 54h118v16H5z\"/></g></svg>"
},
"$:/core/images/subscript": {
"title": "$:/core/images/subscript",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-subscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 128.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
},
"$:/core/images/superscript": {
"title": "$:/core/images/superscript",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-superscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 63.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
},
"$:/core/images/tag-button": {
"title": "$:/core/images/tag-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tag-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M18.164 47.66l.004 4.105c.003 3.823 2.19 9.097 4.885 11.792l61.85 61.85c2.697 2.697 7.068 2.69 9.769-.01L125.767 94.3a6.903 6.903 0 00.01-9.77L63.928 22.683c-2.697-2.697-7.976-4.88-11.796-4.881l-27.076-.007a6.902 6.902 0 00-6.91 6.91l.008 9.96.287.033c3.73.411 8.489-.044 13.365-1.153a9.702 9.702 0 0111.14-3.662l.291-.13.128.285a9.7 9.7 0 013.3 2.17c3.796 3.796 3.801 9.945.012 13.734-3.618 3.618-9.386 3.777-13.204.482-5.365 1.122-10.674 1.596-15.309 1.237z\"/><path d=\"M47.633 39.532l.023.051c-9.689 4.356-21.584 6.799-30.396 5.828C5.273 44.089-1.028 36.43 2.443 24.078 5.562 12.976 14.3 4.361 24.047 1.548c10.68-3.083 19.749 1.968 19.749 13.225h-8.623c0-4.859-3.078-6.573-8.735-4.94-6.91 1.995-13.392 8.383-15.694 16.577-1.915 6.818.417 9.653 7.46 10.43 7.126.785 17.531-1.352 25.917-5.121l.027.06.036-.017c1.76-.758 6.266 6.549 3.524 7.74a2.8 2.8 0 01-.075.03z\"/></g></svg>"
},
"$:/core/images/theme-button": {
"title": "$:/core/images/theme-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-theme-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.854 66.945a122.626 122.626 0 01-3.9-4.819c-11.064-14.548-16.645-6.888-22.96 0-6.315 6.888 1.664 12.47-4.33 17.335-5.993 4.866-5.623 6.552-15.737-2.35-10.115-8.9-10.815-11.351-6.172-16.43 4.644-5.08 8.524 2.918 18.01-6.108 9.485-9.026 1.517-17.026 1.517-17.026S42.03-2.824 68.42.157c26.39 2.982-9.984-3.86-19.031 27.801-3.874 13.556.72 10.362 8.066 16.087 1.707 1.33 6.428 4.732 12.671 9.318-6.129 5.879-11.157 10.669-14.273 13.582zm11.641 12.947c16.013 17.036 37.742 37.726 45.117 40.42 10.432 3.813 15.388-3.141 15.388-14.79 0-7.151-23.83-26.542-43.924-41.769-7.408 7.156-13.376 12.953-16.58 16.139z\"/><path d=\"M11.069 109.828L46.31 74.587a3.56 3.56 0 115.037-5.032l15.098 15.098a3.56 3.56 0 11-5.032 5.037l-35.24 35.241c-4.171 4.17-10.933 4.17-15.104 0-4.17-4.17-4.17-10.933 0-15.103zM124.344 6.622l5.034 5.034-7.49 12.524-7.613 2.58L61.413 79.62l-5.034-5.034 52.861-52.862 2.58-7.614 12.524-7.49z\"/></g></svg>"
},
"$:/core/images/timestamp-off": {
"title": "$:/core/images/timestamp-off",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-off tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><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 10a5 5 0 010-10H66.69a5 5 0 015 5c.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\"/></g></svg>"
},
"$:/core/images/timestamp-on": {
"title": "$:/core/images/timestamp-on",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-on tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><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 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M13.41 27.178a5.005 5.005 0 01-7.045-.613 5.008 5.008 0 01.616-7.047l9.95-8.348a5 5 0 016.429 7.661l-9.95 8.348zm89.573 0a5.005 5.005 0 007.045-.613 5.008 5.008 0 00-.616-7.047l-9.95-8.348a5 5 0 00-6.428 7.661l9.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\"/></g></svg>"
},
"$:/core/images/tip": {
"title": "$:/core/images/tip",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tip tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128.242c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64-35.346 0-64 28.654-64 64 0 35.346 28.654 64 64 64zm11.936-36.789c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349C54.33 94.05 58.824 95.82 64 95.82c5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.456c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zM64.3 24.242c11.618 0 23.699 7.82 23.699 24.2S75.92 71.754 75.92 83.576c0 5.873-5.868 9.26-11.92 9.26s-12.027-3.006-12.027-9.26C51.973 71.147 40 65.47 40 48.442s12.683-24.2 24.301-24.2z\"/></svg>"
},
"$:/core/images/transcludify": {
"title": "$:/core/images/transcludify",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-transcludify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M0 59.482c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.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 00-.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 00-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 002.75-.932 6.762 6.762 0 002.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 00-.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 00-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 00-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 00.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 00-.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 002.262 2.084 8.868 8.868 0 002.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 00-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 00.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 00-.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 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806z\"/></svg>"
},
"$:/core/images/twitter": {
"title": "$:/core/images/twitter",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-twitter tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.626 115.803A73.376 73.376 0 012 104.235c2.022.238 4.08.36 6.166.36 12.111 0 23.258-4.117 32.105-11.023-11.312-.208-20.859-7.653-24.148-17.883a25.98 25.98 0 0011.674-.441C15.971 72.881 7.061 62.474 7.061 49.997c0-.108 0-.216.002-.323a25.824 25.824 0 0011.709 3.22c-6.936-4.617-11.5-12.5-11.5-21.433 0-4.719 1.274-9.142 3.5-12.945 12.75 15.579 31.797 25.83 53.281 26.904-.44-1.884-.67-3.85-.67-5.868 0-14.22 11.575-25.75 25.852-25.75a25.865 25.865 0 0118.869 8.132 51.892 51.892 0 0016.415-6.248c-1.93 6.012-6.029 11.059-11.366 14.246A51.844 51.844 0 00128 25.878a52.428 52.428 0 01-12.9 13.33c.05 1.104.075 2.214.075 3.33 0 34.028-26 73.265-73.549 73.265\"/></svg>"
},
"$:/core/images/underline": {
"title": "$:/core/images/underline",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-underline tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M7 117.421h114.248V128H7v-10.579zm97.871-18.525V0h-16.26v55.856c0 4.463-.605 8.576-1.816 12.338-1.212 3.762-3.03 7.046-5.452 9.851-2.423 2.806-5.452 4.974-9.086 6.504-3.635 1.53-7.939 2.296-12.912 2.296-6.25 0-11.159-1.786-14.73-5.356-3.57-3.571-5.356-8.417-5.356-14.538V0H23v65.038c0 5.356.542 10.234 1.626 14.633 1.084 4.4 2.965 8.194 5.643 11.382 2.678 3.188 6.185 5.643 10.52 7.365 4.337 1.721 9.756 2.582 16.26 2.582 7.27 0 13.582-1.435 18.938-4.304 5.356-2.87 9.755-7.365 13.199-13.486h.382v15.686h15.303z\"/></svg>"
},
"$:/core/images/unfold-all-button": {
"title": "$:/core/images/unfold-all-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M63.945 60.624c-2.05 0-4.101-.78-5.666-2.345L35.662 35.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 41.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 58.279a7.986 7.986 0 01-5.663 2.346zM64.004 124.565c-2.05 0-4.102-.78-5.666-2.345L35.721 99.603c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 105.255l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.662 122.22a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/unfold-button": {
"title": "$:/core/images/unfold-button",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M63.945 63.624c-2.05 0-4.101-.78-5.666-2.345L35.662 38.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 44.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 61.279a7.986 7.986 0 01-5.663 2.346zM64.004 105.682c-2.05.001-4.102-.78-5.666-2.344L35.721 80.721c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 86.373l16.966-16.966c3.124-3.125 8.194-3.13 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319l-22.617 22.617a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
},
"$:/core/images/unlocked-padlock": {
"title": "$:/core/images/unlocked-padlock",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unlocked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M48.627 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h6.136c-10.455-12.651-27.364-35.788-4.3-55.142 24.636-20.672 45.835 4.353 55.777 16.201 9.943 11.85-2.676 22.437-12.457 9.892-9.78-12.545-21.167-24.146-33.207-14.043-12.041 10.104-1.757 22.36 8.813 34.958 2.467 2.94 3.641 5.732 3.865 8.134zm19.105 28.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
},
"$:/core/images/up-arrow": {
"title": "$:/core/images/up-arrow",
"created": "20150316000544368",
"modified": "20150316000831867",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-up-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M63.892.281c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.104 3.092-11.196 0L63.894 19.393 13.513 69.774a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98A7.892 7.892 0 0163.893.28z\"/></svg>"
},
"$:/core/images/video": {
"title": "$:/core/images/video",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-video tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 12c-34.91 0-55.273 2.917-58.182 5.833C2.91 20.75 0 41.167 0 64.5c0 23.333 2.91 43.75 5.818 46.667C8.728 114.083 29.091 117 64 117c34.91 0 55.273-2.917 58.182-5.833C125.09 108.25 128 87.833 128 64.5c0-23.333-2.91-43.75-5.818-46.667C119.272 14.917 98.909 12 64 12zm-9.084 32.618c-3.813-2.542-6.905-.879-6.905 3.698v31.368c0 4.585 3.099 6.235 6.905 3.698l22.168-14.779c3.813-2.542 3.806-6.669 0-9.206L54.916 44.618z\"/></svg>"
},
"$:/core/images/warning": {
"title": "$:/core/images/warning",
"tags": "$:/tags/Image",
"text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-warning tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M57.072 11c3.079-5.333 10.777-5.333 13.856 0l55.426 96c3.079 5.333-.77 12-6.928 12H8.574c-6.158 0-10.007-6.667-6.928-12l55.426-96zM64 37c-4.418 0-8 3.582-8 7.994v28.012C56 77.421 59.59 81 64 81c4.418 0 8-3.582 8-7.994V44.994C72 40.579 68.41 37 64 37zm0 67a8 8 0 100-16 8 8 0 000 16z\"/></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/SidebarSearch/Hint": {
"title": "$:/language/Buttons/SidebarSearch/Hint",
"text": "Select the sidebar search field"
},
"$:/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/ToggleSidebar/Hint": {
"title": "$:/language/Buttons/ToggleSidebar/Hint",
"text": "Toggle the sidebar visibility"
},
"$:/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/AutoFocus/Prompt": {
"title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
"text": "Default focus field for new tiddlers"
},
"$:/language/ControlPanel/Basics/Caption": {
"title": "$:/language/ControlPanel/Basics/Caption",
"text": "Basics"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
"text": "Use [[double square brackets]] 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/NewTiddler/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
"text": "Tags for new tiddlers"
},
"$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
"text": "Number of overridden shadow tiddlers"
},
"$:/language/ControlPanel/Basics/RemoveTags": {
"title": "$:/language/ControlPanel/Basics/RemoveTags",
"text": "Update to current format"
},
"$:/language/ControlPanel/Basics/RemoveTags/Hint": {
"title": "$:/language/ControlPanel/Basics/RemoveTags/Hint",
"text": "Update the tags configuration to the latest format"
},
"$:/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/LayoutSwitcher/Caption": {
"title": "$:/language/ControlPanel/LayoutSwitcher/Caption",
"text": "Layout"
},
"$:/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/Delete/Hint": {
"title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
"text": "delete this entry from the current palette"
},
"$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
"title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
"text": "Show color names that are not part of the current palette"
},
"$:/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/AlsoRequires": {
"title": "$:/language/ControlPanel/Plugins/AlsoRequires",
"text": "Also requires:"
},
"$:/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/Downgrade/Caption": {
"title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
"text": "downgrade"
},
"$:/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/PluginWillRequireReload": {
"title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
"text": "(requires reload)"
},
"$:/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/Plugins/Update/Caption": {
"title": "$:/language/ControlPanel/Plugins/Update/Caption",
"text": "update"
},
"$:/language/ControlPanel/Plugins/Updates/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/Caption",
"text": "Updates"
},
"$:/language/ControlPanel/Plugins/Updates/Hint": {
"title": "$:/language/ControlPanel/Plugins/Updates/Hint",
"text": "Available updates to installed plugins"
},
"$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
"text": "Update <<update-count>> plugins"
},
"$:/language/ControlPanel/Plugins/SubPluginPrompt": {
"title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
"text": "With <<count>> sub-plugins available"
},
"$:/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/GitService/Branch": {
"title": "$:/language/ControlPanel/Saving/GitService/Branch",
"text": "Target branch for saving"
},
"$:/language/ControlPanel/Saving/GitService/CommitMessage": {
"title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
"text": "Saved by TiddlyWiki"
},
"$:/language/ControlPanel/Saving/GitService/Description": {
"title": "$:/language/ControlPanel/Saving/GitService/Description",
"text": "These settings are only used when saving to <<service-name>>"
},
"$:/language/ControlPanel/Saving/GitService/Filename": {
"title": "$:/language/ControlPanel/Saving/GitService/Filename",
"text": "Filename of target file (e.g. `index.html`)"
},
"$:/language/ControlPanel/Saving/GitService/Path": {
"title": "$:/language/ControlPanel/Saving/GitService/Path",
"text": "Path to target file (e.g. `/wiki/`)"
},
"$:/language/ControlPanel/Saving/GitService/Repo": {
"title": "$:/language/ControlPanel/Saving/GitService/Repo",
"text": "Target repository (e.g. `Jermolene/TiddlyWiki5`)"
},
"$:/language/ControlPanel/Saving/GitService/ServerURL": {
"title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
"text": "Server API URL"
},
"$:/language/ControlPanel/Saving/GitService/UserName": {
"title": "$:/language/ControlPanel/Saving/GitService/UserName",
"text": "Username"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
"text": "~GitHub Saver"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
"text": "Password, OAUTH token, or personal access token (see [[GitHub help page|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]] for details)"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
"text": "~GitLab Saver"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
"text": "Personal access token for API (see [[GitLab help page|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]] for details)"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
"text": "Gitea Saver"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
"text": "Personal access token for API (via Gitea’s web interface: `Settings | Applications | Generate New Token`)"
},
"$:/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/ControlPanel": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel",
"text": "~TiddlySpot Control Panel"
},
"$:/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/ReadOnly": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly",
"text": "The ~TiddlySpot service is currently only available in read-only form. Please see http://tiddlyspot.com/ for the latest details. The ~TiddlySpot saver can still be used to save to compatible servers."
},
"$:/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/NavigationPermalinkviewMode/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
"text": "Permalink/permaview Mode"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
"text": "Choose how permalink/permaview is handled:"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
"text": "Copy permalink/permaview URL to clipboard"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
"text": "Update address bar with permalink/permaview URL"
},
"$:/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/authenticator": {
"title": "$:/language/Docs/ModuleTypes/authenticator",
"text": "Defines how requests are authenticated by the built-in HTTP server."
},
"$:/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/route": {
"title": "$:/language/Docs/ModuleTypes/route",
"text": "Defines how individual URL patterns are handled by the built-in HTTP server."
},
"$:/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-browser": {
"title": "$:/language/Docs/ModuleTypes/utils-browser",
"text": "Adds browser-specific 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/menubar-background": {
"title": "$:/language/Docs/PaletteColours/menubar-background",
"text": "Menu bar background"
},
"$:/language/Docs/PaletteColours/menubar-foreground": {
"title": "$:/language/Docs/PaletteColours/menubar-foreground",
"text": "Menu bar 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/select-tag-background": {
"title": "$:/language/Docs/PaletteColours/select-tag-background",
"text": "`<select>` element background"
},
"$:/language/Docs/PaletteColours/select-tag-foreground": {
"title": "$:/language/Docs/PaletteColours/select-tag-foreground",
"text": "`<select>` element text"
},
"$:/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/Button/Hint": {
"title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
"text": "Add the new field to the tiddler"
},
"$:/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/Button/Hint": {
"title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
"text": "add tag"
},
"$:/language/EditTemplate/Tags/Add/Placeholder": {
"title": "$:/language/EditTemplate/Tags/Add/Placeholder",
"text": "tag name"
},
"$:/language/EditTemplate/Tags/ClearInput/Caption": {
"title": "$:/language/EditTemplate/Tags/ClearInput/Caption",
"text": "clear input"
},
"$:/language/EditTemplate/Tags/ClearInput/Hint": {
"title": "$:/language/EditTemplate/Tags/ClearInput/Hint",
"text": "Clear tag input"
},
"$:/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/Title/References/Prompt": {
"title": "$:/language/EditTemplate/Title/References/Prompt",
"text": "The following references to this tiddler will not be automatically updated:"
},
"$:/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/hide-body": {
"title": "$:/language/Docs/Fields/hide-body",
"text": "The view template will hide bodies of tiddlers if set to: ''yes''"
},
"$:/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": "Indicates that a tiddler should be saved as a JavaScript library if set to: ''yes''"
},
"$:/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/throttle.refresh": {
"title": "$:/language/Docs/Fields/throttle.refresh",
"text": "If present, throttles refreshes of this tiddler"
},
"$:/language/Docs/Fields/title": {
"title": "$:/language/Docs/Fields/title",
"text": "The unique name of a tiddler"
},
"$:/language/Docs/Fields/toc-link": {
"title": "$:/language/Docs/Fields/toc-link",
"text": "Suppresses the tiddler's link in a Table of Contents tree if set to: ''no''"
},
"$:/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/Docs/Fields/_is_skinny": {
"title": "$:/language/Docs/Fields/_is_skinny",
"text": "If present, indicates that the tiddler text field must be loaded from the server"
},
"$:/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/SessionTiddlers": {
"title": "$:/language/Filters/SessionTiddlers",
"text": "Tiddlers modified since the wiki was loaded"
},
"$:/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/deletetiddlers": {
"title": "$:/language/Help/deletetiddlers",
"description": "Deletes a group of tiddlers",
"text": "<<.from-version \"5.1.20\">> Deletes a group of tiddlers identified by a filter.\n\n```\n--deletetiddlers <filter>\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/listen": {
"title": "$:/language/Help/listen",
"description": "Provides an HTTP server interface to TiddlyWiki",
"text": "Serves a wiki over HTTP.\n\nThe listen command uses NamedCommandParameters:\n\n```\n--listen [<name>=<value>]...\n```\n\nAll parameters are optional with safe defaults, and can be specified in any order. The recognised parameters are:\n\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\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* ''credentials'' - pathname of credentials CSV file (relative to wiki folder)\n* ''anon-username'' - the username for signing edits for anonymous users\n* ''username'' - optional username for basic authentication\n* ''password'' - optional password for basic authentication\n* ''authenticated-user-header'' - optional name of header to be used for trusted authentication\n* ''readers'' - comma separated list of principals allowed to read from this wiki\n* ''writers'' - comma separated list of principals allowed to write to this wiki\n* ''csrf-disable'' - set to \"yes\" to disable CSRF checks (defaults to \"no\")\n* ''sse-enabled'' - set to \"yes\" to enable Server-sent events (defaults to \"no\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''tls-cert'' - pathname of TLS certificate file (relative to wiki folder)\n* ''tls-key'' - pathname of TLS key file (relative to wiki folder)\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n* ''gzip'' - set to \"yes\" to enable gzip compression for some http endpoints (defaults to \"no\")\n\nFor information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\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> [noerror]\n--load <dirpath> [noerror]\n```\n\nBy default, the load command raises an error if no tiddlers are found. The error can be suppressed by providing the optional \"noerror\" parameter.\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* ''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* ''template'': Optional template through which each tiddler is rendered\n* ''name'': Name of optional variables\n* ''value'': Value of optional variables\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* Multiple ''name''/''value'' pairs can be used to pass more than one variable\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/savewikifolder": {
"title": "$:/language/Help/savewikifolder",
"description": "Saves a wiki to a new wiki folder",
"text": "<<.from-version \"5.1.20\">> Saves the current wiki as a wiki folder, including tiddlers, plugins and configuration:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* The target wiki folder must be empty or non-existent\n* The filter specifies which tiddlers should be included. It is optional, defaulting to `[all[tiddlers]]`\n* Plugins from the official plugin library are replaced with references to those plugins in the `tiddlywiki.info` file\n* Custom plugins are unpacked into their own folder\n\nA common usage is to convert a TiddlyWiki HTML file into a wiki folder:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
},
"$:/language/Help/server": {
"title": "$:/language/Help/server",
"description": "Provides an HTTP server interface to TiddlyWiki (deprecated in favour of the new listen command)",
"text": "Legacy command to serve a wiki over HTTP.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\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* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - 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* ''path-prefix'' - optional prefix for paths\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\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 should only be used on a trusted network or over HTTPS.\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```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nUsing an address like this exposes your system to the local network. For information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\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--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/Listing/Rename/Tooltip": {
"title": "$:/language/Import/Listing/Rename/Tooltip",
"text": "Rename tiddler before importing"
},
"$:/language/Import/Listing/Rename/Prompt": {
"title": "$:/language/Import/Listing/Rename/Prompt",
"text": "Rename to:"
},
"$:/language/Import/Listing/Rename/ConfirmRename": {
"title": "$:/language/Import/Listing/Rename/ConfirmRename",
"text": "Rename tiddler"
},
"$:/language/Import/Listing/Rename/CancelRename": {
"title": "$:/language/Import/Listing/Rename/CancelRename",
"text": "Cancel"
},
"$:/language/Import/Listing/Rename/OverwriteWarning": {
"title": "$:/language/Import/Listing/Rename/OverwriteWarning",
"text": "A tiddler with this title already exists."
},
"$:/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>> not being newer 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/System/Warning": {
"title": "$:/language/Import/Upgrader/System/Warning",
"text": "Core module tiddler."
},
"$:/language/Import/Upgrader/System/Alert": {
"title": "$:/language/Import/Upgrader/System/Alert",
"text": "You are about to import a tiddler that will overwrite a core module tiddler. This is not recommended as it may make the system unstable."
},
"$:/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/ConfirmAction": {
"title": "$:/language/ConfirmAction",
"text": "Do you wish to proceed?"
},
"$:/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/FilterRunPrefix": {
"title": "$:/language/Error/FilterRunPrefix",
"text": "Filter Error: Unknown prefix for filter run"
},
"$:/language/Error/IsFilterOperator": {
"title": "$:/language/Error/IsFilterOperator",
"text": "Filter Error: Unknown operand for the 'is' filter operator"
},
"$:/language/Error/FormatFilterOperator": {
"title": "$:/language/Error/FormatFilterOperator",
"text": "Filter Error: Unknown suffix for the 'format' filter operator"
},
"$:/language/Error/LoadingPluginLibrary": {
"title": "$:/language/Error/LoadingPluginLibrary",
"text": "Error loading plugin library"
},
"$:/language/Error/NetworkErrorAlert": {
"title": "$:/language/Error/NetworkErrorAlert",
"text": "`<h2>''Network Error''</h2>It looks like the connection to the server has been lost. This may indicate a problem with your network connection. Please attempt to restore network connectivity before continuing.<br><br>''Any unsaved changes will be automatically synchronised when connectivity is restored''.`"
},
"$:/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/LayoutSwitcher/Description": {
"title": "$:/language/LayoutSwitcher/Description",
"text": "Open the layout switcher"
},
"$:/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/PageTemplate/Description": {
"title": "$:/language/PageTemplate/Description",
"text": "the default ~TiddlyWiki layout"
},
"$:/language/PageTemplate/Name": {
"title": "$:/language/PageTemplate/Name",
"text": "Default ~PageTemplate"
},
"$:/language/PluginReloadWarning": {
"title": "$:/language/PluginReloadWarning",
"text": "Please save {{$:/core/ui/Buttons/save-wiki}} and reload {{$:/core/ui/Buttons/refresh}} to allow changes to ~JavaScript plugins to take effect"
},
"$:/language/RecentChanges/DateFormat": {
"title": "$:/language/RecentChanges/DateFormat",
"text": "DDth MMM YYYY"
},
"$:/language/Shortcuts/Input/AdvancedSearch/Hint": {
"title": "$:/language/Shortcuts/Input/AdvancedSearch/Hint",
"text": "Open the ~AdvancedSearch panel from within the sidebar search field"
},
"$:/language/Shortcuts/Input/Accept/Hint": {
"title": "$:/language/Shortcuts/Input/Accept/Hint",
"text": "Accept the selected item"
},
"$:/language/Shortcuts/Input/AcceptVariant/Hint": {
"title": "$:/language/Shortcuts/Input/AcceptVariant/Hint",
"text": "Accept the selected item (variant)"
},
"$:/language/Shortcuts/Input/Cancel/Hint": {
"title": "$:/language/Shortcuts/Input/Cancel/Hint",
"text": "Clear the input field"
},
"$:/language/Shortcuts/Input/Down/Hint": {
"title": "$:/language/Shortcuts/Input/Down/Hint",
"text": "Select the next item"
},
"$:/language/Shortcuts/Input/Tab-Left/Hint": {
"title": "$:/language/Shortcuts/Input/Tab-Left/Hint",
"text": "Select the previous Tab"
},
"$:/language/Shortcuts/Input/Tab-Right/Hint": {
"title": "$:/language/Shortcuts/Input/Tab-Right/Hint",
"text": "Select the next Tab"
},
"$:/language/Shortcuts/Input/Up/Hint": {
"title": "$:/language/Shortcuts/Input/Up/Hint",
"text": "Select the previous item"
},
"$:/language/Shortcuts/SidebarLayout/Hint": {
"title": "$:/language/Shortcuts/SidebarLayout/Hint",
"text": "Change the sidebar layout"
},
"$:/language/Switcher/Subtitle/theme": {
"title": "$:/language/Switcher/Subtitle/theme",
"text": "Switch Theme"
},
"$:/language/Switcher/Subtitle/layout": {
"title": "$:/language/Switcher/Subtitle/layout",
"text": "Switch Layout"
},
"$:/language/Switcher/Subtitle/language": {
"title": "$:/language/Switcher/Subtitle/language",
"text": "Switch Language"
},
"$:/language/Switcher/Subtitle/palette": {
"title": "$:/language/Switcher/Subtitle/palette",
"text": "Switch Palette"
},
"$:/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/Icons/None": {
"title": "$:/language/TagManager/Icons/None",
"text": "None"
},
"$:/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\n"
},
"$:/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 to clipboard!"
},
"$:/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"
},
"$:/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": "Backlinks"
},
"$:/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\t// Parse named parameters if required\n\t\t\t\tif(command.info.namedParameterMode) {\n\t\t\t\t\tparams = this.extractNamedParameters(params,command.info.mandatoryParameters);\n\t\t\t\t\tif(typeof params === \"string\") {\n\t\t\t\t\t\treturn this.callback(params);\n\t\t\t\t\t}\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\n/*\nGiven an array of parameter strings `params` in name:value format, and an array of mandatory parameter names in `mandatoryParameters`, returns a hashmap of values or a string if error\n*/\nCommander.prototype.extractNamedParameters = function(params,mandatoryParameters) {\n\tmandatoryParameters = mandatoryParameters || [];\n\tvar errors = [],\n\t\tparamsByName = Object.create(null);\n\t// Extract the parameters\n\t$tw.utils.each(params,function(param) {\n\t\tvar index = param.indexOf(\"=\");\n\t\tif(index < 1) {\n\t\t\terrors.push(\"malformed named parameter: '\" + param + \"'\");\n\t\t}\n\t\tparamsByName[param.slice(0,index)] = $tw.utils.trim(param.slice(index+1));\n\t});\n\t// Check the mandatory parameters are present\n\t$tw.utils.each(mandatoryParameters,function(mandatoryParameter) {\n\t\tif(!$tw.utils.hop(paramsByName,mandatoryParameter)) {\n\t\t\terrors.push(\"missing mandatory parameter: '\" + mandatoryParameter + \"'\");\n\t\t}\n\t});\n\t// Return any errors\n\tif(errors.length > 0) {\n\t\treturn errors.join(\" and\\n\");\n\t} else {\n\t\treturn paramsByName;\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/deletetiddlers.js": {
"title": "$:/core/modules/commands/deletetiddlers.js",
"text": "/*\\\ntitle: $:/core/modules/commands/deletetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to delete tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"deletetiddlers\",\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 filter\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\twiki.deleteTiddler(title);\n\t});\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 = this.commander.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/listen.js": {
"title": "$:/core/modules/commands/listen.js",
"text": "/*\\\ntitle: $:/core/modules/commands/listen.js\ntype: application/javascript\nmodule-type: command\n\nListen for HTTP requests and serve tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"listen\",\n\tsynchronous: true,\n\tnamedParameterMode: true,\n\tmandatoryParameters: [],\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\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\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: self.params\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\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 && self.params[1] !== \"noerror\") {\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 = $tw.utils.getSubdirectories(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 = $tw.utils.getSubdirectories(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\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.pluginsPath,$tw.config.pluginsEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.themesPath,$tw.config.themesEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.languagesPath,$tw.config.languagesEnvVar),collectPlugins);\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})\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\tvariableList = this.params.slice(4),\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter),\n\t\tvariables = Object.create(null);\n\t\twhile(variableList.length >= 2) {\n\t\t\tvariables[variableList[0]] = variableList[1];\n\t\t\tvariableList = variableList.slice(2);\n\t\t}\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template || title);\n\t\tvar widgetNode = wiki.makeWidget(parser,{variables: $tw.utils.extend({},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\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> <tiddler-filter> <pathname> <skinnylisting>\n\nThe tiddler identifies the bundle tiddler that contains the subtiddlers.\n\nThe tiddler filter specifies the plugins to be included.\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),\"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\tdoesRequireReload = !!self.commander.wiki.doesPluginInfoRequireReload(pluginTiddlers),\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,{\n\t\t\ttext: undefined,\n\t\t\treadme: readmeContent,\n\t\t\t\"requires-reload\": doesRequireReload ? \"yes\" : \"no\",\n\t\t\ticon: iconContent\n\t\t}));\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/savewikifolder.js": {
"title": "$:/core/modules/commands/savewikifolder.js",
"text": "/*\\\ntitle: $:/core/modules/commands/savewikifolder.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the current wiki as a wiki folder\n\n--savewikifolder <wikifolderpath> [<filter>]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savewikifolder\",\n\tsynchronous: true\n};\n\nvar fs,path;\nif($tw.node) {\n\tfs = require(\"fs\");\n\tpath = require(\"path\");\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 wiki folder path\";\n\t}\n\tvar wikifoldermaker = new WikiFolderMaker(this.params[0],this.params[1],this.commander);\n\treturn wikifoldermaker.save();\n};\n\nfunction WikiFolderMaker(wikiFolderPath,wikiFilter,commander) {\n\tthis.wikiFolderPath = wikiFolderPath;\n\tthis.wikiFilter = wikiFilter || \"[all[tiddlers]]\";\n\tthis.commander = commander;\n\tthis.wiki = commander.wiki;\n\tthis.savedPaths = []; // So that we can detect filename clashes\n}\n\nWikiFolderMaker.prototype.log = function(str) {\n\tif(this.commander.verbose) {\n\t\tconsole.log(str);\n\t}\n};\n\nWikiFolderMaker.prototype.tiddlersToIgnore = [\n\t\"$:/boot/boot.css\",\n\t\"$:/boot/boot.js\",\n\t\"$:/boot/bootprefix.js\",\n\t\"$:/core\",\n\t\"$:/library/sjcl.js\",\n\t\"$:/temp/info-plugin\"\n];\n\n/*\nReturns null if successful, or an error string if there was an error\n*/\nWikiFolderMaker.prototype.save = function() {\n\tvar self = this;\n\t// Check that the output directory doesn't exist\n\tif(fs.existsSync(this.wikiFolderPath) && !$tw.utils.isDirectoryEmpty(this.wikiFolderPath)) {\n\t\treturn \"The unpackwiki command requires that the output wiki folder be empty\";\n\t}\n\t// Get the tiddlers from the source wiki\n\tvar tiddlerTitles = this.wiki.filterTiddlers(this.wikiFilter);\n\t// Initialise a new tiddlwiki.info file\n\tvar newWikiInfo = {};\n\t// Process each incoming tiddler in turn\n\t$tw.utils.each(tiddlerTitles,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tif(self.tiddlersToIgnore.indexOf(title) !== -1) {\n\t\t\t\t// Ignore the core plugin and the ephemeral info plugin\n\t\t\t\tself.log(\"Ignoring tiddler: \" + title);\n\t\t\t} else {\n\t\t\t\tvar type = tiddler.fields.type,\n\t\t\t\t\tpluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif(type === \"application/json\" && pluginType) {\n\t\t\t\t\t// Plugin tiddler\n\t\t\t\t\tvar libraryDetails = self.findPluginInLibrary(title);\n\t\t\t\t\tif(libraryDetails) {\n\t\t\t\t\t\t// A plugin from the core library\n\t\t\t\t\t\tself.log(\"Adding built-in plugin: \" + libraryDetails.name);\n\t\t\t\t\t\tnewWikiInfo[libraryDetails.type] = newWikiInfo[libraryDetails.type] || [];\n\t\t\t\t\t\t$tw.utils.pushTop(newWikiInfo[libraryDetails.type],libraryDetails.name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// A custom plugin\n\t\t\t\t\t\tself.log(\"Processing custom plugin: \" + title);\n\t\t\t\t\t\tself.saveCustomPlugin(tiddler);\n\t\t\t\t\t}\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\t// Ordinary tiddler\n\t\t\t\t\tself.saveTiddler(\"tiddlers\",tiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Save the tiddlywiki.info file\n\tthis.saveJSONFile(\"tiddlywiki.info\",newWikiInfo);\n\tself.log(\"Writing tiddlywiki.info: \" + JSON.stringify(newWikiInfo,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\n/*\nTest whether the specified tiddler is a plugin in the plugin library\n*/\nWikiFolderMaker.prototype.findPluginInLibrary = function(title) {\n\tvar parts = title.split(\"/\"),\n\t\tpluginPath, type, name;\n\tif(parts[0] === \"$:\") {\n\t\tif(parts[1] === \"languages\" && parts.length === 3) {\n\t\t\tpluginPath = \"languages\" + path.sep + parts[2];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2];\n\t\t} else if(parts[1] === \"plugins\" || parts[1] === \"themes\" && parts.length === 4) {\n\t\t\tpluginPath = parts[1] + path.sep + parts[2] + path.sep + parts[3];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2] + \"/\" + parts[3];\n\t\t}\n\t}\n\tif(pluginPath && type && name) {\n\t\tpluginPath = path.resolve($tw.boot.bootPath,\"..\",pluginPath);\n\t\tif(fs.existsSync(pluginPath)) {\n\t\t\treturn {\n\t\t\t\tpluginPath: pluginPath,\n\t\t\t\ttype: type,\n\t\t\t\tname: name\n\t\t\t};\n\t\t}\n\t}\n\treturn false;\n};\n\nWikiFolderMaker.prototype.saveCustomPlugin = function(pluginTiddler) {\n\tvar self = this,\n\t\tpluginTitle = pluginTiddler.fields.title,\n\t\ttitleParts = pluginTitle.split(\"/\"),\n\t\tdirectory = $tw.utils.generateTiddlerFilepath(titleParts[titleParts.length - 1],{\n\t\t\tdirectory: path.resolve(this.wikiFolderPath,pluginTiddler.fields[\"plugin-type\"] + \"s\")\n\t\t}),\n\t\tpluginInfo = pluginTiddler.getFieldStrings({exclude: [\"text\",\"type\"]});\n\tthis.saveJSONFile(directory + path.sep + \"plugin.info\",pluginInfo);\n\tself.log(\"Writing \" + directory + path.sep + \"plugin.info: \" + JSON.stringify(pluginInfo,null,$tw.config.preferences.jsonSpaces));\n\tvar pluginTiddlers = JSON.parse(pluginTiddler.fields.text).tiddlers; // A hashmap of tiddlers in the plugin\n\t$tw.utils.each(pluginTiddlers,function(tiddler) {\n\t\tself.saveTiddler(directory,new $tw.Tiddler(tiddler));\n\t});\n};\n\nWikiFolderMaker.prototype.saveTiddler = function(directory,tiddler) {\n\tvar title = tiddler.fields.title, fileInfo, pathFilters, extFilters;\n\tif(this.wiki.tiddlerExists(\"$:/config/FileSystemPaths\")) {\n\t\tpathFilters = this.wiki.getTiddlerText(\"$:/config/FileSystemPaths\",\"\").split(\"\\n\");\n\t}\n\tif(this.wiki.tiddlerExists(\"$:/config/FileSystemExtensions\")) {\n\t\textFilters = this.wiki.getTiddlerText(\"$:/config/FileSystemExtensions\",\"\").split(\"\\n\");\n\t}\n\tvar fileInfo = $tw.utils.generateTiddlerFileInfo(tiddler,{\n\t\tdirectory: path.resolve(this.wikiFolderPath,directory),\n\t\twiki: this.wiki,\n\t\tpathFilters: pathFilters,\n\t\textFilters: extFilters,\n\t\toriginalpath: this.wiki.extractTiddlerDataItem(\"$:/config/OriginalTiddlerPaths\",title, \"\")\n\t});\n\ttry {\n\t\t$tw.utils.saveTiddlerToFileSync(tiddler,fileInfo);\n\t} catch (err) {\n\t\tconsole.log(\"SaveWikiFolder: Error saving file '\" + fileInfo.filepath + \"', tiddler: '\" + tiddler.fields.title);\n\t}\n};\n\nWikiFolderMaker.prototype.saveJSONFile = function(filename,json) {\n\tthis.saveTextFile(filename,JSON.stringify(json,null,$tw.config.preferences.jsonSpaces));\n};\n\nWikiFolderMaker.prototype.saveTextFile = function(filename,data) {\n\tthis.saveFile(filename,\"utf8\",data);\n};\n\nWikiFolderMaker.prototype.saveFile = function(filename,encoding,data) {\n\tvar filepath = path.resolve(this.wikiFolderPath,filename);\n\t$tw.utils.createFileDirectories(filepath);\n\tfs.writeFileSync(filepath,data,encoding);\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\nDeprecated legacy command for serving tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"server\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\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\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: {\n\t\t\tport: this.params[0],\n\t\t\thost: this.params[6],\n\t\t\t\"root-tiddler\": this.params[1],\n\t\t\t\"root-render-type\": this.params[2],\n\t\t\t\"root-serve-type\": this.params[3],\n\t\t\tusername: this.params[4],\n\t\t\tpassword: this.params[5],\n\t\t\t\"path-prefix\": this.params[7],\n\t\t\t\"debug-level\": this.params[8]\n\t\t}\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\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\tif(this.widget.editTabIndex) {\n\t\tthis.iframeNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\n\t}\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\t{name: \"focus\",handlerObject: this,handlerMethod: \"handleFocusEvent\"}\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.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nFramedEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\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 focus event\n*/\nFramedEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\t\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\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\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\tif(this.widget.editTabIndex) {\n\t\tthis.domNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\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.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nSimpleEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\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\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\n\t}\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\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\t\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\") === \"yes\";\n\t\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\t\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\t\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\n\t\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\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) || \"input\";\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 || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || changedTiddlers[HEIGHT_MODE_TITLE] || changedTiddlers[ENABLE_TOOLBAR_TITLE] || changedAttributes.disabled) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t\t} else if (changedTiddlers[this.editRefreshTitle]) {\n\t\t\tthis.engine.updateDomNodeText(this.getEditInfo().value);\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);\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;\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\tvar targetCount = parseInt(event.paramObject.count + \"\",10);\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,targetCount);\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 !== targetCount) {\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/save-selection.js": {
"title": "$:/core/modules/editor/operations/text/save-selection.js",
"text": "/*\\\ntitle: $:/core/modules/editor/operations/text/save-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to save the current selection in a specified tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"save-selection\"] = function(event,operation) {\n\tvar tiddler = event.paramObject.tiddler,\n\t\tfield = event.paramObject.field || \"text\";\n\tif(tiddler && field) {\n\t\tthis.wiki.setText(tiddler,field,null,operation.text.substring(operation.selStart,operation.selEnd));\n\t}\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\n\t\t\toperation.cutStart = operation.selStart - event.paramObject.prefix.length;\n\t\t\toperation.cutEnd = operation.selEnd + event.paramObject.suffix.length;\n\t\t\toperation.replacement = \"\";\n\t\t\toperation.newSelStart = operation.cutStart;\n\t\t\toperation.newSelEnd = operation.newSelStart;\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/filterrunprefixes/all.js": {
"title": "$:/core/modules/filterrunprefixes/all.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/all.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nUnion of sets without de-duplication.\nEquivalent to = filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.all = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.push.apply(results, operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/and.js": {
"title": "$:/core/modules/filterrunprefixes/and.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/and.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nIntersection of sets.\nEquivalent to + filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.and = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\t// This replaces all the elements of the array, but keeps the actual array so that references to it are preserved\n\t\tsource = options.wiki.makeTiddlerIterator(results.toArray());\n\t\tresults.clear();\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/else.js": {
"title": "$:/core/modules/filterrunprefixes/else.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/else.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to ~ filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.else = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length === 0) {\n\t\t\t// Main result so far is empty\n\t\t\tresults.pushTop(operationSubFunction(source,widget));\n\t\t}\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/except.js": {
"title": "$:/core/modules/filterrunprefixes/except.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/except.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nDifference of sets.\nEquivalent to - filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.except = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.remove(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/filter.js": {
"title": "$:/core/modules/filterrunprefixes/filter.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/filter.js\ntype: application/javascript\nmodule-type: filterrunprefix\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.filter = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar resultsToRemove = [];\n\t\t\tresults.each(function(result) {\n\t\t\t\tvar filtered = operationSubFunction(options.wiki.makeTiddlerIterator([result]),widget);\n\t\t\t\tif(filtered.length === 0) {\n\t\t\t\t\tresultsToRemove.push(result);\n\t\t\t\t}\n\t\t\t});\n\t\t\tresults.remove(resultsToRemove);\n\t\t}\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/intersection.js": {
"title": "$:/core/modules/filterrunprefixes/intersection.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/intersection.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.intersection = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length !== 0) {\n\t\t\tvar secondRunResults = operationSubFunction(source,widget);\n\t\t\tvar firstRunResults = results.toArray();\n\t\t\tresults.clear();\n\t\t\t$tw.utils.each(firstRunResults,function(title) {\n\t\t\t\tif(secondRunResults.indexOf(title) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/or.js": {
"title": "$:/core/modules/filterrunprefixes/or.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/or.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to a filter run with no prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.or = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/core/modules/filterrunprefixes/reduce.js": {
"title": "$:/core/modules/filterrunprefixes/reduce.js",
"text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/reduce.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.reduce = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar accumulator = \"\";\n\t\t\tvar index = 0;\n\t\t\tresults.each(function(title) {\n\t\t\t\tvar list = operationSubFunction(options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\t\t\treturn \"\" + (results.length - 1 - index);\n\t\t\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn widget.getVariable(name);\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\tif(list.length > 0) {\n\t\t\t\t\taccumulator = \"\" + list[0];\n\t\t\t\t}\n\t\t\t\t++index;\n\t\t\t});\n\t\t\tresults.clear();\n\t\t\tresults.push(accumulator);\t\n\t\t}\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filterrunprefix"
},
"$:/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 = new $tw.utils.LinkedList(),\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\tresults.pushTop(subop(source,operator.prefix,options));\n\t\t}\n\t}\n\treturn results.toArray();\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/compare.js": {
"title": "$:/core/modules/filters/compare.js",
"text": "/*\\\ntitle: $:/core/modules/filters/compare.js\ntype: application/javascript\nmodule-type: filteroperator\n\nGeneral purpose comparison operator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.compare = function(source,operator,options) {\n\tvar suffixes = operator.suffixes || [],\n\t\ttype = (suffixes[0] || [])[0],\n\t\tmode = (suffixes[1] || [])[0],\n\t\ttypeFn = $tw.utils.makeCompareFunction(type,{defaultType: \"number\"}),\n\t\tmodeFn = modes[mode] || modes.eq,\n\t\tinvert = operator.prefix === \"!\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tif(modeFn(typeFn(title,operator.operand)) !== invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nvar modes = {\n\t\"eq\": function(value) {return value === 0;},\n\t\"ne\": function(value) {return value !== 0;},\n\t\"gteq\": function(value) {return value >= 0;},\n\t\"gt\": function(value) {return value > 0;},\n\t\"lteq\": function(value) {return value <= 0;},\n\t\"lt\": function(value) {return value < 0;}\n}\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/contains.js": {
"title": "$:/core/modules/filters/contains.js",
"text": "/*\\\ntitle: $:/core/modules/filters/contains.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for finding values in array fields\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.contains = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"list\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t} else {\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(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) !== -1) {\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/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/duplicateslugs.js": {
"title": "$:/core/modules/filters/duplicateslugs.js",
"text": "/*\\\ntitle: $:/core/modules/filters/duplicateslugs.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter function for [duplicateslugs[]]\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.duplicateslugs = function(source,operator,options) {\n\tvar slugs = Object.create(null), // Hashmap by slug of title, replaced with \"true\" if the duplicate title has already been output\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tvar slug = options.wiki.slugify(title);\n\t\tif(slug in slugs) {\n\t\t\tif(slugs[slug] !== true) {\n\t\t\t\tresults.push(slugs[slug]);\n\t\t\t\tslugs[slug] = true;\n\t\t\t}\n\t\t\tresults.push(title);\n\t\t} else {\n\t\t\tslugs[slug] = title;\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\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif($tw.utils.hop(editionInfo,title)) {\n\t\t\t\t\tresults.push(editionInfo[title].description || \"\");\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/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\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\t$tw.utils.each(editionInfo,function(info,name) {\n\t\t\t\tresults.push(name);\n\t\t\t});\n\t\t}\n\t\tresults.sort();\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/else.js": {
"title": "$:/core/modules/filters/else.js",
"text": "/*\\\ntitle: $:/core/modules/filters/else.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing an empty input list with a constant, passing a non-empty input list straight through\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.else = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tif(results.length === 0) {\n\t\treturn [operator.operand];\n\t} else {\n\t\treturn results;\n\t}\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\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURIComponent(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\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\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURI(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\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,(operator.suffix === \"rawunicode\")));\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,(operator.suffix === \"rawunicode\")));\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\nexports.escapecss = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t// escape any character with a special meaning in CSS using CSS.escape()\n\t\tresults.push(CSS.escape(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 allowDuplicates = false;\n\tswitch(operator.suffix) {\n\t\tcase \"raw\":\n\t\t\tallowDuplicates = true;\n\t\t\tbreak;\n\t\tcase \"dedupe\":\n\t\t\tallowDuplicates = false;\n\t\t\tbreak;\n\t}\n\tvar list = $tw.utils.parseStringArray(operator.operand,allowDuplicates);\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 = [],indexedResults,\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\tif(source.byField && operator.operand) {\n\t\t\t\tindexedResults = source.byField(fieldname,operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults\n\t\t\t\t}\n\t\t\t}\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\t\tfieldName,\n\t\tsuffixes = (operator.suffixes || [])[0] || [],\n\t\toperand = $tw.utils.parseStringArray(operator.operand);\n\t\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(suffixes.indexOf(\"include\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? $tw.utils.pushTop(results,fieldName) : \"\";\n\t\t\t\t}\n\t\t\t} else if (suffixes.indexOf(\"exclude\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? \"\" : $tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else if\n\t\t\telse {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else\n\t\t} // if (tiddler)\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/filter.js": {
"title": "$:/core/modules/filters/filter.js",
"text": "/*\\\ntitle: $:/core/modules/filters/filter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning those input titles that pass a subfilter\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.filter = function(source,operator,options) {\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\tresults = [],\n\t\ttarget = operator.prefix !== \"!\";\n\tsource(function(tiddler,title) {\n\t\tvar list = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]));\n\t\tif((list.length > 0) === target) {\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/format/date.js": {
"title": "$:/core/modules/filters/format/date.js",
"text": "/*\\\ntitle: $:/core/modules/filters/format/date.js\ntype: application/javascript\nmodule-type: formatfilteroperator\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.date = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.formatDateString(value,operand || \"YYYY MM DD 0hh:0mm\"));\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
"type": "application/javascript",
"module-type": "formatfilteroperator"
},
"$:/core/modules/filters/format/relativedate.js": {
"title": "$:/core/modules/filters/format/relativedate.js",
"text": "/*\\\ntitle: $:/core/modules/filters/format/relativedate.js\ntype: application/javascript\nmodule-type: formatfilteroperator\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.relativedate = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.getRelativeDate((new Date()) - (new Date(value))).description);\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
"type": "application/javascript",
"module-type": "formatfilteroperator"
},
"$:/core/modules/filters/format.js": {
"title": "$:/core/modules/filters/format.js",
"text": "/*\\\ntitle: $:/core/modules/filters/format.js\ntype: application/javascript\nmodule-type: filteroperator\nFilter operator for formatting strings\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar formatFilterOperators;\n\nfunction getFormatFilterOperators() {\n\tif(!formatFilterOperators) {\n\t\tformatFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"formatfilteroperator\",formatFilterOperators);\n\t}\n\treturn formatFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.format = function(source,operator,options) {\n\t// Dispatch to the correct formatfilteroperator\n\tvar formatFilterOperators = getFormatFilterOperators();\n\tif(operator.suffix) {\n\t\tvar formatFilterOperator = formatFilterOperators[operator.suffix];\n\t\tif(formatFilterOperator) {\n\t\t\treturn formatFilterOperator(source,operator.operand,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/FormatFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all unchanged if the suffix 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\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/getvariable.js": {
"title": "$:/core/modules/filters/getvariable.js",
"text": "/*\\\ntitle: $:/core/modules/filters/getvariable.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing input values by the value of the variable with the same name, or blank if the variable 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.getvariable = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.widget.getVariable(title) || \"\");\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 or index\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}\n\telse if(operator.suffix === \"index\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),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(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse {\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].length === 0)) {\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].length !== 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\t\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/binary.js": {
"title": "$:/core/modules/filters/is/binary.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/binary.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[binary]]\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.binary = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isBinaryTiddler(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.isBinaryTiddler(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/blank.js": {
"title": "$:/core/modules/filters/is/blank.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/blank.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[blank]]\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.blank = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(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(!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/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/draft.js": {
"title": "$:/core/modules/filters/is/draft.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/draft.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[draft]] analagous to [has[draft.of]]\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.draft = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,\"draft.of\")) {\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(tiddler && $tw.utils.hop(tiddler.fields,\"draft.of\") && (tiddler.fields[\"draft.of\"].length !== 0)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\t\t\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/variable.js": {
"title": "$:/core/modules/filters/is/variable.js",
"text": "/*\\\ntitle: $:/core/modules/filters/is/variable.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[variable]]\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.variable = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!(title in options.widget.variables)) {\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 in options.widget.variables) {\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\t// Dispatch to the correct isfilteroperator\n\tvar isFilterOperators = getIsFilterOperators();\n\tif(operator.operand) {\n\t\tvar isFilterOperator = isFilterOperators[operator.operand];\n\t\tif(isFilterOperator) {\n\t\t\treturn isFilterOperator(source,operator.prefix,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/IsFilterOperator\")];\n\t\t}\n\t} else {\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\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 = new $tw.utils.LinkedList();\n\tsource(function(tiddler,title) {\n\t\tresults.pushTop(options.wiki.getTiddlerLinks(title));\n\t});\n\treturn results.toArray();\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) || operator.suffix || '');\n\t});\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/match.js": {
"title": "$:/core/modules/filters/match.js",
"text": "/*\\\ntitle: $:/core/modules/filters/match.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title matches a string\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.match = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = (operator.suffixes || [])[0] || [];\n\tif(suffixes.indexOf(\"caseinsensitive\") !== -1) {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() !== (operator.operand || \"\").toLowerCase()) {\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(title.toLowerCase() === (operator.operand || \"\").toLowerCase()) {\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.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title !== 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(title === operator.operand) {\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/math.js": {
"title": "$:/core/modules/filters/math.js",
"text": "/*\\\ntitle: $:/core/modules/filters/math.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for math. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\nNote that strings are converted to numbers automatically. Trailing non-digits are ignored.\n\n* \"\" converts to 0\n* \"12kk\" converts to 12\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.negate = makeNumericBinaryOperator(\n\tfunction(a) {return -a}\n);\n\nexports.abs = makeNumericBinaryOperator(\n\tfunction(a) {return Math.abs(a)}\n);\n\nexports.ceil = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(a)}\n);\n\nexports.floor = makeNumericBinaryOperator(\n\tfunction(a) {return Math.floor(a)}\n);\n\nexports.round = makeNumericBinaryOperator(\n\tfunction(a) {return Math.round(a)}\n);\n\nexports.trunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.trunc(a)}\n);\n\nexports.untrunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(Math.abs(a)) * Math.sign(a)}\n);\n\nexports.sign = makeNumericBinaryOperator(\n\tfunction(a) {return Math.sign(a)}\n);\n\nexports.add = makeNumericBinaryOperator(\n\tfunction(a,b) {return a + b;}\n);\n\nexports.subtract = makeNumericBinaryOperator(\n\tfunction(a,b) {return a - b;}\n);\n\nexports.multiply = makeNumericBinaryOperator(\n\tfunction(a,b) {return a * b;}\n);\n\nexports.divide = makeNumericBinaryOperator(\n\tfunction(a,b) {return a / b;}\n);\n\nexports.remainder = makeNumericBinaryOperator(\n\tfunction(a,b) {return a % b;}\n);\n\nexports.max = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.max(a,b);}\n);\n\nexports.min = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.min(a,b);}\n);\n\nexports.fixed = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toFixed.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.precision = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toPrecision.call(a,Math.min(Math.max(b,1),100));}\n);\n\nexports.exponential = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toExponential.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.power = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.pow(a,b);}\n);\n\nexports.log = makeNumericBinaryOperator(\n\tfunction(a,b) {\n\t\tif(b) {\n\t\t\treturn Math.log(a)/Math.log(b);\n\t\t} else {\n\t\t\treturn Math.log(a);\n\t\t}\n\t}\n);\n\nexports.sum = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator + value},\n\t0 // Initial value\n);\n\nexports.product = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator * value},\n\t1 // Initial value\n);\n\nexports.maxall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.max(accumulator,value)},\n\t-Infinity // Initial value\n);\n\nexports.minall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.min(accumulator,value)},\n\tInfinity // Initial value\n);\n\nfunction makeNumericBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [],\n\t\t\tnumOperand = $tw.utils.parseNumber(operator.operand);\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push($tw.utils.stringifyNumber(fnCalc($tw.utils.parseNumber(title),numOperand)));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeNumericReducingOperator(fnCalc,initialValue) {\n\tinitialValue = initialValue || 0;\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\treturn [$tw.utils.stringifyNumber(result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,$tw.utils.parseNumber(currentValue));\n\t\t},initialValue))];\n\t};\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/range.js": {
"title": "$:/core/modules/filters/range.js",
"text": "/*\\\ntitle: $:/core/modules/filters/range.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for generating a numeric range.\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.range = function(source,operator,options) {\n\tvar results = [];\n\t// Split the operand into numbers delimited by these symbols\n\tvar parts = operator.operand.split(/[,:;]/g),\n\t\tbeg, end, inc, i, fixed = 0;\n\tfor (i=0; i<parts.length; i++) {\n\t\t// Validate real number\n\t\tif(!/^\\s*[+-]?((\\d+(\\.\\d*)?)|(\\.\\d+))\\s*$/.test(parts[i])) {\n\t\t\treturn [\"range: bad number \\\"\" + parts[i] + \"\\\"\"];\n\t\t}\n\t\t// Count digits; the most precise number determines decimal places in output.\n\t\tvar frac = /\\.\\d+/.exec(parts[i]);\n\t\tif(frac) {\n\t\t\tfixed = Math.max(fixed,frac[0].length-1);\n\t\t}\n\t\tparts[i] = parseFloat(parts[i]);\n\t}\n\tswitch(parts.length) {\n\t\tcase 1:\n\t\t\tend = parts[0];\n\t\t\tif (end >= 1) {\n\t\t\t\tbeg = 1;\n\t\t\t}\n\t\t\telse if (end <= -1) {\n\t\t\t\tbeg = -1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = Math.abs(parts[2]);\n\t\t\tbreak;\n\t}\n\tif(inc === 0) {\n\t\treturn [\"range: increment 0 causes infinite loop\"];\n\t}\n\t// May need to count backwards\n\tvar direction = ((end < beg) ? -1 : 1);\n\tinc *= direction;\n\t// Estimate number of resulting elements\n\tif((end - beg) / inc > 10000) {\n\t\treturn [\"range: too many steps (over 10K)\"];\n\t}\n\t// Avoid rounding error on last step\n\tend += direction * 0.5 * Math.pow(0.1,fixed);\n\tvar safety = 10010;\n\t// Enumerate the range\n\tif (end<beg) {\n\t\tfor(i=beg; i>end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tfor(i=beg; i<end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tif(safety<0) {\n\t\treturn [\"range: unexpectedly large output\"];\n\t}\n\t// Reverse?\n\tif(operator.prefix === \"!\") {\n\t\tresults.reverse();\n\t}\n\treturn results;\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "filteroperator"
},
"$:/core/modules/filters/reduce.js": {
"title": "$:/core/modules/filters/reduce.js",
"text": "/*\\\ntitle: $:/core/modules/filters/reduce.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator evaluates a subfilter for each item, making the running total available in the variable `accumulator`, and the current index available in the variable `index`\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.reduce = function(source,operator,options) {\n\t// Accumulate the list\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Run the filter over each item\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\taccumulator = operator.operands[1] || \"\";\n\tfor(var index=0; index<results.length; index++) {\n\t\tvar title = results[index],\n\t\t\tlist = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\treturn \"\" + (results.length - 1 - index);\n\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\tif(list.length > 0) {\n\t\t\taccumulator = \"\" + list[0];\n\t\t}\n\t}\n\tif(results.length > 0) {\n\t\treturn [accumulator];\n\t} else {\n\t\treturn [];\n\t}\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 && 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.suffixes) {\n\t\tvar hasFlag = function(flag) {\n\t\t\t\treturn (operator.suffixes[1] || []).indexOf(flag) !== -1;\n\t\t\t},\n\t\t\texcludeFields = false,\n\t\t\tfieldList = operator.suffixes[0] || [],\n\t\t\tfirstField = fieldList[0] || \"\", \n\t\t\tfirstChar = firstField.charAt(0),\n\t\t\tfields;\n\t\tif(firstChar === \"-\") {\n\t\t\tfields = [firstField.slice(1)].concat(fieldList.slice(1));\n\t\t\texcludeFields = true;\n\t\t} else if(fieldList[0] === \"*\"){\n\t\t\tfields = [];\n\t\t\texcludeFields = true;\n\t\t} else {\n\t\t\tfields = fieldList.slice(0);\n\t\t}\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert,\n\t\t\tfield: fields,\n\t\t\texcludeField: excludeFields,\n\t\t\tcaseSensitive: hasFlag(\"casesensitive\"),\n\t\t\tliteral: hasFlag(\"literal\"),\n\t\t\twhitespace: hasFlag(\"whitespace\"),\n\t\t\tanchored: hasFlag(\"anchored\"),\n\t\t\tregexp: hasFlag(\"regexp\"),\n\t\t\twords: hasFlag(\"words\")\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/slugify.js": {
"title": "$:/core/modules/filters/slugify.js",
"text": "/*\\\ntitle: $:/core/modules/filters/slugify.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for slugifying a tiddler title\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.slugify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.slugify(title));\n\t});\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/sortsub.js": {
"title": "$:/core/modules/filters/sortsub.js",
"text": "/*\\\ntitle: $:/core/modules/filters/sortsub.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting by a subfilter\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.sortsub = function(source,operator,options) {\n\t// Compile the subfilter\n\tvar filterFn = options.wiki.compileFilter(operator.operand);\n\t// Collect the input titles and the corresponding sort keys\n\tvar inputTitles = [],\n\t\tsortKeys = [];\n\tsource(function(tiddler,title) {\n\t\tinputTitles.push(title);\n\t\tvar r = filterFn.call(options.wiki,function(iterator) {\n\t\t\titerator(options.wiki.getTiddler(title),title);\n\t\t},{\n\t\t\tgetVariable: function(name) {\n\t\t\t\tif(name === \"currentTiddler\") {\n\t\t\t\t\treturn title;\n\t\t\t\t} else {\n\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tsortKeys.push(r[0] || \"\");\n\t});\n\t// Rather than sorting the titles array, we'll sort the indexes so that we can consult both arrays\n\tvar indexes = new Array(inputTitles.length);\n\tfor(var t=0; t<inputTitles.length; t++) {\n\t\tindexes[t] = t;\n\t}\n\t// Sort the indexes\n\tvar compareFn = $tw.utils.makeCompareFunction(operator.suffix,{defaultType: \"string\",invert: operator.prefix === \"!\"});\n\tindexes = indexes.sort(function(a,b) {\n\t\treturn compareFn(sortKeys[a],sortKeys[b]);\n\t});\n\t// Make the results array in order\n\tvar results = [];\n\t$tw.utils.each(indexes,function(index) {\n\t\tresults.push(inputTitles[index]);\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/strings.js": {
"title": "$:/core/modules/filters/strings.js",
"text": "/*\\\ntitle: $:/core/modules/filters/strings.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for strings. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.length = makeStringBinaryOperator(\n\tfunction(a) {return [\"\" + (\"\" + a).length];}\n);\n\nexports.uppercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toUpperCase()];}\n);\n\nexports.lowercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toLowerCase()];}\n);\n\nexports.sentencecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toSentenceCase(a)];}\n);\n\nexports.titlecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toTitleCase(a)];}\n);\n\nexports.trim = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\toperand = (operator.operand || \"\"),\n\t\tfnCalc;\n\tif(suffix === \"prefix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimPrefix(a,b)];}\n\t} else if(suffix === \"suffix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix(a,b)];}\n\t} else {\n\t\tif(operand === \"\") {\n\t\t\tfnCalc = function(a) {return [$tw.utils.trim(a)];}\n\t\t} else {\n\t\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix($tw.utils.trimPrefix(a,b),b)];}\n\t\t}\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,fnCalc(title,operand));\n\t});\n\treturn result;\n};\n\nexports.split = makeStringBinaryOperator(\n\tfunction(a,b) {return (\"\" + a).split(b);}\n);\n\nexports[\"enlist-input\"] = makeStringBinaryOperator(\n\tfunction(a,o,s) {return $tw.utils.parseStringArray(\"\" + a,(s === \"raw\"));}\n);\n\nexports.join = makeStringReducingOperator(\n\tfunction(accumulator,value,operand) {\n\t\tif(accumulator === null) {\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn accumulator + operand + value;\n\t\t}\n\t},null\n);\n\nfunction makeStringBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tArray.prototype.push.apply(result,fnCalc(title,operator.operand || \"\",operator.suffix || \"\"));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeStringReducingOperator(fnCalc,initialValue) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\tif(result.length === 0) {\n\t\t\treturn [];\n\t\t}\n\t\treturn [result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,currentValue,operator.operand || \"\");\n\t\t},initialValue) || \"\"];\n\t};\n}\n\nexports.splitregexp = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\tflags = (suffix.indexOf(\"m\") !== -1 ? \"m\" : \"\") + (suffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tregExp;\n\ttry {\n\t\tregExp = new RegExp(operator.operand || \"\",flags);\t\t\n\t} catch(ex) {\n\t\treturn [\"RegExp error: \" + ex];\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,title.split(regExp));\n\t});\t\t\n\treturn result;\n};\n\nexports[\"search-replace\"] = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = operator.suffixes || [],\n\t\tflagSuffix = (suffixes[0] ? (suffixes[0][0] || \"\") : \"\"),\n\t\tflags = (flagSuffix.indexOf(\"g\") !== -1 ? \"g\" : \"\") + (flagSuffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tisRegExp = (suffixes[1] && suffixes[1][0] === \"regexp\") ? true : false,\n\t\tsearchTerm,\n\t\tregExp;\n\t\n\tsource(function(tiddler,title) {\n\t\tif(title && (operator.operands.length > 1)) {\n\t\t\t//Escape regexp characters if the operand is not a regular expression\n\t\t\tsearchTerm = isRegExp ? operator.operand : $tw.utils.escapeRegExp(operator.operand);\n\t\t\ttry {\n\t\t\t\tregExp = new RegExp(searchTerm,flags);\n\t\t\t} catch(ex) {\n\t\t\t\treturn [\"RegExp error: \" + ex];\n\t\t\t}\n\t\t\tresults.push(\n\t\t\t\ttitle.replace(regExp,operator.operands[1])\n\t\t\t);\n\t\t} else {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.pad = function(source,operator,options) {\n\tvar results = [],\n\t\ttargetLength = operator.operand ? parseInt(operator.operand) : 0,\n\t\tfill = operator.operands[1] || \"0\";\n\n\tsource(function(tiddler,title) {\n\t\tif(title && title.length) {\n\t\t\tif(title.length >= targetLength) {\n\t\t\t\tresults.push(title);\n\t\t\t} else {\n\t\t\t\tvar padString = \"\",\n\t\t\t\t\tpadStringLength = targetLength - title.length;\n\t\t\t\twhile (padStringLength > padString.length) {\n\t\t\t\t\tpadString += fill;\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t//make sure we do not exceed the specified length\n\t\t\t\tpadString = padString.slice(0,padStringLength);\n\t\t\t\tif(operator.suffix && (operator.suffix === \"suffix\")) {\n\t\t\t\t\ttitle = title + padString;\n\t\t\t\t} else {\n\t\t\t\t\ttitle = padString + title;\n\t\t\t\t}\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/subfilter.js": {
"title": "$:/core/modules/filters/subfilter.js",
"text": "/*\\\ntitle: $:/core/modules/filters/subfilter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand evaluated as a filter\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.subfilter = function(source,operator,options) {\n\tvar list = options.wiki.filterTiddlers(operator.operand,options.widget,source);\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/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 = [],indexedResults;\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;\n\t\tif(operator.prefix === \"!\") {\n\t\t\t// Returns a copy of the input if operator.operand is missing\n\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\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\tif(source.byTag) {\n\t\t\t\tindexedResults = source.byTag(operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\t\tsource(function(tiddler,title) {\n\t\t\t\t\tif(tiddlers.indexOf(title) !== -1) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tresults = options.wiki.sortByList(results,operator.operand);\n\t\t\t}\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/then.js": {
"title": "$:/core/modules/filters/then.js",
"text": "/*\\\ntitle: $:/core/modules/filters/then.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing any titles with a constant\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.then = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand);\n\t});\n\treturn results;\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/variables.js": {
"title": "$:/core/modules/filters/variables.js",
"text": "/*\\\ntitle: $:/core/modules/filters/variables.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the active variables\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.variables = function(source,operator,options) {\n\tvar names = [];\n\tfor(var variable in options.widget.variables) {\n\t\tnames.push(variable);\n\t}\n\treturn names.sort();\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\t/*jslint node: true, browser: true */\n\t/*global $tw: false */\n\t\"use strict\";\n\n\t/*\n\tFetch titles from the current list\n\t*/\n\tvar prepare_results = function (source) {\n\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/*\n\tMoves a number of items from the tail of the current list before the item named in the operand\n\t*/\n\texports.putbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list after the item named in the operand\n\t*/\n\texports.putafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index + 1).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tReplaces the item named in the operand with a number of items from the tail of the current list\n\t*/\n\texports.replace = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -count) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list to the head of the list\n\t*/\n\texports.putfirst = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(-count).concat(results.slice(0, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the head of the current list to the tail of the list\n\t*/\n\texports.putlast = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(count).concat(results.slice(0, count));\n\t};\n\n\t/*\n\tMoves the item named in the operand a number of places forward or backward in the list\n\t*/\n\texports.move = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1),\n\t\t\tmarker = results.splice(index, 1),\n\t\t\toffset = (index + count) > 0 ? index + count : 0;\n\t\treturn results.slice(0, offset).concat(marker).concat(results.slice(offset));\n\t};\n\n\t/*\n\tReturns the items from the current list that are after the item named in the operand\n\t*/\n\texports.allafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(index) :\n\t\t\tresults.slice(index + 1);\n\t};\n\n\t/*\n\tReturns the items from the current list that are before the item named in the operand\n\t*/\n\texports.allbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(0, index + 1) :\n\t\t\tresults.slice(0, index);\n\t};\n\n\t/*\n\tAppends the items listed in the operand array to the tail of the current list\n\t*/\n\texports.append = function (source, operator) {\n\t\tvar append = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || append.length;\n\t\treturn (append.length === 0) ? results :\n\t\t\t(operator.prefix) ? results.concat(append.slice(-count)) :\n\t\t\tresults.concat(append.slice(0, count));\n\t};\n\n\t/*\n\tPrepends the items listed in the operand array to the head of the current list\n\t*/\n\texports.prepend = function (source, operator) {\n\t\tvar prepend = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,prepend.length);\n\t\treturn (prepend.length === 0) ? results :\n\t\t\t(operator.prefix) ? prepend.slice(-count).concat(results) :\n\t\t\tprepend.slice(0, count).concat(results);\n\t};\n\n\t/*\n\tReturns all items from the current list except the items listed in the operand array\n\t*/\n\texports.remove = function (source, operator) {\n\t\tvar array = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || array.length,\n\t\t\tp,\n\t\t\tlen,\n\t\t\tindex;\n\t\tlen = array.length - 1;\n\t\tfor (p = 0; p < count; ++p) {\n\t\t\tif (operator.prefix) {\n\t\t\t\tindex = results.indexOf(array[len - p]);\n\t\t\t} else {\n\t\t\t\tindex = results.indexOf(array[p]);\n\t\t\t}\n\t\t\tif (index !== -1) {\n\t\t\t\tresults.splice(index, 1);\n\t\t\t}\n\t\t}\n\t\treturn results;\n\t};\n\n\t/*\n\tReturns all items from the current list sorted in the order of the items in the operand array\n\t*/\n\texports.sortby = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tif (!results || results.length < 2) {\n\t\t\treturn results;\n\t\t}\n\t\tvar lookup = $tw.utils.parseStringArray(operator.operand, \"true\");\n\t\tresults.sort(function (a, b) {\n\t\t\treturn lookup.indexOf(a) - lookup.indexOf(b);\n\t\t});\n\t\treturn results;\n\t};\n\n\t/*\n\tRemoves all duplicate items from the current list\n\t*/\n\texports.unique = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tvar set = results.reduce(function (a, b) {\n\t\t\tif (a.indexOf(b) < 0) {\n\t\t\t\ta.push(b);\n\t\t\t}\n\t\t\treturn a;\n\t\t}, []);\n\t\treturn set;\n\t};\n\n\tvar cycleValueInArray = function(results,operands,stepSize) {\n\t\tvar resultsIndex,\n\t\t\tstep = stepSize || 1,\n\t\t\ti = 0,\n\t\t\topLength = operands.length,\n\t\t\tnextOperandIndex;\t\t\n\t\tfor(i; i < opLength; i++) {\n\t\t\tresultsIndex = results.indexOf(operands[i]);\n\t\t\tif(resultsIndex !== -1) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif(resultsIndex !== -1) {\n\t\t\ti = i + step;\n\t\t\tnextOperandIndex = (i < opLength ? i : i - opLength);\n\t\t\tif(operands.length > 1) {\n\t\t\t\tresults.splice(resultsIndex,1,operands[nextOperandIndex]);\n\t\t\t} else {\n\t\t\t\tresults.splice(resultsIndex,1);\n\t\t\t}\n\t\t} else {\n\t\t\tresults.push(operands[0]);\n\t\t}\n\t\treturn results;\t\t\n\t}\n\n\t/*\n\tToggles an item in the current list.\n\t*/\t\n\texports.toggle = function(source,operator) {\n\t\treturn cycleValueInArray(prepare_results(source),operator.operands);\n\t}\n\n\texports.cycle = function(source,operator) {\n\t\tvar results = prepare_results(source),\n\t\t\toperands = (operator.operand.length ? $tw.utils.parseStringArray(operator.operand, \"true\") : [\"\"]),\n\t\t\tstep = $tw.utils.getInt(operator.operands[1]||\"\",1);\n\t\tif(step < 0) {\n\t\t\toperands.reverse();\n\t\t\tstep = Math.abs(step);\n\t\t}\t\n\t\treturn cycleValueInArray(results,operands,step);\n\t}\n\t\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\t\t// Any suffix?\n\t\tvar colon = operator.operator.indexOf(':');\n\t\tif(colon > -1) {\n\t\t\t// The raw suffix for older filters\n\t\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t\t\t// The processed suffix for newer filters\n\t\t\toperator.suffixes = [];\n\t\t\t$tw.utils.each(operator.suffix.split(\":\"),function(subsuffix) {\n\t\t\t\toperator.suffixes.push([]);\n\t\t\t\t$tw.utils.each(subsuffix.split(\",\"),function(entry) {\n\t\t\t\t\tentry = $tw.utils.trim(entry);\n\t\t\t\t\tif(entry) {\n\t\t\t\t\t\toperator.suffixes[operator.suffixes.length - 1].push(entry); \n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\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\t\toperator.operands = [];\n\t\tvar parseOperand = function(bracketType) {\n\t\t\tvar operand = {};\n\t\t\tswitch (bracketType) {\n\t\t\t\tcase \"{\": // Curly brackets\n\t\t\t\t\toperand.indirect = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"[\": // Square brackets\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"<\": // Angle brackets\n\t\t\t\t\toperand.variable = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"/\": // regexp brackets\n\t\t\t\t\tvar rex = /^((?:[^\\\\\\/]|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\t\tif(rexMatch) {\n\t\t\t\t\t\toperator.regexp = new RegExp(rexMatch[1], rexMatch[2]);\n\t// DEPRECATION WARNING\n\tconsole.log(\"WARNING: Filter\",operator.operator,\"has a deprecated regexp operand\",operator.regexp);\n\t\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow \"Unterminated regular expression in filter expression\";\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif(nextBracketPos === -1) {\n\t\t\t\tthrow \"Missing closing bracket in filter expression\";\n\t\t\t}\n\t\t\tif(!operator.regexp) {\n\t\t\t\toperand.text = filterString.substring(p,nextBracketPos);\n\t\t\t\toperator.operands.push(operand);\n\t\t\t}\n\t\t\tp = nextBracketPos + 1;\n\t\t}\n\t\t\n\t\tp = nextBracketPos + 1;\n\t\tparseOperand(bracket);\n\t\t\n\t\t// Check for multiple operands\n\t\twhile(filterString.charAt(p) === \",\") {\n\t\t\tp++;\n\t\t\tif(/^[\\[\\{<\\/]/.test(filterString.substring(p))) {\n\t\t\t\tnextBracketPos = p;\n\t\t\t\tp++;\n\t\t\t\tparseOperand(filterString.charAt(nextBracketPos));\n\t\t\t} else {\n\t\t\t\tthrow \"Missing [ in filter expression\";\n\t\t\t}\n\t\t}\n\t\t\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 = /((?:\\+|\\-|~|=|\\:(\\w+))?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\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 = p + operation.prefix.length;\n\t\t\t\tif(match[2]) {\n\t\t\t\t\toperation.namedPrefix = match[2];\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(match[3]) { // 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[4] || match[5] || match[6]) { // Double quoted string, single quoted string or unquoted title\n\t\t\t\toperation.operators.push(\n\t\t\t\t\t{operator: \"title\", operands: [{text: match[4] || match[5] || match[6]}]}\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.getFilterRunPrefixes = function() {\n\tif(!this.filterRunPrefixes) {\n\t\t$tw.Wiki.prototype.filterRunPrefixes = {};\n\t\t$tw.modules.applyMethods(\"filterrunprefix\",this.filterRunPrefixes);\n\t}\n\treturn this.filterRunPrefixes;\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 operands = [],\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\t\n\t\t\t\t$tw.utils.each(operator.operands,function(operand) {\n\t\t\t\t\tif(operand.indirect) {\n\t\t\t\t\t\toperand.value = self.getTextReference(operand.text,\"\",currTiddlerTitle);\n\t\t\t\t\t} else if(operand.variable) {\n\t\t\t\t\t\toperand.value = widget.getVariable(operand.text,{defaultValue: \"\"});\n\t\t\t\t\t} else {\n\t\t\t\t\t\toperand.value = operand.text;\n\t\t\t\t\t}\n\t\t\t\t\toperands.push(operand.value);\n\t\t\t\t});\n\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: operands.length > 0 ? operands[0] : undefined,\n\t\t\t\t\t\t\toperands: operands,\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\tsuffixes: operator.suffixes,\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\tvar filterRunPrefixes = self.getFilterRunPrefixes();\n\t\t// Wrap the operator functions in a wrapper function that depends on the prefix\n\t\toperationFunctions.push((function() {\n\t\t\tvar options = {wiki: self};\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 filterRunPrefixes[\"or\"](operationSubFunction, options);\n\t\t\t\tcase \"=\": // The results of the operation are pushed into the result without deduplication\n\t\t\t\t\treturn filterRunPrefixes[\"all\"](operationSubFunction, options);\n\t\t\t\tcase \"-\": // The results of this operation are removed from the main result\n\t\t\t\t\treturn filterRunPrefixes[\"except\"](operationSubFunction, options);\n\t\t\t\tcase \"+\": // This operation is applied to the main results so far\n\t\t\t\t\treturn filterRunPrefixes[\"and\"](operationSubFunction, options);\n\t\t\t\tcase \"~\": // This operation is unioned into the result only if the main result so far is empty\n\t\t\t\t\treturn filterRunPrefixes[\"else\"](operationSubFunction, options);\n\t\t\t\tdefault: \n\t\t\t\t\tif(operation.namedPrefix && filterRunPrefixes[operation.namedPrefix]) {\n\t\t\t\t\t\treturn filterRunPrefixes[operation.namedPrefix](operationSubFunction, options);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t\tresults.clear();\n\t\t\t\t\t\t\tresults.push($tw.language.getString(\"Error/FilterRunPrefix\"));\n\t\t\t\t\t\t};\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: \" + filterString,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 = new $tw.utils.LinkedList();\n\t\t$tw.utils.each(operationFunctions,function(operationFunction) {\n\t\t\toperationFunction(results,source,widget);\n\t\t});\n\t\treturn results.toArray();\n\t});\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "wikimethod"
},
"$:/core/modules/indexers/backlinks-indexer.js": {
"title": "$:/core/modules/indexers/backlinks-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/backlinks-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers' backlinks\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\n\nfunction BacklinksIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nBacklinksIndexer.prototype.init = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype._getLinks = function(tiddler) {\n\tvar parser = this.wiki.parseText(tiddler.fields.type, tiddler.fields.text, {});\n\tif(parser) {\n\t\treturn this.wiki.extractLinks(parser.tree);\n\t}\n\treturn [];\n}\n\nBacklinksIndexer.prototype.update = function(updateDescriptor) {\n\tif(!this.index) {\n\t\treturn;\n\t}\n\tvar newLinks = [],\n\t oldLinks = [],\n\t self = this;\n\tif(updateDescriptor.old.exists) {\n\t\toldLinks = this._getLinks(updateDescriptor.old.tiddler);\n\t}\n\tif(updateDescriptor.new.exists) {\n\t\tnewLinks = this._getLinks(updateDescriptor.new.tiddler);\n\t}\n\n\t$tw.utils.each(oldLinks,function(link) {\n\t\tif(self.index[link]) {\n\t\t\tdelete self.index[link][updateDescriptor.old.tiddler.fields.title];\n\t\t}\n\t});\n\t$tw.utils.each(newLinks,function(link) {\n\t\tif(!self.index[link]) {\n\t\t\tself.index[link] = Object.create(null);\n\t\t}\n\t\tself.index[link][updateDescriptor.new.tiddler.fields.title] = true;\n\t});\n}\n\nBacklinksIndexer.prototype.lookup = function(title) {\n\tif(!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tvar self = this;\n\t\tthis.wiki.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self._getLinks(tiddler);\n\t\t\t$tw.utils.each(links, function(link) {\n\t\t\t\tif(!self.index[link]) {\n\t\t\t\t\tself.index[link] = Object.create(null);\n\t\t\t\t}\n\t\t\t\tself.index[link][title] = true;\n\t\t\t});\n\t\t});\n\t}\n\tif(this.index[title]) {\n\t\treturn Object.keys(this.index[title]);\n\t} else {\n\t\treturn [];\n\t}\n}\n\nexports.BacklinksIndexer = BacklinksIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/core/modules/indexers/field-indexer.js": {
"title": "$:/core/modules/indexers/field-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/field-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nvar DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH = 128;\n\nfunction FieldIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nFieldIndexer.prototype.init = function() {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH;\n\tthis.addIndexMethods();\n}\n\n// Provided for testing\nFieldIndexer.prototype.setMaxIndexedValueLength = function(length) {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = length;\n};\n\nFieldIndexer.prototype.addIndexMethods = function() {\n\tvar self = this;\n\tthis.wiki.each.byField = function(name,value) {\n\t\tvar titles = self.wiki.allTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachShadow.byField = function(name,value) {\n\t\tvar titles = self.wiki.allShadowTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachTiddlerPlusShadows.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n\tthis.wiki.eachShadowPlusTiddlers.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n};\n\n/*\nTear down and then rebuild the index as if all tiddlers have changed\n*/\nFieldIndexer.prototype.rebuild = function() {\n\t// Invalidate the index so that it will be rebuilt when it is next used\n\tthis.index = null;\n};\n\n/*\nBuild the index for a particular field\n*/\nFieldIndexer.prototype.buildIndexForField = function(name) {\n\tvar self = this;\n\t// Hashmap by field name of hashmap by field value of array of tiddler titles\n\tthis.index = this.index || Object.create(null);\n\tthis.index[name] = Object.create(null);\n\tvar baseIndex = this.index[name];\n\t// Update the index for each tiddler\n\tthis.wiki.eachTiddlerPlusShadows(function(tiddler,title) {\n\t\tif(name in tiddler.fields) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\t// Skip any values above the maximum length\n\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\tbaseIndex[value] = baseIndex[value] || [];\n\t\t\t\tbaseIndex[value].push(title);\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nUpdate the index in the light of a tiddler value changing; note that the title must be identical. (Renames are handled as a separate delete and create)\nupdateDescriptor: {old: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>},new: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>}}\n*/\nFieldIndexer.prototype.update = function(updateDescriptor) {\n\tvar self = this;\n\t// Don't do anything if the index hasn't been built yet\n\tif(this.index === null) {\n\t\treturn;\n\t}\n\t// Remove the old tiddler from the index\n\tif(updateDescriptor.old.tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor.old.tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor.old.tiddler.getFieldString(name),\n\t\t\t\t\ttiddlerList = indexEntry[value];\n\t\t\t\tif(tiddlerList) {\n\t\t\t\t\tvar index = tiddlerList.indexOf(updateDescriptor.old.tiddler.fields.title);\n\t\t\t\t\tif(index !== -1) {\n\t\t\t\t\t\ttiddlerList.splice(index,1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t// Add the new tiddler to the index\n\tif(updateDescriptor[\"new\"].tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor[\"new\"].tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor[\"new\"].tiddler.getFieldString(name);\n\t\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\t\tindexEntry[value] = indexEntry[value] || [];\n\t\t\t\t\tindexEntry[value].push(updateDescriptor[\"new\"].tiddler.fields.title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n// Lookup the given field returning a list of tiddler titles\nFieldIndexer.prototype.lookup = function(name,value) {\n\t// Fail the lookup if the value is too long\n\tif(value.length >= this.maxIndexedValueLength) {\n\t\treturn null;\n\t}\n\t// Update the index if it has yet to be built\n\tif(this.index === null || !this.index[name]) {\n\t\tthis.buildIndexForField(name);\n\t}\n\treturn this.index[name][value] || [];\n};\n\nexports.FieldIndexer = FieldIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/core/modules/indexers/tag-indexer.js": {
"title": "$:/core/modules/indexers/tag-indexer.js",
"text": "/*\\\ntitle: $:/core/modules/indexers/tag-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nfunction TagIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nTagIndexer.prototype.init = function() {\n\tthis.subIndexers = [\n\t\tnew TagSubIndexer(this,\"each\"),\n\t\tnew TagSubIndexer(this,\"eachShadow\"),\n\t\tnew TagSubIndexer(this,\"eachTiddlerPlusShadows\"),\n\t\tnew TagSubIndexer(this,\"eachShadowPlusTiddlers\")\n\t];\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.addIndexMethod();\n\t});\n};\n\nTagIndexer.prototype.rebuild = function() {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.rebuild();\n\t});\n};\n\nTagIndexer.prototype.update = function(updateDescriptor) {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.update(updateDescriptor);\n\t});\n};\n\nfunction TagSubIndexer(indexer,iteratorMethod) {\n\tthis.indexer = indexer;\n\tthis.iteratorMethod = iteratorMethod;\n\tthis.index = null; // Hashmap of tag title to {isSorted: bool, titles: [array]} or null if not yet initialised\n}\n\nTagSubIndexer.prototype.addIndexMethod = function() {\n\tvar self = this;\n\tthis.indexer.wiki[this.iteratorMethod].byTag = function(tag) {\n\t\treturn self.lookup(tag).slice(0);\n\t};\n};\n\nTagSubIndexer.prototype.rebuild = function() {\n\tvar self = this;\n\t// Hashmap by tag of array of {isSorted:, titles:[]}\n\tthis.index = Object.create(null);\n\t// Add all the tags\n\tthis.indexer.wiki[this.iteratorMethod](function(tiddler,title) {\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\tif(!self.index[tag]) {\n\t\t\t\tself.index[tag] = {isSorted: false, titles: [title]};\n\t\t\t} else {\n\t\t\t\tself.index[tag].titles.push(title);\n\t\t\t}\n\t\t});\t\t\n\t});\n};\n\nTagSubIndexer.prototype.update = function(updateDescriptor) {\n\tthis.index = null;\n};\n\nTagSubIndexer.prototype.lookup = function(tag) {\n\t// Update the index if it has yet to be built\n\tif(this.index === null) {\n\t\tthis.rebuild();\n\t}\n\tvar indexRecord = this.index[tag];\n\tif(indexRecord) {\n\t\tif(!indexRecord.isSorted) {\n\t\t\tif(this.indexer.wiki.sortByList) {\n\t\t\t\tindexRecord.titles = this.indexer.wiki.sortByList(indexRecord.titles,tag);\n\t\t\t}\t\t\t\n\t\t\tindexRecord.isSorted = true;\n\t\t}\n\t\treturn indexRecord.titles;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n\nexports.TagIndexer = TagIndexer;\n\n})();\n",
"type": "application/javascript",
"module-type": "indexer"
},
"$:/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(updateInfoTiddlersCallback) {\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\tinfoTiddlerFields.push({title: \"$:/info/startup-timestamp\", text: $tw.utils.stringifyDate(new Date())});\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\t// Dark mode through event listener on MediaQueryList\n \t\tvar mqList = window.matchMedia(\"(prefers-color-scheme: dark)\"),\n \t\t\tgetDarkModeTiddler = function() {return {title: \"$:/info/darkmode\", text: mqList.matches ? \"yes\" : \"no\"};};\n \t\tinfoTiddlerFields.push(getDarkModeTiddler());\n \t\tmqList.addListener(function(event) {\n \t\t\tupdateInfoTiddlersCallback([getDarkModeTiddler()]);\n \t\t});\n\t\t// Language\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/language\", text: navigator.language || \"\"});\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\tthis.shortcutKeysList = [], // Stores the shortcut-key descriptors\n\tthis.shortcutActionList = [], // Stores the corresponding action strings\n\tthis.shortcutParsedList = []; // Stores the parsed key descriptors\n\tthis.lookupNames = [\"shortcuts\"];\n\tthis.lookupNames.push($tw.platform.isMac ? \"shortcuts-mac\" : \"shortcuts-not-mac\")\n\tthis.lookupNames.push($tw.platform.isWindows ? \"shortcuts-windows\" : \"shortcuts-not-windows\");\n\tthis.lookupNames.push($tw.platform.isLinux ? \"shortcuts-linux\" : \"shortcuts-not-linux\");\n\tthis.updateShortcutLists(this.getShortcutTiddlerList());\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tself.handleShortcutChanges(changes);\n\t});\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\t$tw.utils.each(self.lookupNames,function(platformDescriptor) {\n\t\t\t\t\tlookupName(platformDescriptor);\n\t\t\t\t});\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\nKeyboardManager.prototype.getEventModifierKeyDescriptor = function(event) {\n\treturn event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl\" : \n\t\tevent.shiftKey && !event.ctrlKey && !event.altKey && !event.metaKey ? \"shift\" : \n\t\tevent.ctrlKey && event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl-shift\" : \n\t\tevent.altKey && !event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt\" : \n\t\tevent.altKey && event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt-shift\" : \n\t\tevent.altKey && event.ctrlKey && !event.shiftKey && !event.metaKey ? \"ctrl-alt\" : \n\t\tevent.altKey && event.shiftKey && event.ctrlKey && !event.metaKey ? \"ctrl-alt-shift\" : \n\t\tevent.metaKey && !event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta\" : \n\t\tevent.metaKey && event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta-ctrl\" :\n\t\tevent.metaKey && event.ctrlKey && event.shiftKey && !event.altKey ? \"meta-ctrl-shift\" :\n\t\tevent.metaKey && event.ctrlKey & event.shiftKey && event.altKey ? \"meta-ctrl-alt-shift\" : \"normal\";\n};\n\nKeyboardManager.prototype.getShortcutTiddlerList = function() {\n\treturn $tw.wiki.getTiddlersWithTag(\"$:/tags/KeyboardShortcut\");\n};\n\nKeyboardManager.prototype.updateShortcutLists = function(tiddlerList) {\n\tthis.shortcutTiddlers = tiddlerList;\n\tfor(var i=0; i<tiddlerList.length; i++) {\n\t\tvar title = tiddlerList[i],\n\t\t\ttiddlerFields = $tw.wiki.getTiddler(title).fields;\n\t\tthis.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;\n\t\tthis.shortcutActionList[i] = tiddlerFields.text;\n\t\tthis.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? this.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;\n\t}\n};\n\nKeyboardManager.prototype.handleKeydownEvent = function(event) {\n\tvar key, action;\n\tfor(var i=0; i<this.shortcutTiddlers.length; i++) {\n\t\tif(this.shortcutParsedList[i] !== undefined && this.checkKeyDescriptors(event,this.shortcutParsedList[i])) {\n\t\t\tkey = this.shortcutParsedList[i];\n\t\t\taction = this.shortcutActionList[i];\n\t\t}\n\t}\n\tif(key !== undefined) {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\t$tw.rootWidget.invokeActionString(action,$tw.rootWidget);\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.detectNewShortcuts = function(changedTiddlers) {\n\tvar shortcutConfigTiddlers = [],\n\t\thandled = false;\n\t$tw.utils.each(this.lookupNames,function(platformDescriptor) {\n\t\tvar descriptorString = \"$:/config/\" + platformDescriptor + \"/\";\n\t\tObject.keys(changedTiddlers).forEach(function(configTiddler) {\n\t\t\tvar configString = configTiddler.substr(0, configTiddler.lastIndexOf(\"/\") + 1);\n\t\t\tif(configString === descriptorString) {\n\t\t\t\tshortcutConfigTiddlers.push(configTiddler);\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t});\n\t});\n\tif(handled) {\n\t\treturn $tw.utils.hopArray(changedTiddlers,shortcutConfigTiddlers);\n\t} else {\n\t\treturn false;\n\t}\n};\n\nKeyboardManager.prototype.handleShortcutChanges = function(changedTiddlers) {\n\tvar newList = this.getShortcutTiddlerList();\n\tvar hasChanged = $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers) ? true :\n\t\t($tw.utils.hopArray(changedTiddlers,newList) ? true :\n\t\t(this.detectNewShortcuts(changedTiddlers))\n\t);\n\t// Re-cache shortcuts if something changed\n\tif(hasChanged) {\n\t\tthis.updateShortcutLists(newList);\n\t}\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/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\t{name: \"spaces\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,spaces) {\n\treturn this.wiki.getTiddlersAsJson(filter,$tw.utils.parseInt(spaces));\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\t{name: \"_canonical_uri\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(text,type,_canonical_uri) {\n\treturn $tw.utils.makeDataUri(text,type,_canonical_uri);\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/unusedtitle.js": {
"title": "$:/core/modules/macros/unusedtitle.js",
"text": "/*\\\ntitle: $:/core/modules/macros/unusedtitle.js\ntype: application/javascript\nmodule-type: macro\nMacro to return a new title that is unused in the wiki. It can be given a name as a base.\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 = \"unusedtitle\";\n\nexports.params = [\n\t{name: \"baseName\"},\n\t{name: \"options\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(baseName, options) {\n\tif(!baseName) {\n\t\tbaseName = $tw.language.getString(\"DefaultNewTiddlerTitle\");\n\t}\n\treturn this.wiki.generateNewTitle(baseName, options);\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\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\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/binaryparser.js": {
"title": "$:/core/modules/parsers/binaryparser.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/binaryparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe binary parser parses a binary tiddler into a warning message and download link\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\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar BinaryParser = function(type,text,options) {\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on binary tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!title\"}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to external or internal data URI\n\tif(options._canonical_uri) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: options._canonical_uri\n\t\t};\n\t} else if(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/octet-stream\"] = BinaryParser;\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/webp\"] = ImageParser;\nexports[\"image/heic\"] = ImageParser;\nexports[\"image/heif\"] = ImageParser;\nexports[\"image/x-icon\"] = ImageParser;\nexports[\"image/vnd.microsoft.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\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\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/ogg\"] = VideoParser;\nexports[\"video/webm\"] = VideoParser;\nexports[\"video/mp4\"] = VideoParser;\nexports[\"video/quicktime\"] = VideoParser;\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 = this.match.index + 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 = this.match.index + 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 ? \"–\" : \"—\";\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: ©\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\tvar reEndString = \"</\" + $tw.utils.escapeRegExp(tag.tag) + \">\";\n\t\tif(hasLineBreak) {\n\t\t\ttag.children = this.parser.parseBlocks(reEndString);\n\t\t} else {\n\t\t\tvar reEnd = new RegExp(\"(\" + reEndString + \")\",\"mg\");\n\t\t\ttag.children = this.parser.parseInlineRun(reEnd,{eatTerminator: true});\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/import.js": {
"title": "$:/core/modules/parsers/wikiparser/rules/import.js",
"text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/import.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for importing variable definitions\n\n```\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"import\";\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 = /^\\\\import[^\\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 the filter terminated by a line break\n\tvar reMatch = /(.*)(\\r?\\n)|$/mg;\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\tthis.parser.pos = reMatch.lastIndex;\n\t// Parse tree nodes to return\n\treturn [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: match[1]}\n\t\t},\n\t\tchildren: []\n\t}];\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: \"div\"}\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};\n\nexports.findNextMatch = function(startPos) {\n\tvar nextStart = startPos;\n\t// Try parsing at all possible macrocall openers until we match\n\twhile((nextStart = this.parser.source.indexOf(\"<<\",nextStart)) >= 0) {\n\t\tvar nextCall = $tw.utils.parseMacroInvocation(this.parser.source,nextStart);\n\t\tif(nextCall) {\n\t\t\tvar c = this.parser.source.charAt(nextCall.end);\n\t\t\t// Ensure EOL after parsed macro\n\t\t\t// If we didn't need to support IE, we'd just use /(?:\\r?\\n|$)/ym\n\t\t\tif ((c === \"\") || (c === \"\\n\") || ((c === \"\\r\") && this.parser.source.charAt(nextCall.end+1) === \"\\n\")) {\n\t\t\t\tthis.nextCall = nextCall;\n\t\t\t\treturn nextStart;\n\t\t\t}\n\t\t}\n\t\tnextStart += 2;\n\t}\n\treturn undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar call = this.nextCall;\n\tcall.isBlock = true;\n\tthis.nextCall = null;\n\tthis.parser.pos = call.end;\n\treturn [call];\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};\n\nexports.findNextMatch = function(startPos) {\n\tvar nextStart = startPos;\n\t// Try parsing at all possible macrocall openers until we match\n\twhile((nextStart = this.parser.source.indexOf(\"<<\",nextStart)) >= 0) {\n\t\tthis.nextCall = $tw.utils.parseMacroInvocation(this.parser.source,nextStart);\n\t\tif(this.nextCall) {\n\t\t\treturn nextStart;\n\t\t}\n\t\tnextStart += 2;\n\t}\n\treturn undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar call = this.nextCall;\n\tthis.nextCall = null;\n\tthis.parser.pos = call.end;\n\treturn [call];\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\tisMacroDefinition: true\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// 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\n/*\ntype: content type of text\ntext: text to be parsed\noptions: see below:\n\tparseAsInline: true to parse text as inline instead of block\n\twiki: reference to wiki to use\n\t_canonical_uri: optional URI of content if text is missing or empty\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// 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// Start with empty output\n\tthis.tree = [];\n\t// Assemble the rule classes we're going to use\n\tvar pragmaRuleClasses, blockRuleClasses, inlineRuleClasses;\n\tif(options.rules) {\n\t\tpragmaRuleClasses = options.rules.pragma;\n\t\tblockRuleClasses = options.rules.block;\n\t\tinlineRuleClasses = options.rules.inline;\n\t} else {\n\t\t// Setup the rule classes if we don't have them already\n\t\tif(!this.pragmaRuleClasses) {\n\t\t\tWikiParser.prototype.pragmaRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"pragma\",$tw.WikiRuleBase);\n\t\t\tthis.setupRules(WikiParser.prototype.pragmaRuleClasses,\"$:/config/WikiParserRules/Pragmas/\");\n\t\t}\n\t\tpragmaRuleClasses = this.pragmaRuleClasses;\n\t\tif(!this.blockRuleClasses) {\n\t\t\tWikiParser.prototype.blockRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"block\",$tw.WikiRuleBase);\n\t\t\tthis.setupRules(WikiParser.prototype.blockRuleClasses,\"$:/config/WikiParserRules/Block/\");\n\t\t}\n\t\tblockRuleClasses = this.blockRuleClasses;\n\t\tif(!this.inlineRuleClasses) {\n\t\t\tWikiParser.prototype.inlineRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"inline\",$tw.WikiRuleBase);\n\t\t\tthis.setupRules(WikiParser.prototype.inlineRuleClasses,\"$:/config/WikiParserRules/Inline/\");\n\t\t}\n\t\tinlineRuleClasses = this.inlineRuleClasses;\n\t}\n\t// Instantiate the pragma parse rules\n\tthis.pragmaRules = this.instantiateRules(pragmaRuleClasses,\"pragma\",0);\n\t// Instantiate the parser block and inline rules\n\tthis.blockRules = this.instantiateRules(blockRuleClasses,\"block\",0);\n\tthis.inlineRules = this.instantiateRules(inlineRuleClasses,\"inline\",0);\n\t// Parse any pragmas\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 target;\n\tif(type === \"only\") {\n\t\ttarget = true;\n\t} else if(type === \"except\") {\n\t\ttarget = false;\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((names.indexOf(ruleArray[t].rule.name) === -1) === target) {\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// Read the plugin info for the incoming plugins\n\tvar changes = $tw.wiki.readPluginInfo(plugins);\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.preloadDirty = options.preloadDirty || [];\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\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(self.preloadDirty,function(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});\n\t\tthis.numChanges = filteredChanges.length;\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// Ignore autosave if disabled\n\tif(method === \"autosave\" && ($tw.config.disableAutoSave || this.wiki.getTiddlerText(this.titleAutoSave,\"yes\") !== \"yes\")) {\n\t\treturn false;\n\t}\n\tvar\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// 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\tvar self = this;\n\tif($tw.browser) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t\t$tw.utils.each($tw.windows,function(win) {\n\t\t\t$tw.utils.toggleClass(win.document.body,\"tc-dirty\",self.isDirty());\n\t\t});\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,options) {\n\tvar filename = options && options.variables ? options.variables.filename : null;\n\tif (method === \"download\") {\n\t\t// Support download\n\t\tif (window.twi.saveDownload) {\n\t\t\ttry {\n\t\t\t\twindow.twi.saveDownload(text,filename);\n\t\t\t} catch(err) {\n\t\t\t\tif (err.message === \"Method not found\") {\n\t\t\t\t\twindow.twi.saveDownload(text);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tvar link = document.createElement(\"a\");\n\t\t\tlink.setAttribute(\"href\",\"data:text/plain,\" + encodeURIComponent(text));\n\t\t\tif (filename) {\n\t\t\t link.setAttribute(\"download\",filename);\n\t\t\t}\n\t\t\tdocument.body.appendChild(link);\n\t\t\tlink.click();\n\t\t\tdocument.body.removeChild(link);\n\t\t}\n\t} else if (window.twi.saveWiki) {\n\t\t// Direct save in Tiddloid\n\t\twindow.twi.saveWiki(text);\n\t} else {\n\t\t// Get the pathname of this document\n\t\tvar pathname = decodeURIComponent(document.location.toString().split(\"#\")[0]);\n\t\t// Strip the file://\n\t\tif(pathname.indexOf(\"file://\") === 0) {\n\t\t\tpathname = pathname.substr(7);\n\t\t}\n\t\t// Strip any query or location part\n\t\tvar p = pathname.indexOf(\"?\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\tp = pathname.indexOf(\"#\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\t// Save the file\n\t\twindow.twi.saveFile(pathname,text);\n\t}\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\", \"download\"]\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 && location.protocol===\"dat:\";\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/custom.js": {
"title": "$:/core/modules/savers/custom.js",
"text": "/*\\\ntitle: $:/core/modules/savers/custom.js\ntype: application/javascript\nmodule-type: saver\n\nLooks for `window.$tw.customSaver` first on the current window, then\non the parent window (of an iframe). If present, the saver must define\n\tsave: function(text,method,callback) { ... }\nand the saver may define\n\tpriority: number\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar findSaver = function(window) {\n\ttry {\n\t\treturn window && window.$tw && window.$tw.customSaver;\n\t} catch (err) {\n\t\t// Catching the exception is the most reliable way to detect cross-origin iframe errors.\n\t\t// For example, instead of saying that `window.parent.$tw` is undefined, Firefox will throw\n\t\t// Uncaught DOMException: Permission denied to access property \"$tw\" on cross-origin object\n\t\tconsole.log({ msg: \"custom saver is disabled\", reason: err });\n\t\treturn null;\n\t}\n}\nvar saver = findSaver(window) || findSaver(window.parent) || {};\n\nvar CustomSaver = function(wiki) {\n};\n\nCustomSaver.prototype.save = function(text,method,callback) {\n\treturn saver.save(text, method, callback);\n};\n\n/*\nInformation about this saver\n*/\nCustomSaver.prototype.info = {\n\tname: \"custom\",\n\tpriority: saver.priority || 4000,\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 !!(saver.save);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new CustomSaver(wiki);\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/gitea.js": {
"title": "$:/core/modules/savers/gitea.js",
"text": "/*\\\ntitle: $:/core/modules/savers/gitea.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the gitea\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 GiteaSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGiteaSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/Gitea/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"Gitea\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/Gitea/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/Gitea/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/Gitea/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/Gitea/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/Gitea/ServerURL\") || \"https://gitea\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"token \" + password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar use_put = true;\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(sha === \"\"){\n\t\t\t\t\tuse_put = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: endpoint + \"/repos/\" + repo + \"/branches/\" + branch,\n\t\t\t\ttype: \"GET\",\n\t\t\t\theaders: headers,\n\t\t\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\t\t\tif(xhr.status === 404) {\n\t\t\t\t\t\tcallback(\"Please ensure the branch in the Gitea repo exists\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tdata[\"branch\"] = branch;\n\t\t\t\t\t\tself.upload(uri + filename, use_put?\"PUT\":\"POST\", headers, data, callback);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\nGiteaSaver.prototype.upload = function(uri,method,headers,data,callback) {\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: method,\n\t\theaders: headers,\n\t\tdata: JSON.stringify(data),\n\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\tcallback(null);\n\t\t}\n\t});\n};\n\n/*\nInformation about this saver\n*/\nGiteaSaver.prototype.info = {\n\tname: \"Gitea\",\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 GiteaSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/github.js": {
"title": "$:/core/modules/savers/github.js",
"text": "/*\\\ntitle: $:/core/modules/savers/github.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitHub v3 REST API\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 GitHubSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitHubSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitHub/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"github\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitHub/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitHub/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitHub/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitHub/Branch\") || \"main\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitHub/ServerURL\") || \"https://api.github.com\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/vnd.github.v3+json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"Basic \" + window.btoa(username + \":\" + password),\n\t\t\t\"If-None-Match\": \"\"\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a PUT request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + filename,\n\t\t\t\ttype: \"PUT\",\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitHubSaver.prototype.info = {\n\tname: \"github\",\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 GitHubSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/gitlab.js": {
"title": "$:/core/modules/savers/gitlab.js",
"text": "/*\\\ntitle: $:/core/modules/savers/gitlab.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitLab REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: true */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitLabSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitLabSaver.prototype.save = function(text,method,callback) {\n\t/* See https://docs.gitlab.com/ee/api/repository_files.html */\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitLab/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"gitlab\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitLab/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitLab/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitLab/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitLab/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitLab/ServerURL\") || \"https://gitlab.com/api/v4\",\n\t\theaders = {\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Private-Token\": password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/projects/\" + encodeURIComponent(repo) + \"/repository/\";\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri + \"tree/?path=\" + encodeURIComponent(path.replace(/^\\/+|\\/$/g, '')) + \"&branch=\" + encodeURIComponent(branch.replace(/^\\/+|\\/$/g, '')),\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar requestType = \"POST\";\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\trequestType = \"PUT\";\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tcommit_message: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: text,\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + \"files/\" + encodeURIComponent(path.replace(/^\\/+/, '') + filename),\n\t\t\t\ttype: requestType,\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitLabSaver.prototype.info = {\n\tname: \"gitlab\",\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 GitLabSaver(wiki);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "saver"
},
"$:/core/modules/savers/hyperdrive.js": {
"title": "$:/core/modules/savers/hyperdrive.js",
"text": "/*\\\ntitle: $:/core/modules/savers/hyperdrive.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Hyperdrive Protocol (https://hypercore-protocol.org/#hyperdrive) Beaker browser beta-1.0 and later (https://beakerbrowser.com)\nCompatible with beaker >= V1.0.0\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 HyperdriveSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nHyperdriveSaver.prototype.save = function(text,method,callback) {\n\tvar dat = beaker.hyperdrive.drive(\"\" + 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(\"Hyperdrive Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Hyperdrive Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nHyperdriveSaver.prototype.info = {\n\tname: \"beaker-1.x\",\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.beaker && !!beaker.hyperdrive && location.protocol===\"hyper:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new HyperdriveSaver(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/*\nRetrieve ETag if available\n*/\nvar retrieveETag = function(self) {\n\tvar headers = {\n\t\tAccept: \"*/*;charset=UTF-8\"\n\t};\n\t$tw.utils.httpRequest({\n\t\turl: self.uri(),\n\t\ttype: \"HEAD\",\n\t\theaders: headers,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar etag = xhr.getResponseHeader(\"ETag\");\n\t\t\tif(!etag) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tself.etag = etag.replace(/^W\\//,\"\");\n\t\t}\n\t});\n};\n\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\tretrieveETag(this);\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 = {\n\t\t\"Content-Type\": \"text/html;charset=UTF-8\"\n\t};\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\t// response is textual: \"XMLHttpRequest error code: 412\"\n\t\t\t\tvar status = Number(err.substring(err.indexOf(':') + 2, err.length))\n\t\t\t\tif(status === 412) { // edit conflict\n\t\t\t\t\tvar message = $tw.language.getString(\"Error/EditConflict\");\n\t\t\t\t\tcallback(message);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(err); // fail\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t\tif(self.etag == null) {\n\t\t\t\t\tretrieveETag(self);\n\t\t\t\t}\n\t\t\t\tcallback(null); // success\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\tuploadWithUrlOnly = this.wiki.getTextReference(\"$:/UploadWithUrlOnly\") || \"no\",\n\t\turl = this.wiki.getTextReference(\"$:/UploadURL\");\n\t// Bail out if we don't have the bits we need\n\tif (uploadWithUrlOnly === \"yes\") {\n\t\t// The url is good enough. No need for a username and password.\n\t\t// Assume the server uses some other kind of auth mechanism.\n\t\tif(!url || url.toString().trim() === \"\") {\n\t\t\treturn false;\n\t\t}\n\t}\n\telse {\n\t\t// Require username and password to be present.\n\t\t// Assume the server uses the standard UploadPlugin username/password.\n\t\tif(!username || username.toString().trim() === \"\" || !password || password.toString().trim() === \"\") {\n\t\t\treturn false;\n\t\t}\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/server/authenticators/basic.js": {
"title": "$:/core/modules/server/authenticators/basic.js",
"text": "/*\\\ntitle: $:/core/modules/server/authenticators/basic.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for WWW basic authentication\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}\n\nfunction BasicAuthenticator(server) {\n\tthis.server = server;\n\tthis.credentialsData = [];\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nBasicAuthenticator.prototype.init = function() {\n\t// Read the credentials data\n\tthis.credentialsFilepath = this.server.get(\"credentials\");\n\tif(this.credentialsFilepath) {\n\t\tvar resolveCredentialsFilepath = path.resolve(this.server.boot.wikiPath,this.credentialsFilepath);\n\t\tif(fs.existsSync(resolveCredentialsFilepath) && !fs.statSync(resolveCredentialsFilepath).isDirectory()) {\n\t\t\tvar credentialsText = fs.readFileSync(resolveCredentialsFilepath,\"utf8\"),\n\t\t\t\tcredentialsData = $tw.utils.parseCsvStringWithHeader(credentialsText);\n\t\t\tif(typeof credentialsData === \"string\") {\n\t\t\t\treturn \"Error: \" + credentialsData + \" reading credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t\t} else {\n\t\t\t\tthis.credentialsData = credentialsData;\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"Error: Unable to load user credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t}\n\t}\n\t// Add the hardcoded username and password if specified\n\tif(this.server.get(\"username\") && this.server.get(\"password\")) {\n\t\tthis.credentialsData = this.credentialsData || [];\n\t\tthis.credentialsData.push({\n\t\t\tusername: this.server.get(\"username\"),\n\t\t\tpassword: this.server.get(\"password\")\n\t\t});\n\t}\n\treturn this.credentialsData.length > 0;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nBasicAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Extract the incoming username and password from the request\n\tvar header = request.headers.authorization || \"\";\n\tif(!header && state.allowAnon) {\n\t\t// If there's no header and anonymous access is allowed then we don't set authenticatedUsername\n\t\treturn true;\n\t}\n\tvar token = header.split(/\\s+/).pop() || \"\",\n\t\tauth = $tw.utils.base64Decode(token),\n\t\tparts = auth.split(/:/),\n\t\tincomingUsername = parts[0],\n\t\tincomingPassword = parts[1];\n\t// Check that at least one of the credentials matches\n\tvar matchingCredentials = this.credentialsData.find(function(credential) {\n\t\treturn credential.username === incomingUsername && credential.password === incomingPassword;\n\t});\n\tif(matchingCredentials) {\n\t\t// If so, add the authenticated username to the request state\n\t\tstate.authenticatedUsername = incomingUsername;\n\t\treturn true;\n\t} else {\n\t\t// If not, return an authentication challenge\n\t\tresponse.writeHead(401,\"Authentication required\",{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\n\t\treturn false;\n\t}\n};\n\nexports.AuthenticatorClass = BasicAuthenticator;\n\n})();\n",
"type": "application/javascript",
"module-type": "authenticator"
},
"$:/core/modules/server/authenticators/header.js": {
"title": "$:/core/modules/server/authenticators/header.js",
"text": "/*\\\ntitle: $:/core/modules/server/authenticators/header.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for trusted header authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction HeaderAuthenticator(server) {\n\tthis.server = server;\n\tthis.header = server.get(\"authenticated-user-header\") ? server.get(\"authenticated-user-header\").toLowerCase() : undefined;\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nHeaderAuthenticator.prototype.init = function() {\n\treturn !!this.header;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nHeaderAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Otherwise, authenticate as the username in the specified header\n\tvar username = request.headers[this.header];\n\tif(!username && !state.allowAnon) {\n\t\tresponse.writeHead(401,\"Authorization header required to login to '\" + state.server.servername + \"'\");\n\t\tresponse.end();\n\t\treturn false;\n\t} else {\n\t\t// authenticatedUsername will be undefined for anonymous users\n\t\tstate.authenticatedUsername = username;\n\t\treturn true;\n\t}\n};\n\nexports.AuthenticatorClass = HeaderAuthenticator;\n\n})();\n",
"type": "application/javascript",
"module-type": "authenticator"
},
"$:/core/modules/server/routes/delete-tiddler.js": {
"title": "$:/core/modules/server/routes/delete-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/delete-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nDELETE /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"DELETE\";\n\nexports.path = /^\\/bags\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]);\n\tstate.wiki.deleteTiddler(title);\n\tresponse.writeHead(204, \"OK\", {\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-favicon.js": {
"title": "$:/core/modules/server/routes/get-favicon.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-favicon.js\ntype: application/javascript\nmodule-type: route\n\nGET /favicon.ico\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/favicon.ico$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"image/x-icon\"});\n\tvar buffer = state.wiki.getTiddlerText(\"$:/favicon.ico\",\"\");\n\tresponse.end(buffer,\"base64\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-file.js": {
"title": "$:/core/modules/server/routes/get-file.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-file.js\ntype: application/javascript\nmodule-type: route\n\nGET /files/:filepath\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/files\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar path = require(\"path\"),\n\t\tfs = require(\"fs\"),\n\t\tutil = require(\"util\"),\n\t\tsuppliedFilename = decodeURIComponent(state.params[0]),\n\t\tfilename = path.resolve(state.boot.wikiPath,\"files\",suppliedFilename),\n\t\textension = path.extname(filename);\n\tfs.readFile(filename,function(err,content) {\n\t\tvar status,content,type = \"text/plain\";\n\t\tif(err) {\n\t\t\tconsole.log(\"Error accessing file \" + filename + \": \" + err.toString());\n\t\t\tstatus = 404;\n\t\t\tcontent = \"File '\" + suppliedFilename + \"' not found\";\n\t\t} else {\n\t\t\tstatus = 200;\n\t\t\tcontent = content;\n\t\t\ttype = ($tw.config.fileExtensionInfo[extension] ? $tw.config.fileExtensionInfo[extension].type : \"application/octet-stream\");\n\t\t}\n\t\tresponse.writeHead(status,{\n\t\t\t\"Content-Type\": type\n\t\t});\n\t\tresponse.end(content);\n\t});\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-index.js": {
"title": "$:/core/modules/server/routes/get-index.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-index.js\ntype: application/javascript\nmodule-type: route\n\nGET /\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar zlib = require(\"zlib\");\n\nexports.method = \"GET\";\n\nexports.path = /^\\/$/;\n\nexports.handler = function(request,response,state) {\n\tvar acceptEncoding = request.headers[\"accept-encoding\"];\n\tif(!acceptEncoding) {\n\t\tacceptEncoding = \"\";\n\t}\n\tvar text = state.wiki.renderTiddler(state.server.get(\"root-render-type\"),state.server.get(\"root-tiddler\")),\n\t\tresponseHeaders = {\n\t\t\"Content-Type\": state.server.get(\"root-serve-type\")\n\t};\n\t/*\n\tIf the gzip=yes flag for `listen` is set, check if the user agent permits\n\tcompression. If so, compress our response. Note that we use the synchronous\n\tfunctions from zlib to stay in the imperative style. The current `Server`\n\tdoesn't depend on this, and we may just as well use the async versions.\n\t*/\n\tif(state.server.enableGzip) {\n\t\tif (/\\bdeflate\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"deflate\";\n\t\t\ttext = zlib.deflateSync(text);\n\t\t} else if (/\\bgzip\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"gzip\";\n\t\t\ttext = zlib.gzipSync(text);\n\t\t}\n\t}\n\tresponse.writeHead(200,responseHeaders);\n\tresponse.end(text);\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-login-basic.js": {
"title": "$:/core/modules/server/routes/get-login-basic.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-login-basic.js\ntype: application/javascript\nmodule-type: route\n\nGET /login-basic -- force a Basic Authentication challenge\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/login-basic$/;\n\nexports.handler = function(request,response,state) {\n\tif(!state.authenticatedUsername) {\n\t\t// Challenge if there's no username\n\t\tresponse.writeHead(401,{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\t\t\n\t} else {\n\t\t// Redirect to the root wiki if login worked\n\t\tresponse.writeHead(302,{\n\t\t\tLocation: \"/\"\n\t\t});\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-status.js": {
"title": "$:/core/modules/server/routes/get-status.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-status.js\ntype: application/javascript\nmodule-type: route\n\nGET /status\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/status$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar text = JSON.stringify({\n\t\tusername: state.authenticatedUsername || state.server.get(\"anon-username\") || \"\",\n\t\tanonymous: !state.authenticatedUsername,\n\t\tread_only: !state.server.isAuthorized(\"writers\",state.authenticatedUsername),\n\t\tsse_enabled: state.server.get(\"sse-enabled\") === \"yes\",\n\t\tspace: {\n\t\t\trecipe: \"default\"\n\t\t},\n\t\ttiddlywiki_version: $tw.version\n\t});\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddler-html.js": {
"title": "$:/core/modules/server/routes/get-tiddler-html.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler-html.js\ntype: application/javascript\nmodule-type: route\n\nGET /:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/([^\\/]+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar renderType = tiddler.getFieldString(\"_render_type\"),\n\t\t\trenderTemplate = tiddler.getFieldString(\"_render_template\");\n\t\t// Tiddler fields '_render_type' and '_render_template' overwrite\n\t\t// system wide settings for render type and template\n\t\tif(state.wiki.isSystemTiddler(title)) {\n\t\t\trenderType = renderType || state.server.get(\"system-tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"system-tiddler-render-template\");\n\t\t} else {\n\t\t\trenderType = renderType || state.server.get(\"tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"tiddler-render-template\");\n\t\t}\n\t\tvar text = state.wiki.renderTiddler(renderType,renderTemplate,{parseAsInline: true, variables: {currentTiddler: title}});\n\t\t// Naughty not to set a content-type, but it's the easiest way to ensure the browser will see HTML pages as HTML, and accept plain text tiddlers as CSS or JS\n\t\tresponse.writeHead(200);\n\t\tresponse.end(text,\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddler.js": {
"title": "$:/core/modules/server/routes/get-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title),\n\t\ttiddlerFields = {},\n\t\tknownFields = [\n\t\t\t\"bag\", \"created\", \"creator\", \"modified\", \"modifier\", \"permissions\", \"recipe\", \"revision\", \"tags\", \"text\", \"title\", \"type\", \"uri\"\n\t\t];\n\tif(tiddler) {\n\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\tif(knownFields.indexOf(name) !== -1) {\n\t\t\t\ttiddlerFields[name] = value;\n\t\t\t} else {\n\t\t\t\ttiddlerFields.fields = tiddlerFields.fields || {};\n\t\t\t\ttiddlerFields.fields[name] = value;\n\t\t\t}\n\t\t});\n\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\ttiddlerFields.bag = \"default\";\n\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\tresponse.end(JSON.stringify(tiddlerFields),\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/get-tiddlers-json.js": {
"title": "$:/core/modules/server/routes/get-tiddlers-json.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddlers-json.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers.json?filter=<filter>\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_FILTER = \"[all[tiddlers]!is[system]sort[title]]\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers.json$/;\n\nexports.handler = function(request,response,state) {\n\tvar filter = state.queryParameters.filter || DEFAULT_FILTER;\n\tif(state.wiki.getTiddlerText(\"$:/config/Server/AllowAllExternalFilters\") !== \"yes\") {\n\t\tif(state.wiki.getTiddlerText(\"$:/config/Server/ExternalFilters/\" + filter) !== \"yes\") {\n\t\t\tconsole.log(\"Blocked attempt to GET /recipes/default/tiddlers.json with filter: \" + filter);\n\t\t\tresponse.writeHead(403);\n\t\t\tresponse.end();\n\t\t\treturn;\n\t\t}\n\t}\n\tif(state.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"no\") {\n\t\tfilter += \"+[!is[system]]\";\n\t}\n\tvar excludeFields = (state.queryParameters.exclude || \"text\").split(\",\"),\n\t\ttitles = state.wiki.filterTiddlers(filter);\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar tiddlers = [];\n\t$tw.utils.each(titles,function(title) {\n\t\tvar tiddler = state.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tvar tiddlerFields = tiddler.getFieldStrings({exclude: excludeFields});\n\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\ttiddlers.push(tiddlerFields);\n\t\t}\n\t});\n\tvar text = JSON.stringify(tiddlers);\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/routes/put-tiddler.js": {
"title": "$:/core/modules/server/routes/put-tiddler.js",
"text": "/*\\\ntitle: $:/core/modules/server/routes/put-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nPUT /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"PUT\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\tfields = JSON.parse(state.data);\n\t// Pull up any subfields in the `fields` object\n\tif(fields.fields) {\n\t\t$tw.utils.each(fields.fields,function(field,name) {\n\t\t\tfields[name] = field;\n\t\t});\n\t\tdelete fields.fields;\n\t}\n\t// Remove any revision field\n\tif(fields.revision) {\n\t\tdelete fields.revision;\n\t}\n\tstate.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields()));\n\tvar changeCount = state.wiki.getChangeCount(title).toString();\n\tresponse.writeHead(204, \"OK\",{\n\t\tEtag: \"\\\"default/\" + encodeURIComponent(title) + \"/\" + changeCount + \":\\\"\",\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
"type": "application/javascript",
"module-type": "route"
},
"$:/core/modules/server/server-sent-events.js": {
"title": "$:/core/modules/server/server-sent-events.js",
"text": "/*\\\ntitle: $:/core/modules/server/server-sent-events.js\ntype: application/javascript\nmodule-type: library\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nparameters:\n\t\tprefix - usually the plugin path, such as `plugins/tiddlywiki/tiddlyweb`. The\n\t\t\troute will match `/events/${prefix}` exactly.\n\n\t\thandler - a function that will be called each time a request comes in with the\n\t\t\trequest and state from the route and an emit function to call.\n*/\n\nvar ServerSentEvents = function ServerSentEvents(prefix, handler) {\n\tthis.handler = handler;\n\tthis.prefix = prefix;\n};\n\nServerSentEvents.prototype.getExports = function() {\n\treturn {\n\t\tbodyFormat: \"stream\",\n\t\tmethod: \"GET\",\n\t\tpath: new RegExp(\"^/events/\" + this.prefix + \"$\"),\n\t\thandler: this.handleEventRequest.bind(this)\n\t};\n};\n\nServerSentEvents.prototype.handleEventRequest = function(request,response,state) {\n\tif(ServerSentEvents.prototype.isEventStreamRequest(request)) {\n\t\tresponse.writeHead(200, {\n\t\t\t\"Content-Type\": \"text/event-stream\",\n\t\t\t\"Cache-Control\": \"no-cache\",\n\t\t\t\"Connection\": \"keep-alive\"\n\t\t});\n\t\tthis.handler(request,state,this.emit.bind(this,response),this.end.bind(this,response));\n\t} else {\n\t\tresponse.writeHead(406,\"Not Acceptable\",{});\n\t\tresponse.end();\n\t}\n};\n\nServerSentEvents.prototype.isEventStreamRequest = function(request) {\n\treturn request.headers.accept &&\n\t\trequest.headers.accept.match(/^text\\/event-stream/);\n};\n\nServerSentEvents.prototype.emit = function(response,event,data) {\n\tif(typeof event !== \"string\" || event.indexOf(\"\\n\") !== -1) {\n\t\tthrow new Error(\"Type must be a single-line string\");\n\t}\n\tif(typeof data !== \"string\" || data.indexOf(\"\\n\") !== -1) {\n\t\tthrow new Error(\"Data must be a single-line string\");\n\t}\n\tresponse.write(\"event: \" + event + \"\\ndata: \" + data + \"\\n\\n\", \"utf8\");\n};\n\nServerSentEvents.prototype.end = function(response) {\n\tresponse.end();\n};\n\nexports.ServerSentEvents = ServerSentEvents;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/core/modules/server/server.js": {
"title": "$:/core/modules/server/server.js",
"text": "/*\\\ntitle: $:/core/modules/server/server.js\ntype: application/javascript\nmodule-type: library\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\tquerystring = require(\"querystring\");\n}\n\n/*\nA simple HTTP server with regexp-based routes\noptions: variables - optional hashmap of variables to set (a misnomer - they are really constant parameters)\n\t\t routes - optional array of routes to use\n\t\t wiki - reference to wiki object\n*/\nfunction Server(options) {\n\tvar self = this;\n\tthis.routes = options.routes || [];\n\tthis.authenticators = options.authenticators || [];\n\tthis.wiki = options.wiki;\n\tthis.boot = options.boot || $tw.boot;\n\tthis.servername = $tw.utils.transliterateToSafeASCII(this.wiki.getTiddlerText(\"$:/SiteTitle\") || \"TiddlyWiki5\");\n\t// Initialise the variables\n\tthis.variables = $tw.utils.extend({},this.defaultVariables);\n\tif(options.variables) {\n\t\tfor(var variable in options.variables) {\n\t\t\tif(options.variables[variable]) {\n\t\t\t\tthis.variables[variable] = options.variables[variable];\n\t\t\t}\n\t\t}\t\t\n\t}\n\t$tw.utils.extend({},this.defaultVariables,options.variables);\n\t// Initialise CSRF\n\tthis.csrfDisable = this.get(\"csrf-disable\") === \"yes\";\n\t// Initialize Gzip compression\n\tthis.enableGzip = this.get(\"gzip\") === \"yes\";\n\t// Initialise authorization\n\tvar authorizedUserName = (this.get(\"username\") && this.get(\"password\")) ? this.get(\"username\") : \"(anon)\";\n\tthis.authorizationPrincipals = {\n\t\treaders: (this.get(\"readers\") || authorizedUserName).split(\",\").map($tw.utils.trim),\n\t\twriters: (this.get(\"writers\") || authorizedUserName).split(\",\").map($tw.utils.trim)\n\t}\n\t// Load and initialise authenticators\n\t$tw.modules.forEachModuleOfType(\"authenticator\", function(title,authenticatorDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addAuthenticator(authenticatorDefinition.AuthenticatorClass);\n\t});\n\t// Load route handlers\n\t$tw.modules.forEachModuleOfType(\"route\", function(title,routeDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addRoute(routeDefinition);\n\t});\n\t// Initialise the http vs https\n\tthis.listenOptions = null;\n\tthis.protocol = \"http\";\n\tvar tlsKeyFilepath = this.get(\"tls-key\"),\n\t\ttlsCertFilepath = this.get(\"tls-cert\");\n\tif(tlsCertFilepath && tlsKeyFilepath) {\n\t\tthis.listenOptions = {\n\t\t\tkey: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsKeyFilepath),\"utf8\"),\n\t\t\tcert: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsCertFilepath),\"utf8\")\n\t\t};\n\t\tthis.protocol = \"https\";\n\t}\n\tthis.transport = require(this.protocol);\n}\n\nServer.prototype.defaultVariables = {\n\tport: \"8080\",\n\thost: \"127.0.0.1\",\n\t\"root-tiddler\": \"$:/core/save/all\",\n\t\"root-render-type\": \"text/plain\",\n\t\"root-serve-type\": \"text/html\",\n\t\"tiddler-render-type\": \"text/html\",\n\t\"tiddler-render-template\": \"$:/core/templates/server/static.tiddler.html\",\n\t\"system-tiddler-render-type\": \"text/plain\",\n\t\"system-tiddler-render-template\": \"$:/core/templates/wikified-tiddler\",\n\t\"debug-level\": \"none\",\n\t\"gzip\": \"no\"\n};\n\nServer.prototype.get = function(name) {\n\treturn this.variables[name];\n};\n\nServer.prototype.addRoute = function(route) {\n\tthis.routes.push(route);\n};\n\nServer.prototype.addAuthenticator = function(AuthenticatorClass) {\n\t// Instantiate and initialise the authenticator\n\tvar authenticator = new AuthenticatorClass(this),\n\t\tresult = authenticator.init();\n\tif(typeof result === \"string\") {\n\t\t$tw.utils.error(\"Error: \" + result);\n\t} else if(result) {\n\t\t// Only use the authenticator if it initialised successfully\n\t\tthis.authenticators.push(authenticator);\n\t}\n};\n\nServer.prototype.findMatchingRoute = function(request,state) {\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(state.pathPrefix) {\n\t\t\tif(pathname.substr(0,state.pathPrefix.length) === state.pathPrefix) {\n\t\t\t\tpathname = pathname.substr(state.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\nServer.prototype.methodMappings = {\n\t\"GET\": \"readers\",\n\t\"OPTIONS\": \"readers\",\n\t\"HEAD\": \"readers\",\n\t\"PUT\": \"writers\",\n\t\"POST\": \"writers\",\n\t\"DELETE\": \"writers\"\n};\n\n/*\nCheck whether a given user is authorized for the specified authorizationType (\"readers\" or \"writers\"). Pass null or undefined as the username to check for anonymous access\n*/\nServer.prototype.isAuthorized = function(authorizationType,username) {\n\tvar principals = this.authorizationPrincipals[authorizationType] || [];\n\treturn principals.indexOf(\"(anon)\") !== -1 || (username && (principals.indexOf(\"(authenticated)\") !== -1 || principals.indexOf(username) !== -1));\n}\n\nServer.prototype.requestHandler = function(request,response,options) {\n\toptions = options || {};\n\t// Compose the state object\n\tvar self = this;\n\tvar state = {};\n\tstate.wiki = options.wiki || self.wiki;\n\tstate.boot = options.boot || self.boot;\n\tstate.server = self;\n\tstate.urlInfo = url.parse(request.url);\n\tstate.queryParameters = querystring.parse(state.urlInfo.query);\n\tstate.pathPrefix = options.pathPrefix || this.get(\"path-prefix\") || \"\";\n\t// Get the principals authorized to access this resource\n\tvar authorizationType = this.methodMappings[request.method] || \"readers\";\n\t// Check for the CSRF header if this is a write\n\tif(!this.csrfDisable && authorizationType === \"writers\" && request.headers[\"x-requested-with\"] !== \"TiddlyWiki\") {\n\t\tresponse.writeHead(403,\"'X-Requested-With' header required to login to '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\t\t\n\t}\n\t// Check whether anonymous access is granted\n\tstate.allowAnon = this.isAuthorized(authorizationType,null);\n\t// Authenticate with the first active authenticator\n\tif(this.authenticators.length > 0) {\n\t\tif(!this.authenticators[0].authenticateRequest(request,response,state)) {\n\t\t\t// Bail if we failed (the authenticator will have sent the response)\n\t\t\treturn;\n\t\t}\t\t\n\t}\n\t// Authorize with the authenticated username\n\tif(!this.isAuthorized(authorizationType,state.authenticatedUsername)) {\n\t\tresponse.writeHead(401,\"'\" + state.authenticatedUsername + \"' is not authorized to access '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Find the route that matches this path\n\tvar route = self.findMatchingRoute(request,state);\n\t// Optionally output debug info\n\tif(self.get(\"debug-level\") !== \"none\") {\n\t\tconsole.log(\"Request path:\",JSON.stringify(state.urlInfo));\n\t\tconsole.log(\"Request headers:\",JSON.stringify(request.headers));\n\t\tconsole.log(\"authenticatedUsername:\",state.authenticatedUsername);\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// Receive the request body if necessary and hand off to the route handler\n\tif(route.bodyFormat === \"stream\" || request.method === \"GET\" || request.method === \"HEAD\") {\n\t\t// Let the route handle the request stream itself\n\t\troute.handler(request,response,state);\n\t} else if(route.bodyFormat === \"string\" || !route.bodyFormat) {\n\t\t// Set the encoding for the incoming request\n\t\trequest.setEncoding(\"utf8\");\n\t\tvar data = \"\";\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata += chunk.toString();\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = data;\n\t\t\troute.handler(request,response,state);\n\t\t});\n\t} else if(route.bodyFormat === \"buffer\") {\n\t\tvar data = [];\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata.push(chunk);\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = Buffer.concat(data);\n\t\t\troute.handler(request,response,state);\n\t\t})\n\t} else {\n\t\tresponse.writeHead(400,\"Invalid bodyFormat \" + route.bodyFormat + \" in route \" + route.method + \" \" + route.path.source);\n\t\tresponse.end();\n\t}\n};\n\n/*\nListen for requests\nport: optional port number (falls back to value of \"port\" variable)\nhost: optional host address (falls back to value of \"host\" variable)\nprefix: optional prefix (falls back to value of \"path-prefix\" variable)\n*/\nServer.prototype.listen = function(port,host,prefix) {\n\tvar self = this;\n\t// Handle defaults for port and host\n\tport = port || this.get(\"port\");\n\thost = host || this.get(\"host\");\n\tprefix = prefix || this.get(\"path-prefix\") || \"\";\n\t// Check for the port being a string and look it up as an environment variable\n\tif(parseInt(port,10).toString() !== port) {\n\t\tport = process.env[port] || 8080;\n\t}\n\t// Warn if required plugins are missing\n\tif(!this.wiki.getTiddler(\"$:/plugins/tiddlywiki/tiddlyweb\") || !this.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// Create the server\n\tvar server;\n\tif(this.listenOptions) {\n\t\tserver = this.transport.createServer(this.listenOptions,this.requestHandler.bind(this));\n\t} else {\n\t\tserver = this.transport.createServer(this.requestHandler.bind(this));\n\t}\n\t// Display the port number after we've started listening (the port number might have been specified as zero, in which case we will get an assigned port)\n\tserver.on(\"listening\",function() {\n\t\tvar address = server.address();\n\t\t$tw.utils.log(\"Serving on \" + self.protocol + \"://\" + address.address + \":\" + address.port + prefix,\"brown/orange\");\n\t\t$tw.utils.log(\"(press ctrl-C to exit)\",\"red\");\n\t});\n\t// Listen\n\treturn server.listen(port,host);\n};\n\nexports.Server = Server;\n\n})();\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/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\t// console.log(\"browser-messaging: \",document.location.toString())\n\t\t// console.log(\"browser-messaging: Received message from\",event.origin);\n\t\t// console.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/CSSescape.js": {
"title": "$:/core/modules/startup/CSSescape.js",
"text": "/*\\\ntitle: $:/core/modules/startup/CSSescape.js\ntype: application/javascript\nmodule-type: startup\n\nPolyfill for CSS.escape()\n\n\\*/\n(function(root,factory){\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"css-escape\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */\n// https://github.com/umdjs/umd/blob/master/returnExports.js\nexports.startup = function() {factory(root);}; \n}(typeof global != 'undefined' ? global : this, function(root) {\n\n\tif (root.CSS && root.CSS.escape) {\n\t\treturn;\n\t}\n\n\t// https://drafts.csswg.org/cssom/#serialize-an-identifier\n\tvar cssEscape = function(value) {\n\t\tif (arguments.length == 0) {\n\t\t\tthrow new TypeError('`CSS.escape` requires an argument.');\n\t\t}\n\t\tvar string = String(value);\n\t\tvar length = string.length;\n\t\tvar index = -1;\n\t\tvar codeUnit;\n\t\tvar result = '';\n\t\tvar firstCodeUnit = string.charCodeAt(0);\n\t\twhile (++index < length) {\n\t\t\tcodeUnit = string.charCodeAt(index);\n\t\t\t// Note: there’s no need to special-case astral symbols, surrogate\n\t\t\t// pairs, or lone surrogates.\n\n\t\t\t// If the character is NULL (U+0000), then the REPLACEMENT CHARACTER\n\t\t\t// (U+FFFD).\n\t\t\tif (codeUnit == 0x0000) {\n\t\t\t\tresult += '\\uFFFD';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is in the range [\\1-\\1F] (U+0001 to U+001F) or is\n\t\t\t\t// U+007F, […]\n\t\t\t\t(codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||\n\t\t\t\t// If the character is the first character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039), […]\n\t\t\t\t(index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||\n\t\t\t\t// If the character is the second character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039) and the first character is a `-` (U+002D), […]\n\t\t\t\t(\n\t\t\t\t\tindex == 1 &&\n\t\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 &&\n\t\t\t\t\tfirstCodeUnit == 0x002D\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n\t\t\t\tresult += '\\\\' + codeUnit.toString(16) + ' ';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is the first character and is a `-` (U+002D), and\n\t\t\t\t// there is no second character, […]\n\t\t\t\tindex == 0 &&\n\t\t\t\tlength == 1 &&\n\t\t\t\tcodeUnit == 0x002D\n\t\t\t) {\n\t\t\t\tresult += '\\\\' + string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If the character is not handled by one of the above rules and is\n\t\t\t// greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or\n\t\t\t// is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to\n\t\t\t// U+005A), or [a-z] (U+0061 to U+007A), […]\n\t\t\tif (\n\t\t\t\tcodeUnit >= 0x0080 ||\n\t\t\t\tcodeUnit == 0x002D ||\n\t\t\t\tcodeUnit == 0x005F ||\n\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 ||\n\t\t\t\tcodeUnit >= 0x0041 && codeUnit <= 0x005A ||\n\t\t\t\tcodeUnit >= 0x0061 && codeUnit <= 0x007A\n\t\t\t) {\n\t\t\t\t// the character itself\n\t\t\t\tresult += string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Otherwise, the escaped character.\n\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character\n\t\t\tresult += '\\\\' + string.charAt(index);\n\n\t\t}\n\t\treturn result;\n\t};\n\n\tif (!root.CSS) {\n\t\troot.CSS = {};\n\t}\n\n\tObject.getPrototypeOf(root.CSS).escape = cssEscape;\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\",$tw.utils.makeDataUri(tiddler.fields.text,tiddler.fields.type,tiddler.fields._canonical_uri));\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\nvar TITLE_INFO_PLUGIN = \"$:/temp/info-plugin\";\n\nexports.startup = function() {\n\t// Function to bake the info plugin with new tiddlers\n\tvar updateInfoPlugin = function(tiddlerFieldsArray) {\n\t\t// Get the existing tiddlers\n\t\tvar json = $tw.wiki.getTiddlerData(TITLE_INFO_PLUGIN,{tiddlers: {}});\n\t\t// Add the new ones\n\t\t$tw.utils.each(tiddlerFieldsArray,function(fields) {\n\t\t\tif(fields && fields.title) {\n\t\t\t\tjson.tiddlers[fields.title] = fields;\n\t\t\t}\n\t\t});\n\t\t// Bake the info tiddlers into a plugin. We use the non-standard plugin-type \"info\" because ordinary plugins are only registered asynchronously after being loaded dynamically\n\t\tvar fields = {\n\t\t\ttitle: TITLE_INFO_PLUGIN,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"info\",\n\t\t\ttext: JSON.stringify(json,null,$tw.config.preferences.jsonSpaces)\n\t\t};\n\t\t$tw.wiki.addTiddler(new $tw.Tiddler(fields));\n\n\t};\n\t// Collect up the info tiddlers\n\tvar tiddlerFieldsArray = [];\n\t// Give each info module a chance to provide as many info tiddlers as they want as an array, and give them a callback for dynamically updating them\n\t$tw.modules.forEachModuleOfType(\"info\",function(title,moduleExports) {\n\t\tif(moduleExports && moduleExports.getInfoTiddlerFields) {\n\t\t\tArray.prototype.push.apply(tiddlerFieldsArray,moduleExports.getInfoTiddlerFields(updateInfoPlugin));\n\t\t}\n\t});\n\tupdateInfoPlugin(tiddlerFieldsArray);\n\tvar changes = $tw.wiki.readPluginInfo([TITLE_INFO_PLUGIN]);\n\t$tw.wiki.registerPluginTiddlers(\"info\",[TITLE_INFO_PLUGIN]);\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\tif($tw.browser) {\n\t\t$tw.modules.applyMethods(\"utils-browser\",$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.wiki.addIndexersToWiki();\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/plugins.js": {
"title": "$:/core/modules/startup/plugins.js",
"text": "/*\\\ntitle: $:/core/modules/startup/plugins.js\ntype: application/javascript\nmodule-type: startup\n\nStartup logic concerned with managing plugins\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 = \"plugins\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE = \"$:/status/RequireReloadDueToPluginChange\";\n\nvar PREFIX_CONFIG_REGISTER_PLUGIN_TYPE = \"$:/config/RegisterPluginType/\";\n\nexports.startup = function() {\n\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"no\"});\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Work out which of the changed tiddlers are plugins that we need to reregister\n\t\tvar changesToProcess = [],\n\t\t\trequireReloadDueToPluginChange = false;\n\t\t$tw.utils.each(Object.keys(changes),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\t\trequiresReload = $tw.wiki.doesPluginRequireReload(title);\n\t\t\tif(requiresReload) {\n\t\t\t\trequireReloadDueToPluginChange = true;\n\t\t\t} else if(tiddler) {\n\t\t\t\tvar pluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif($tw.wiki.getTiddlerText(PREFIX_CONFIG_REGISTER_PLUGIN_TYPE + (tiddler.fields[\"plugin-type\"] || \"\"),\"no\") === \"yes\") {\n\t\t\t\t\tchangesToProcess.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\t// Issue warning if any of the tiddlers require a reload\n\t\tif(requireReloadDueToPluginChange) {\n\t\t\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"yes\"});\n\t\t}\n\t\t// Read or delete the plugin info of the changed tiddlers\n\t\tif(changesToProcess.length > 0) {\n\t\t\tvar changes = $tw.wiki.readPluginInfo(changesToProcess);\n\t\t\tif(changes.modifiedPlugins.length > 0 || changes.deletedPlugins.length > 0) {\n\t\t\t\tvar changedShadowTiddlers = {};\n\t\t\t\t// Collect the shadow tiddlers of any deleted plugins\n\t\t\t\t$tw.utils.each(changes.deletedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = true;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// Collect the shadow tiddlers of any modified plugins\n\t\t\t\t$tw.utils.each(changes.modifiedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = false;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// (Re-)register any modified plugins\n\t\t\t\t$tw.wiki.registerPluginTiddlers(null,changes.modifiedPlugins);\n\t\t\t\t// Unregister any deleted plugins\n\t\t\t\t$tw.wiki.unregisterPluginTiddlers(null,changes.deletedPlugins);\n\t\t\t\t// Unpack the shadow tiddlers\n\t\t\t\t$tw.wiki.unpackPluginTiddlers();\n\t\t\t\t// Queue change events for the changed shadow tiddlers\n\t\t\t\t$tw.utils.each(Object.keys(changedShadowTiddlers),function(title) {\n\t\t\t\t\t$tw.wiki.enqueueTiddlerEvent(title,changedShadowTiddlers[title]);\n\t\t\t\t});\n\t\t\t}\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/RootTemplate\";\n\n// Time (in ms) that we defer refreshing changes to draft tiddlers\nvar DRAFT_TIDDLER_TIMEOUT_TITLE = \"$:/config/Drafts/TypingTimeout\";\nvar THROTTLE_REFRESH_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, recursionMarker: \"no\"});\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// Remove any splash screen elements\n\tvar removeList = document.querySelectorAll(\".tc-remove-when-wiki-loaded\");\n\t$tw.utils.each(removeList,function(removeItem) {\n\t\tif(removeItem.parentNode) {\n\t\t\tremoveItem.parentNode.removeChild(removeItem);\n\t\t}\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.hooks.invokeHook(\"th-page-refreshing\");\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 tiddlers that are throttled have changed\n\t\tvar onlyThrottledTiddlersHaveChanged = 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\") || tiddler.hasField(\"throttle.refresh\"))) {\n\t\t\t\tonlyThrottledTiddlersHaveChanged = 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(onlyThrottledTiddlersHaveChanged) {\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 = THROTTLE_REFRESH_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\t// Run any post-render startup actions\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/PostRender\");\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, event: event});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-show-switcher\",function(event) {\n\t\t$tw.modal.display(\"$:/core/ui/SwitcherModal\",{variables: event.paramObject, event: event});\n\t});\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 tm-focus-selector message\n\t$tw.rootWidget.addEventListener(\"tm-focus-selector\",function(event) {\n\t\tvar selector = event.param || \"\",\n\t\t\telement;\n\t\ttry {\n\t\t\telement = document.querySelector(selector);\n\t\t} catch(e) {\n\t\t\tconsole.log(\"Error in selector: \",selector)\n\t\t}\n\t\tif(element && element.focus) {\n\t\t\telement.focus(event.paramObject);\n\t\t}\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\tvar fullScreenDocument = event.event ? event.event.target.ownerDocument : document;\n\t\t\tif(event.param === \"enter\") {\n\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t} else if(event.param === \"exit\") {\n\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t} else {\n\t\t\t\tif(fullScreenDocument[fullscreen._fullscreenElement]) {\n\t\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t\t} else {\n\t\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t\t}\t\t\t\t\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\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.platform);\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// 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\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction\");\n\tif($tw.browser) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Browser\");\n\t}\n\tif($tw.node) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Node\");\n\t}\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-GB\"\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// Listen for shortcuts\n\tif($tw.browser) {\n\t\t$tw.utils.addEventListeners(document,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\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({\n\t\twiki: $tw.wiki,\n\t\tdirtyTracking: !$tw.syncadaptor,\n\t\tpreloadDirty: $tw.boot.preloadDirty || []\n\t});\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\"\nvar CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD = \"$:/config/Navigation/Permalinkview/CopyToClipboard\"; // Can be \"yes\" (default) or \"no\"\nvar CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/Permalinkview/UpdateAddressBar\"; // Can be \"yes\" (default) or \"no\"\n\n\n// Links to help, if there is no param\nvar HELP_OPEN_EXTERNAL_WINDOW = \"http://tiddlywiki.com/#WidgetMessage%3A%20tm-open-external-window\";\n\nexports.startup = function() {\n\t// Open startup tiddlers\n\topenStartupTiddlers({\n\t\tdisableHistory: $tw.boot.disableStartupNavigation\n\t});\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 tm-open-external-window message\n\t\t$tw.rootWidget.addEventListener(\"tm-open-external-window\",function(event) {\n\t\t\tvar paramObject = event.paramObject || {},\n\t\t\t\tstrUrl = event.param || HELP_OPEN_EXTERNAL_WINDOW,\n\t\t\t\tstrWindowName = paramObject.windowName,\n\t\t\t\tstrWindowFeatures = paramObject.windowFeatures;\n\t\t\twindow.open(strUrl, strWindowName, strWindowFeatures);\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]);\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: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\",\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\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\"\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: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\",\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\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\"\n\t\t\t});\t\t\t\t\n\t\t});\n\t}\n};\n\n/*\nProcess the location hash to open the specified tiddlers. Options:\ndisableHistory: if true $:/History is NOT updated\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// Update history\n\tvar story = new $tw.Story({\n\t\twiki: $tw.wiki,\n\t\tstoryTitle: DEFAULT_STORY_TITLE,\n\t\thistoryTitle: DEFAULT_HISTORY_TITLE\n\t});\n\tif(!options.disableHistory) {\n\t\t// If a target tiddler was specified add it to the history stack\n\t\tif(target && target !== \"\") {\n\t\t\t// The target tiddler doesn't need double square brackets, but we'll silently remove them if they're present\n\t\t\tif(target.indexOf(\"[[\") === 0 && target.substr(-2) === \"]]\") {\n\t\t\t\ttarget = target.substr(2,target.length - 4);\n\t\t\t}\n\t\t\tstory.addToHistory(target);\n\t\t} else if(storyList.length > 0) {\n\t\t\tstory.addToHistory(storyList[0]);\n\t\t}\t\t\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.copyToClipboard: \"permalink\", \"permaview\" or \"no\" (defaults to \"no\")\noptions.targetTiddler: optional title of target tiddler for permalink\n*/\nfunction updateLocationHash(options) {\n\t// Get the story and the history stack\n\tvar storyList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE),\n\t\thistoryList = $tw.wiki.getTiddlerData(DEFAULT_HISTORY_TITLE,[]),\n\t\ttargetTiddler = \"\";\n\tif(options.targetTiddler) {\n\t\ttargetTiddler = options.targetTiddler;\n\t} else {\n\t\t// The target tiddler is the one at the top of the stack\n\t\tif(historyList.length > 0) {\n\t\t\ttargetTiddler = historyList[historyList.length-1].title;\n\t\t}\n\t\t// Blank the target tiddler if it isn't present in the story\n\t\tif(storyList.indexOf(targetTiddler) === -1) {\n\t\t\ttargetTiddler = \"\";\n\t\t}\n\t}\n\t// Assemble the location hash\n\tswitch(options.updateAddressBar) {\n\t\tcase \"permalink\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler);\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList));\n\t\t\tbreak;\n\t}\n\t// Copy URL to the clipboard\n\tswitch(options.copyToClipboard) {\n\t\tcase \"permalink\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler));\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList)));\n\t\t\tbreak;\n\t}\n\t// Only change the location hash if we must, thus avoiding unnecessary onhashchange events\n\tif($tw.utils.getLocationHash() !== $tw.locationHash) {\n\t\tif(options.updateHistory === \"yes\") {\n\t\t\t// Assign the location hash so that history is updated\n\t\t\twindow.location.hash = $tw.locationHash;\n\t\t} else {\n\t\t\t// We use replace so that browser history isn't affected\n\t\t\twindow.location.replace(window.location.toString().split(\"#\")[0] + $tw.locationHash);\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)\n$tw.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\twindowTitle = paramObject.windowTitle || title,\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,\n\t\t srcDocument;\n\t\t// In case that popup blockers deny opening a new window\n\t\ttry {\n\t\t\tsrcWindow = window.open(\"\",\"external-\" + title,\"scrollbars,width=\" + width + \",height=\" + height),\n\t\t\tsrcDocument = srcWindow.document;\n\t\t}\n\t\tcatch(e) {\n\t\t\treturn;\n\t\t}\n\t\t$tw.windows[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 = windowTitle;\n\t\tsrcWindow.addEventListener(\"beforeunload\",function(event) {\n\t\t\tdelete $tw.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\t// Listen for keyboard shortcuts\n\t\t$tw.utils.addEventListeners(srcDocument,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t\tsrcWindow.document.documentElement.addEventListener(\"click\",$tw.popup,true);\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($tw.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 duration = $tw.utils.getAnimationDuration()\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\tif(duration) {\n\t\t// Scroll the node into view\n\t\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\t\n\t} else {\n\t\ttargetElement.scrollIntoView();\n\t}\n};\n\nClassicStoryView.prototype.insert = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar computedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Reset the margin once the transition is over\n\t\tsetTimeout(function() {\n\t\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t\t{transition: \"none\"},\n\t\t\t\t{marginBottom: \"\"}\n\t\t\t]);\n\t\t},duration);\n\t\t// Set up the initial position of the element\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t// Transition to the final position\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t]);\n\t}\n};\n\nClassicStoryView.prototype.remove = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode(),\n\t\t\tremoveElement = function() {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t};\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\tremoveElement();\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar currWidth = targetElement.offsetWidth,\n\t\t\tcomputedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Remove the dom nodes of the widget at the end of the transition\n\t\tsetTimeout(removeElement,duration);\n\t\t// Animate the closure\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"translateX(0px)\"},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{transform: \"translateX(-\" + currWidth + \"px)\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t} else {\n\t\twidget.removeChildDomNodes();\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\t$tw.utils.setStyle(widget.document.body,[\n\t\t\t{\"overflow-x\": \"\"}\n\t\t]);\n\t},duration);\n\t// Prevent the page from overscrolling due to the zoom factor\n\t$tw.utils.setStyle(widget.document.body,[\n\t\t{\"overflow-x\": \"hidden\"}\n\t]);\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 && 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 and synchronises them to a remote data store represented as a \"sync adaptor\"\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.titleIsAnonymous = \"$:/status/IsAnonymous\";\nSyncer.prototype.titleIsReadOnly = \"$:/status/IsReadOnly\";\nSyncer.prototype.titleUserName = \"$:/status/UserName\";\nSyncer.prototype.titleSyncFilter = \"$:/config/SyncFilter\";\nSyncer.prototype.titleSyncDisablePolling = \"$:/config/SyncDisablePolling\";\nSyncer.prototype.titleSyncPollingInterval = \"$:/config/SyncPollingInterval\";\nSyncer.prototype.titleSyncDisableLazyLoading = \"$:/config/SyncDisableLazyLoading\";\nSyncer.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\nSyncer.prototype.titleSyncThrottleInterval = \"$:/config/SyncThrottleInterval\";\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.errorRetryInterval = 5 * 1000; // Interval to retry after an error\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\t// Save parameters\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 || parseInt(this.wiki.getTiddlerText(this.titleSyncThrottleInterval,\"\"),10) || this.throttleInterval;\n\tthis.errorRetryInterval = options.errorRetryInterval || this.errorRetryInterval;\n\tthis.fallbackInterval = options.fallbackInterval || this.fallbackInterval;\n\tthis.pollTimerInterval = options.pollTimerInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncPollingInterval,\"\"),10) || 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\tcolour: \"cyan\",\n\t\tenable: this.logging,\n\t\tsaveHistory: true\n\t});\n\t// Make another logger for connection errors\n\tthis.loggerConnection = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\") + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\") + \"-connection\",{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging\n\t});\n\t// Ask the syncadaptor to use the main logger\n\tif(this.syncadaptor.setLoggerSaveBuffer) {\n\t\tthis.syncadaptor.setLoggerSaveBuffer(this.logger);\n\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\tthis.titlesToBeLoaded = {}; // Hashmap of titles of tiddlers that need loading from the server\n\tthis.titlesHaveBeenLazyLoaded = {}; // Hashmap of titles of tiddlers that have already been lazily loaded from the server\n\t// Timers\n\tthis.taskTimerId = null; // Timer for task dispatch\n\tthis.pollTimerId = null; // Timer for polling server\n\t// Number of outstanding requests\n\tthis.numTasksInProgress = 0;\n\t// Listen out for changes to tiddlers\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Filter the changes to just include ones that are being synced\n\t\tvar filteredChanges = self.getSyncedTiddlers(function(callback) {\n\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\tvar tiddler = self.wiki.tiddlerExists(title) && self.wiki.getTiddler(title);\n\t\t\t\tcallback(tiddler,title);\n\t\t\t});\n\t\t});\n\t\tif(filteredChanges.length > 0) {\n\t\t\tself.processTaskQueue();\n\t\t} else {\n\t\t\t// Look for deletions of tiddlers we're already syncing\n\t\t\tvar outstandingDeletion = false\n\t\t\t$tw.utils.each(changes,function(change,title,object) {\n\t\t\t\tif(change.deleted && $tw.utils.hop(self.tiddlerInfo,title)) {\n\t\t\t\t\toutstandingDeletion = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(outstandingDeletion) {\n\t\t\t\tself.processTaskQueue();\n\t\t\t}\n\t\t}\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(event) {\n\t\t\tvar username = event && event.paramObject && event.paramObject.username,\n\t\t\t\tpassword = event && event.paramObject && event.paramObject.password;\n\t\t\tif(username && password) {\n\t\t\t\t// Login with username and password\n\t\t\t\tself.login(username,password,function() {});\n\t\t\t} else {\n\t\t\t\t// No username and password, so we display a prompt\n\t\t\t\tself.handleLoginEvent();\n\t\t\t}\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\t$tw.rootWidget.addEventListener(\"tm-copy-syncer-logs-to-clipboard\",function() {\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getSystemInfo() + \"\\n\\nLog:\\n\" + self.logger.getBuffer());\n\t\t});\n\t}\n\t// Listen out for lazyLoad events\n\tif(!this.disableUI && this.wiki.getTiddlerText(this.titleSyncDisableLazyLoading) !== \"yes\") {\n\t\tthis.wiki.addEventListener(\"lazyLoad\",function(title) {\n\t\t\tself.handleLazyLoadEvent(title);\n\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/*\nShow a generic network error alert\n*/\nSyncer.prototype.displayError = function(msg,err) {\n\tif(err === ($tw.language.getString(\"Error/XMLHttpRequest\") + \": 0\")) {\n\t\tthis.loggerConnection.alert($tw.language.getString(\"Error/NetworkErrorAlert\"));\n\t\tthis.logger.log(msg + \":\",err);\n\t} else {\n\t\tthis.logger.alert(msg + \":\",err);\n\t}\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getSyncedTiddlers = function(source) {\n\treturn this.filterFn.call(this.wiki,source);\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getTiddlerRevision = function(title) {\n\tif(this.syncadaptor && this.syncadaptor.getTiddlerRevision) {\n\t\treturn this.syncadaptor.getTiddlerRevision(title);\n\t} else {\n\t\treturn this.wiki.getTiddler(title).fields.revision;\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\t// \"revision\" is the revision of the tiddler last seen on the server, and \"changecount\" is the corresponding local changecount\n\tthis.tiddlerInfo = {};\n\t// Record information for known tiddlers\n\tvar self = this,\n\t\ttiddlers = this.getSyncedTiddlers();\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tself.tiddlerInfo[title] = {\n\t\t\t\trevision: self.getTiddlerRevision(title),\n\t\t\t\tadaptorInfo: self.syncadaptor && self.syncadaptor.getTiddlerInfo(tiddler),\n\t\t\t\tchangeCount: self.wiki.getChangeCount(title)\n\t\t\t};\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\tthis.logger.log(\"Checking dirty status\");\n\t// Check tiddlers that are in the store and included in the filter function\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(this.wiki.tiddlerExists(title)) {\n\t\t\tif(tiddlerInfo) {\n\t\t\t\t// If the tiddler is known on the server and has been modified locally then it needs to be saved to the server\n\t\t\t\tif(this.wiki.getChangeCount(title) > tiddlerInfo.changeCount) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// If the tiddler isn't known on the server then it needs to be saved to the server\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\t// Check tiddlers that are known from the server but not currently in the store\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\tif(!this.wiki.tiddlerExists(titles[index])) {\n\t\t\t// There must be a pending delete\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\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\tvar dirty = this.isDirty();\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",dirty);\n\t\tif(!dirty) {\n\t\t\tthis.loggerConnection.clearAlerts();\n\t\t}\n\t}\n};\n\n/*\nSave an incoming tiddler in the store, and updates the associated tiddlerInfo\n*/\nSyncer.prototype.storeTiddler = function(tiddlerFields) {\n\t// Save the tiddler\n\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\tthis.wiki.addTiddler(tiddler);\n\t// Save the tiddler revision and changeCount details\n\tthis.tiddlerInfo[tiddlerFields.title] = {\n\t\trevision: this.getTiddlerRevision(tiddlerFields.title),\n\t\tadaptorInfo: this.syncadaptor.getTiddlerInfo(tiddler),\n\t\tchangeCount: this.wiki.getChangeCount(tiddlerFields.title)\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,isReadOnly,isAnonymous,isPollingDisabled) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\t// Set the various status tiddlers\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsReadOnly,text: isReadOnly ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsAnonymous,text: isAnonymous ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsLoggedIn,text: isLoggedIn ? \"yes\" : \"no\"});\n\t\t\t\tif(isLoggedIn) {\n\t\t\t\t\tself.wiki.addTiddler({title: self.titleUserName,text: username || \"\"});\n\t\t\t\t}\n\t\t\t\tif(isPollingDisabled) {\n\t\t\t\t\tself.wiki.addTiddler({title: self.titleSyncDisablePolling, text: \"yes\"});\n\t\t\t\t}\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\tvar self = this,\n\t\tcancelNextSync = function() {\n\t\t\tif(self.pollTimerId) {\n\t\t\t\tclearTimeout(self.pollTimerId);\n\t\t\t\tself.pollTimerId = null;\n\t\t\t}\n\t\t},\n\t\ttriggerNextSync = function() {\n\t\t\tif(pollingEnabled) {\n\t\t\t\tself.pollTimerId = setTimeout(function() {\n\t\t\t\t\tself.pollTimerId = null;\n\t\t\t\t\tself.syncFromServer.call(self);\n\t\t\t\t},self.pollTimerInterval);\n\t\t\t}\n\t\t},\n\t\tsyncSystemFromServer = (self.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"yes\"),\n\t\tpollingEnabled = (self.wiki.getTiddlerText(self.titleSyncDisablePolling) !== \"yes\");\n\tif(this.syncadaptor && this.syncadaptor.getUpdatedTiddlers) {\n\t\tthis.logger.log(\"Retrieving updated tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getUpdatedTiddlers(self,function(err,updates) {\n\t\t\ttriggerNextSync();\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif(updates) {\n\t\t\t\t$tw.utils.each(updates.modifications,function(title) {\n\t\t\t\t\tself.titlesToBeLoaded[title] = true;\n\t\t\t\t});\n\t\t\t\t$tw.utils.each(updates.deletions,function(title) {\n\t\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(updates.modifications.length > 0 || updates.deletions.length > 0) {\n\t\t\t\t\tself.processTaskQueue();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else if(this.syncadaptor && this.syncadaptor.getSkinnyTiddlers) {\n\t\tthis.logger.log(\"Retrieving skinny tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getSkinnyTiddlers(function(err,tiddlers) {\n\t\t\ttriggerNextSync();\n\t\t\t// Check for errors\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Keep track of which tiddlers we already know about have been reported this time\n\t\t\tvar previousTitles = Object.keys(self.tiddlerInfo);\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.tiddlerExists(tiddlerFields.title) && 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\tindexInPreviousTitles = previousTitles.indexOf(tiddlerFields.title);\n\t\t\t\tif(indexInPreviousTitles !== -1) {\n\t\t\t\t\tpreviousTitles.splice(indexInPreviousTitles,1);\n\t\t\t\t}\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// Only load the skinny version if we don't already have a fat version of the tiddler\n\t\t\t\t\tif(!tiddler || tiddler.fields.text === undefined) {\n\t\t\t\t\t\tself.storeTiddler(tiddlerFields);\n\t\t\t\t\t}\n\t\t\t\t\t// Do a full load of this tiddler\n\t\t\t\t\tself.titlesToBeLoaded[tiddlerFields.title] = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Delete any tiddlers that were previously reported but missing this time\n\t\t\t$tw.utils.each(previousTitles,function(title) {\n\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t});\n\t\t\tself.processTaskQueue();\n\t\t});\n\t}\n};\n\n/*\nForce load a tiddler from the server\n*/\nSyncer.prototype.enqueueLoadTiddler = function(title) {\n\tthis.titlesToBeLoaded[title] = true;\n\tthis.processTaskQueue();\n};\n\n/*\nLazily load a skinny tiddler if we can\n*/\nSyncer.prototype.handleLazyLoadEvent = function(title) {\n\t// Ignore if the syncadaptor doesn't handle it\n\tif(!this.syncadaptor.supportsLazyLoading) {\n\t\treturn;\n\t}\n\t// Don't lazy load the same tiddler twice\n\tif(!this.titlesHaveBeenLazyLoaded[title]) {\n\t\t// Don't lazy load if the tiddler isn't included in the sync filter\n\t\tif(this.getSyncedTiddlers().indexOf(title) !== -1) {\n\t\t\t// Mark the tiddler as needing loading, and having already been lazily loaded\n\t\t\tthis.titlesToBeLoaded[title] = true;\n\t\t\tthis.titlesHaveBeenLazyLoaded[title] = true;\n\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(!err && !isLoggedIn) {\n\t\t\tif(self.syncadaptor && self.syncadaptor.displayLoginPrompt) {\n\t\t\t\tself.syncadaptor.displayLoginPrompt(self);\n\t\t\t} else {\n\t\t\t\tself.displayLoginPrompt();\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nDispay a password prompt\n*/\nSyncer.prototype.displayLoginPrompt = function() {\n\tvar self = this;\n\tvar promptInfo = $tw.passwordPrompt.createPrompt({\n\t\tserviceName: $tw.language.getString(\"LoginToTiddlySpace\"),\n\t\tcallback: function(data) {\n\t\t\tself.login(data.username,data.password,function(err,isLoggedIn) {\n\t\t\t\tself.syncFromServer();\n\t\t\t});\n\t\t\treturn true; // Get rid of the password prompt\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(err,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/*\nProcess the next task\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\n\t// 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(typeof task === \"object\" && task !== null) {\n\t\t\tthis.numTasksInProgress += 1;\n\t\t\ttask.run(function(err) {\n\t\t\t\tself.numTasksInProgress -= 1;\n\t\t\t\tif(err) {\n\t\t\t\t\tself.displayError(\"Sync error while processing \" + task.type + \" of '\" + task.title + \"'\",err);\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\tself.triggerTimeout(self.errorRetryInterval);\n\t\t\t\t} else {\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\t// Process the next task\n\t\t\t\t\tself.processTaskQueue.call(self);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// No task is ready so update the status\n\t\t\tthis.updateDirtyStatus();\n\t\t\t// And trigger a timeout if there is a pending task\n\t\t\tif(task === true) {\n\t\t\t\tthis.triggerTimeout();\n\t\t\t}\n\t\t}\n\t} else {\n\t\tthis.updateDirtyStatus();\n\t}\n};\n\nSyncer.prototype.triggerTimeout = function(interval) {\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},interval || self.taskTimerInterval);\n\t}\n};\n\n/*\nChoose the next sync task. We prioritise saves, then deletes, then loads from the server\n\nReturns either a task object, null if there's no upcoming tasks, or the boolean true if there are pending tasks that aren't yet due\n*/\nSyncer.prototype.chooseNextTask = function() {\n\tvar thresholdLastSaved = (new Date()) - this.throttleInterval,\n\t\thavePending = null;\n\t// First we look for tiddlers that have been modified locally and need saving back to the server\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title),\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(tiddler) {\n\t\t\t// If the tiddler is not known on the server, or has been modified locally no more recently than the threshold then it needs to be saved to the server\n\t\t\tvar hasChanged = !tiddlerInfo || this.wiki.getChangeCount(title) > tiddlerInfo.changeCount,\n\t\t\t\tisReadyToSave = !tiddlerInfo || !tiddlerInfo.timestampLastSaved || tiddlerInfo.timestampLastSaved < thresholdLastSaved;\n\t\t\tif(hasChanged) {\n\t\t\t\tif(isReadyToSave) {\n\t\t\t\t\treturn new SaveTiddlerTask(this,title);\n\t\t\t\t} else {\n\t\t\t\t\thavePending = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Second, we check tiddlers that are known from the server but not currently in the store, and so need deleting on the server\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\ttitle = titles[index];\n\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\treturn new DeleteTiddlerTask(this,title);\n\t\t}\n\t}\n\t// Check for tiddlers that need loading\n\ttitle = Object.keys(this.titlesToBeLoaded)[0];\n\tif(title) {\n\t\tdelete this.titlesToBeLoaded[title];\n\t\treturn new LoadTiddlerTask(this,title);\n\t}\n\t// No tasks are ready\n\treturn havePending;\n};\n\nfunction SaveTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"save\";\n}\n\nSaveTiddlerTask.prototype.run = function(callback) {\n\tvar self = this,\n\t\tchangeCount = this.syncer.wiki.getChangeCount(this.title),\n\t\ttiddler = this.syncer.wiki.tiddlerExists(this.title) && this.syncer.wiki.getTiddler(this.title);\n\tthis.syncer.logger.log(\"Dispatching 'save' task:\",this.title);\n\tif(tiddler) {\n\t\tthis.syncer.syncadaptor.saveTiddler(tiddler,function(err,adaptorInfo,revision) {\n\t\t\t// If there's an error, exit without changing any internal state\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\t// Adjust the info stored about this tiddler\n\t\t\tself.syncer.tiddlerInfo[self.title] = {\n\t\t\t\tchangeCount: changeCount,\n\t\t\t\tadaptorInfo: adaptorInfo,\n\t\t\t\trevision: revision,\n\t\t\t\ttimestampLastSaved: new Date()\n\t\t\t};\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t},{\n\t\t\ttiddlerInfo: self.syncer.tiddlerInfo[self.title]\n\t\t});\n\t} else {\n\t\tthis.syncer.logger.log(\" Not Dispatching 'save' task:\",this.title,\"tiddler does not exist\");\n\t\t$tw.utils.nextTick(callback(null));\n\t}\n};\n\nfunction DeleteTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"delete\";\n}\n\nDeleteTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'delete' task:\",this.title);\n\tthis.syncer.syncadaptor.deleteTiddler(this.title,function(err) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Remove the info stored about this tiddler\n\t\tdelete self.syncer.tiddlerInfo[self.title];\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t},{\n\t\ttiddlerInfo: self.syncer.tiddlerInfo[this.title]\n\t});\n};\n\nfunction LoadTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"load\";\n}\n\nLoadTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'load' task:\",this.title);\n\tthis.syncer.syncadaptor.loadTiddler(this.title,function(err,tiddlerFields) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Update the info stored about this tiddler\n\t\tif(tiddlerFields) {\n\t\t\tself.syncer.storeTiddler(tiddlerFields);\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\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 the value of a field as a list\n*/\nexports.getFieldList = 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\treturn $tw.utils.parseStringArray(value);\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\t\tfields = Object.keys(this.fields).sort(),\n\t\tresult = [];\n\tfor(var t=0; t<fields.length; t++) {\n\t\tvar field = fields[t];\n\t\tif(exclude.indexOf(field) === -1) {\n\t\t\tresult.push(field + \": \" + this.getFieldString(field));\n\t\t}\n\t}\n\treturn result.join(\"\\n\");\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\"]) {\n\t\t\t// Check whether the plugin contains JS modules\n\t\t\tvar requiresReload = wiki.doesPluginInfoRequireReload(JSON.parse(incomingTiddler.text)) ? (wiki.getTiddlerText(\"$:/language/ControlPanel/Plugins/PluginWillRequireReload\") + \" \") : \"\";\n\t\t\tmessages[title] = requiresReload;\n\t\t\tif(incomingTiddler.version) {\n\t\t\t\t// Upgrade the incoming plugin if it is in the upgrade library\n\t\t\t\tvar libraryTiddler = getLibraryTiddler(title);\n\t\t\t\tif(libraryTiddler && libraryTiddler[\"plugin-type\"] && libraryTiddler.version) {\n\t\t\t\t\ttiddlers[title] = libraryTiddler;\n\t\t\t\t\tmessages[title] = requiresReload + $tw.language.getString(\"Import/Upgrader/Plugins/Upgraded\",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t// Suppress the incoming plugin if it is older than the currently installed one\n\t\t\t\tvar existingTiddler = wiki.getTiddler(title);\n\t\t\t\tif(existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t\t\t\t// Reject the incoming plugin by blanking all its fields\n\t\t\t\t\tif($tw.utils.checkVersions(existingTiddler.fields.version,incomingTiddler.version)) {\n\t\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\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\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\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/\",\"$:/Import\"],\n\tWARN_IMPORT_PREFIX_LIST = [\"$:/core/modules/\"];\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tshowAlert = false;\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\tfor(var t=0; t<WARN_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = WARN_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix && wiki.isShadowTiddler(title)) {\n\t\t\t\t\tshowAlert = true;\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Warning\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\tif(showAlert) {\n\t\tvar logger = new $tw.utils.Logger(\"import\");\n\t\tlogger.alert($tw.language.getString(\"Import/Upgrader/System/Alert\"));\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/base64-utf8/base64-utf8.module.js": {
"text": "(function(){// From https://gist.github.com/Nijikokun/5192472\n//\n// UTF8 Module\n//\n// Cleaner and modularized utf-8 encoding and decoding library for javascript.\n//\n// copyright: MIT\n// author: Nijiko Yonskai, @nijikokun, nijikokun@gmail.com\n!function(r,e,o,t){void 0!==o.module&&o.module.exports?o.module.exports=e.apply(o):void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"utf8\",[],e):o.utf8=e.apply(o)}(0,function(){return{encode:function(r){if(\"string\"!=typeof r)return r;r=r.replace(/\\r\\n/g,\"\\n\");for(var e,o=\"\",t=0;t<r.length;t++)if((e=r.charCodeAt(t))<128)o+=String.fromCharCode(e);else if(e>127&&e<2048)o+=String.fromCharCode(e>>6|192),o+=String.fromCharCode(63&e|128);else if(e>55295&&e<57344&&r.length>t+1){var i=e,n=r.charCodeAt(t+1);t++;var d=65536+(i-55296<<10|n-56320);o+=String.fromCharCode(d>>18|240),o+=String.fromCharCode(d>>12&63|128),o+=String.fromCharCode(d>>6&63|128),o+=String.fromCharCode(63&d|128)}else o+=String.fromCharCode(e>>12|224),o+=String.fromCharCode(e>>6&63|128),o+=String.fromCharCode(63&e|128);return o},decode:function(r){if(\"string\"!=typeof r)return r;for(var e=\"\",o=0,t=0;o<r.length;)if((t=r.charCodeAt(o))<128)e+=String.fromCharCode(t),o++;else if(t>191&&t<224)e+=String.fromCharCode((31&t)<<6|63&r.charCodeAt(o+1)),o+=2;else if(t>223&&t<240)e+=String.fromCharCode((15&t)<<12|(63&r.charCodeAt(o+1))<<6|63&r.charCodeAt(o+2)),o+=3;else{var i=(7&t)<<18|(63&r.charCodeAt(o+1))<<12|(63&r.charCodeAt(o+2))<<6|63&r.charCodeAt(o+3);e+=String.fromCharCode(55296+(i-65536>>10))+String.fromCharCode(56320+(i-65536&1023)),o+=4}return e}}},this),function(r,e,o,t){if(void 0!==o.module&&o.module.exports){if(t&&o.require)for(var i=0;i<t.length;i++)o[t[i]]=o.require(t[i]);o.module.exports=e.apply(o)}else void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"base64\",t||[],e):o.base64=e.apply(o)}(0,function(r){var e=r||this.utf8,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";return{encode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=e.encode(r);for(var t,i,n,d,f,a,h,C=\"\",c=0;c<r.length;)d=(t=r.charCodeAt(c++))>>2,f=(3&t)<<4|(i=r.charCodeAt(c++))>>4,a=(15&i)<<2|(n=r.charCodeAt(c++))>>6,h=63&n,isNaN(i)?a=h=64:isNaN(n)&&(h=64),C+=o.charAt(d)+o.charAt(f)+o.charAt(a)+o.charAt(h);return C},decode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=r.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");for(var t,i,n,d,f,a,h=\"\",C=0;C<r.length;)t=o.indexOf(r.charAt(C++))<<2|(d=o.indexOf(r.charAt(C++)))>>4,i=(15&d)<<4|(f=o.indexOf(r.charAt(C++)))>>2,n=(3&f)<<6|(a=o.indexOf(r.charAt(C++))),h+=String.fromCharCode(t),64!=f&&(h+=String.fromCharCode(i)),64!=a&&(h+=String.fromCharCode(n));return e.decode(h)}}},this,[\"utf8\"]);}).call(exports);",
"type": "application/javascript",
"title": "$:/core/modules/utils/base64-utf8/base64-utf8.module.js",
"module-type": "library"
},
"$:/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/csv.js": {
"title": "$:/core/modules/utils/csv.js",
"text": "/*\\\ntitle: $:/core/modules/utils/csv.js\ntype: application/javascript\nmodule-type: utils\n\nA barebones CSV parser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a CSV string with a header row and return an array of hashmaps.\n*/\nexports.parseCsvStringWithHeader = function(text,options) {\n\toptions = options || {};\n\tvar separator = options.separator || \",\",\n\t\trows = text.split(/\\r?\\n/mg).map(function(row) {\n\t\t\treturn $tw.utils.trim(row);\n\t\t}).filter(function(row) {\n\t\t\treturn row !== \"\";\n\t\t});\n\tif(rows.length < 1) {\n\t\treturn \"Missing header row\";\n\t}\n\tvar headings = rows[0].split(separator),\n\t\tresults = [];\n\tfor(var row=1; row<rows.length; row++) {\n\t\tvar columns = rows[row].split(separator),\n\t\t\tcolumnResult = Object.create(null);\n\t\tif(columns.length !== headings.length) {\n\t\t\treturn \"Malformed CSV row '\" + rows[row] + \"'\";\n\t\t}\n\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\tvar columnName = headings[column];\n\t\t\tcolumnResult[columnName] = $tw.utils.trim(columns[column] || \"\");\n\t\t}\n\t\tresults.push(columnResult);\t\t\t\n\t}\n\treturn results;\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,\"&\").replace(d,\"<\").replace(e,\">\").replace(f,\"¶<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.hasAttribute && el.hasAttribute(\"class\") && el.getAttribute(\"class\").split(\" \").indexOf(className) !== -1;\n};\n\nexports.addClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \");\n\tif(c.indexOf(className) === -1) {\n\t\tc.push(className);\n\t\tel.setAttribute(\"class\",c.join(\" \"));\n\t}\n};\n\nexports.removeClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \"),\n\t\tp = c.indexOf(className);\n\tif(p !== -1) {\n\t\tc.splice(p,1);\n\t\tel.setAttribute(\"class\",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(srcWindow) {\n\tvar scrollWindow = srcWindow || window;\n\tif(\"scrollX\" in scrollWindow) {\n\t\treturn {x: scrollWindow.scrollX, y: scrollWindow.scrollY};\n\t} else {\n\t\treturn {x: scrollWindow.document.documentElement.scrollLeft, y: scrollWindow.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(element.ownerDocument.defaultView),\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\tvar done = false;\n\ttry {\n\t\twindow.localStorage.setItem(\"tw5-password-\" + name,password);\n\t\tdone = true;\n\t} catch(e) {\n\t}\n\tif(!done) {\n\t\t$tw.savedPasswords = $tw.savedPasswords || Object.create(null);\n\t\t$tw.savedPasswords[name] = password;\n\t}\n};\n\n/*\nRetrieve a named password from the browser\n*/\nexports.getPassword = function(name) {\n\tvar value;\n\ttry {\n\t\tvalue = window.localStorage.getItem(\"tw5-password-\" + name);\n\t} catch(e) {\n\t}\n\tif(value !== undefined) {\n\t\treturn value;\n\t} else {\n\t\treturn ($tw.savedPasswords || Object.create(null))[name] || \"\";\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\nexports.getLocationPath = function() {\n\treturn window.location.toString().split(\"#\")[0];\n};\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\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Available data types:\");\n\t\tfor(var type=0; type<dataTransfer.types.length; type++) {\n\t\t\tconsole.log(\"type\",dataTransfer.types[type],dataTransfer.getData(dataTransfer.types[type]))\n\t\t}\n\t}\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\theaders: hashmap of headers to send\n\ttype: GET, PUT, POST etc\n\tcallback: function invoked with (err,data,xhr)\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\turl = options.url,\n\t\theaders = options.headers || {accept: \"application/json\"},\n\t\thasHeader = function(targetHeader) {\n\t\t\ttargetHeader = targetHeader.toLowerCase();\n\t\t\tvar result = false;\n\t\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\t\tif(headerTitle.toLowerCase() === targetHeader) {\n\t\t\t\t\tresult = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn result;\n\t\t},\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\tif(type === \"GET\" || type === \"HEAD\") {\n\t\t\t\turl += \"?\" + results.join(\"&\");\n\t\t\t} else {\n\t\t\t\tdata = results.join(\"&\");\n\t\t\t}\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,null,this);\n\t\t}\n\t};\n\t// Make the request\n\trequest.open(type,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 && !hasHeader(\"Content-Type\")) {\n\t\trequest.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded; charset=UTF-8\");\n\t}\n\tif(!hasHeader(\"X-Requested-With\")) {\n\t\trequest.setRequestHeader(\"X-Requested-With\",\"TiddlyWiki\");\n\t}\n\ttry {\n\t\trequest.send(data);\n\t} catch(e) {\n\t\toptions.callback(e,null,this);\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\");\nvar navigator = require(\"$:/core/modules/widgets/navigator.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\tthis.srcDocument = options.variables && (options.variables.rootwindow === \"true\" ||\n\t\t\t\toptions.variables.rootwindow === \"yes\") ? document :\n\t\t\t\t(options.event && options.event.event && options.event.event.target ? options.event.event.target.ownerDocument : document);\n\tthis.srcWindow = this.srcDocument.defaultView;\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({\n\t\t\tcurrentTiddler: title,\n\t\t\t\"tv-story-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-story-list\") : \"\"),\n\t\t\t\"tv-history-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-history-list\") : \"\")\n\t\t},options.variables);\n\n\t// Create the wrapper divs\n\tvar wrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalBackdrop = this.srcDocument.createElement(\"div\"),\n\t\tmodalWrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalHeader = this.srcDocument.createElement(\"div\"),\n\t\theaderTitle = this.srcDocument.createElement(\"h3\"),\n\t\tmodalBody = this.srcDocument.createElement(\"div\"),\n\t\tmodalLink = this.srcDocument.createElement(\"a\"),\n\t\tmodalFooter = this.srcDocument.createElement(\"div\"),\n\t\tmodalFooterHelp = this.srcDocument.createElement(\"span\"),\n\t\tmodalFooterButtons = this.srcDocument.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\tif(tiddler.fields && tiddler.fields.class) {\n\t\t$tw.utils.addClass(wrapper,tiddler.fields.class);\n\t}\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\tvar navigatorTree = {\n\t\t\"type\": \"navigator\",\n\t\t\"attributes\": {\n\t\t\t\"story\": {\n\t\t\t\t\"name\": \"story\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-story-list\"]\n\t\t\t},\n\t\t\t\"history\": {\n\t\t\t\t\"name\": \"history\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-history-list\"]\n\t\t\t}\n\t\t},\n\t\t\"tag\": \"$navigator\",\n\t\t\"isBlock\": true,\n\t\t\"children\": []\n\t};\n\tvar navigatorWidgetNode = new navigator.navigator(navigatorTree, {\n\t\twiki: this.wiki,\n\t\tdocument : this.srcDocument,\n\t\tparentWidget: $tw.rootWidget\n\t});\n\tnavigatorWidgetNode.render(modalBody,null);\n\t\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: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\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: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\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(this.srcDocument.createTextNode(\"Right-click to save changes\"));\n\t\tmodalBody.appendChild(modalLink);\n\t}\n\t// Render the footer of the message\n\tif(tiddler.fields && tiddler.fields.help) {\n\t\tvar link = this.srcDocument.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(this.srcDocument.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: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\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(\" + self.srcWindow.innerHeight + \"px)\"}\n\t\t]);\n\t\t// Set up an event for the transition end\n\t\tself.srcWindow.setTimeout(function() {\n\t\t\tif(wrapper.parentNode) {\n\t\t\t\t// Remove the modal message from the DOM\n\t\t\t\tself.srcDocument.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(\" + (-this.srcWindow.innerHeight) + \"px)\"}\n\t]);\n\t// Put the message into the document\n\tthis.srcDocument.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\tvar windowContainer = $tw.pageContainer ? ($tw.pageContainer === this.srcDocument.body.firstChild ? $tw.pageContainer : this.srcDocument.body.firstChild) : null;\n\tif(windowContainer) {\n\t\t$tw.utils.toggleClass(windowContainer,\"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 (one of domNode or domNodeRect is required)\n\tdomNodeRect: rectangle 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\tfloating: if true, skips registering the popup, meaning that it will need manually clearing\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\n\t// Store the popup details if not already there\n\tif(!options.floating && 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\tnoStateReference: options.noStateReference\n\t\t});\n\t}\n\t// Set the state tiddler\n\tvar rect;\n\tif(options.domNodeRect) {\n\t\trect = options.domNodeRect;\n\t} else {\n\t\trect = {\n\t\t\tleft: options.domNode.offsetLeft,\n\t\t\ttop: options.domNode.offsetTop,\n\t\t\twidth: options.domNode.offsetWidth,\n\t\t\theight: options.domNode.offsetHeight\n\t\t};\n\t}\n\tvar popupRect = \"(\" + rect.left + \",\" + rect.top + \",\" + \n\t\t\t\trect.width + \",\" + rect.height + \")\";\n\tif(options.noStateReference) {\n\t\toptions.wiki.setText(options.title,\"text\",undefined,popupRect);\n\t} else {\n\t\toptions.wiki.setTextReference(options.title,popupRect);\n\t}\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\tif(popup.noStateReference) {\n\t\t\t\tpopup.wiki.deleteTiddler(popup.title);\n\t\t\t} else {\n\t\t\t\tpopup.wiki.deleteTiddler($tw.utils.parseTextReference(popup.title).title);\n \t\t}\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.isScrolling = function() {\n\treturn this.idRequestFrame !== null;\n}\n\nPageScroller.prototype.cancelScroll = function(srcWindow) {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(srcWindow,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\tif(event.paramObject && event.paramObject.selector) {\n\t\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t\t} else {\n\t\t\tthis.scrollIntoView(event.target);\t\t\t\n\t\t}\n\t\treturn false; // Event was handled\n\t}\n\treturn true;\n};\n\n/*\nHandle a scroll event hitting the page document\n*/\nPageScroller.prototype.scrollIntoView = function(element,callback) {\n\tvar self = this,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t srcWindow = element ? element.ownerDocument.defaultView : window;\n\t// Now get ready to scroll the body\n\tthis.cancelScroll(srcWindow);\n\tthis.startTime = Date.now();\n\t// Get the height of any position:fixed toolbars\n\tvar toolbar = srcWindow.document.querySelector(\".tc-adjust-top-of-scroll\"),\n\t\toffset = 0;\n\tif(toolbar) {\n\t\toffset = toolbar.offsetHeight;\n\t}\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar getBounds = function() {\n\t\t\tvar clientBounds = typeof callback === 'function' ? callback() : element.getBoundingClientRect(),\n\t\t\t\tscrollPosition = $tw.utils.getScrollPosition(srcWindow);\n\t\t\treturn {\n\t\t\t\tleft: clientBounds.left + scrollPosition.x,\n\t\t\t\ttop: clientBounds.top + scrollPosition.y - offset,\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(srcWindow);\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(srcWindow),\n\t\t\t\tbounds = getBounds(),\n\t\t\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,srcWindow.innerWidth),\n\t\t\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,srcWindow.innerHeight);\n\t\t\tsrcWindow.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(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\tdrawFrame();\n};\n\nPageScroller.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\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_Node = function (){\n\tthrow TypeError(\"Illegal constructor\");\n};\n\nObject.defineProperty(TW_Node.prototype, 'ELEMENT_NODE', {\n\tget: function() {\n\t\treturn 1;\n\t}\n});\n\nObject.defineProperty(TW_Node.prototype, 'TEXT_NODE', {\n\tget: function() {\n\t\treturn 3;\n\t}\n});\n\nvar TW_TextNode = function(text) {\n\tbumpSequenceNumber(this);\n\tthis.textContent = text + \"\";\n};\n\nTW_TextNode.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_TextNode.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.TEXT_NODE;\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\nTW_Element.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_Element.prototype, \"style\", {\n\tget: function() {\n\t\treturn this._style;\n\t},\n\tset: function(str) {\n\t\tvar self = this;\n\t\tstr = str || \"\";\n\t\t$tw.utils.each(str.split(\";\"),function(declaration) {\n\t\t\tvar parts = declaration.split(\":\"),\n\t\t\t\tname = $tw.utils.trim(parts[0]),\n\t\t\t\tvalue = $tw.utils.trim(parts[1]);\n\t\t\tif(name && value) {\n\t\t\t\tself._style[$tw.utils.convertStyleNameToPropertyName(name)] = value;\n\t\t\t}\n\t\t});\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.ELEMENT_NODE;\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($tw.utils.convertPropertyNameToStyleName(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/*\nReturn the subdirectories of a path\n*/\nexports.getSubdirectories = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn null;\n\t}\n\tvar subdirs = [];\n\t$tw.utils.each(fs.readdirSync(dirPath),function(item) {\n\t\tif($tw.utils.isDirectory(path.resolve(dirPath,item))) {\n\t\t\tsubdirs.push(item);\n\t\t}\n\t});\n\treturn subdirs;\n}\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 = path.resolve($tw.utils.removeTrailingSeparator(srcPath));\n\tdstPath = path.resolve($tw.utils.removeTrailingSeparator(dstPath));\n\t// Check that neither director is within the other\n\tif(srcPath.substring(0,dstPath.length) === dstPath || dstPath.substring(0,srcPath.length) === srcPath) {\n\t\treturn \"Cannot copy nested directories\";\n\t}\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 = Buffer.alloc(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/*\nCreate a fileInfo object for saving a tiddler:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file on disk (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n\tisEditableFile: true if the tiddler was loaded via non-standard options & marked editable\nOptions include:\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\textFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters,\n\tfileInfo: an existing fileInfo to check against\n\toriginalpath: a preferred filepath if no pathFilters match\n*/\nexports.generateTiddlerFileInfo = function(tiddler,options) {\n\tvar fileInfo = {}, metaExt;\n\t// Propagate the isEditableFile flag\n\tif(options.fileInfo) {\n\t\tfileInfo.isEditableFile = options.fileInfo.isEditableFile || false;\n\t}\n\t// Check if the tiddler has any unsafe fields that can't be expressed in a .tid or .meta file: containing control characters, or leading/trailing whitespace\n\tvar hasUnsafeFields = false;\n\t$tw.utils.each(tiddler.getFieldStrings(),function(value,fieldName) {\n\t\tif(fieldName !== \"text\") {\n\t\t\thasUnsafeFields = hasUnsafeFields || /[\\x00-\\x1F]/mg.test(value);\n\t\t\thasUnsafeFields = hasUnsafeFields || ($tw.utils.trim(value) !== value);\n\t\t}\n\t});\n\t// Check for field values \n\tif(hasUnsafeFields) {\n\t\t// Save as a JSON file\n\t\tfileInfo.type = \"application/json\";\n\t\tfileInfo.hasMetaFile = false;\n\t} else {\n\t\t// Save as a .tid or a text/binary file plus a .meta file\n\t\tvar tiddlerType = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\tif(tiddlerType === \"text/vnd.tiddlywiki\") {\n\t\t\t// Save as a .tid file\n\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\tfileInfo.hasMetaFile = false;\n\t\t} else {\n\t\t\t// Save as a text/binary file and a .meta file\n\t\t\tfileInfo.type = tiddlerType;\n\t\t\tfileInfo.hasMetaFile = true;\n\t\t}\n\t\tif(options.extFilters) {\n\t\t\t// Check for extension override\n\t\t\tmetaExt = $tw.utils.generateTiddlerExtension(tiddler.fields.title,{\n\t\t\t\textFilters: options.extFilters,\n\t\t\t\twiki: options.wiki\n\t\t\t});\n\t\t\tif(metaExt) {\n\t\t\t\tif(metaExt === \".tid\") {\n\t\t\t\t\t// Overriding to the .tid extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else if (metaExt === \".json\") {\n\t\t\t\t\t// Overriding to the .json extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/json\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else {\n\t\t\t\t\t//If the new type matches a known extention, use that MIME type's encoding\n\t\t\t\t\tvar extInfo = $tw.utils.getFileExtensionInfo(metaExt);\n\t\t\t\t\tfileInfo.type = extInfo ? extInfo.type : null;\n\t\t\t\t\tfileInfo.encoding = $tw.utils.getTypeEncoding(metaExt);\n\t\t\t\t\tfileInfo.hasMetaFile = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Take the file extension from the tiddler content type or metaExt\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[fileInfo.type] || {extension: \"\"};\n\t// Generate the filepath\n\tfileInfo.filepath = $tw.utils.generateTiddlerFilepath(tiddler.fields.title,{\n\t\textension: metaExt || contentTypeInfo.extension,\n\t\tdirectory: options.directory,\n\t\tpathFilters: options.pathFilters,\n\t\twiki: options.wiki,\n\t\tfileInfo: options.fileInfo,\n\t\toriginalpath: options.originalpath\n\t});\n\treturn fileInfo;\n};\n\n/*\nGenerate the file extension for saving a tiddler\nOptions include:\n\textFilters: optional array of filters to be used to generate the extention\n\twiki: optional wiki for evaluating the extFilters\n*/\nexports.generateTiddlerExtension = function(title,options) {\n\tvar self = this,\n\t\textension;\n\t// Check if any of the extFilters applies\n\tif(options.extFilters && options.wiki) { \n\t\t$tw.utils.each(options.extFilters,function(filter) {\n\t\t\tif(!extension) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\textension = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn extension;\n};\n\n/*\nGenerate the filepath for saving a tiddler\nOptions include:\n\textension: file extension to be added the finished filepath\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters\n\tfileInfo: an existing fileInfo object to check against\n*/\nexports.generateTiddlerFilepath = function(title,options) {\n\tvar self = this,\n\t\tdirectory = options.directory || \"\",\n\t\textension = options.extension || \"\",\n\t\toriginalpath = options.originalpath || \"\",\n\t\tfilepath;\t\n\t// Check if any of the pathFilters applies\n\tif(options.pathFilters && options.wiki) {\n\t\t$tw.utils.each(options.pathFilters,function(filter) {\n\t\t\tif(!filepath) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\tfilepath = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\tif(!filepath && originalpath !== \"\") {\n\t\t//Use the originalpath without the extension\n\t\tvar ext = path.extname(originalpath);\n\t\tfilepath = originalpath.substring(0,originalpath.length - ext.length);\n\t} else if(!filepath) {\n\t\tfilepath = title;\n\t\t// Remove any forward or backward slashes so we don't create directories\n\t\tfilepath = filepath.replace(/\\/|\\\\/g,\"_\");\n\t}\n\t//If the path does not start with \".\" or \"..\" and a path seperator, then\n\tif(!/^\\.{1,2}[/\\\\]/g.test(filepath)) {\n\t\t// Don't let the filename start with any dots because such files are invisible on *nix\n\t\tfilepath = filepath.replace(/^\\.+/g,\"_\");\n\t}\n\t// If the filepath already ends in the extension then remove it\n\tif(filepath.substring(filepath.length - extension.length) === extension) {\n\t\tfilepath = filepath.substring(0,filepath.length - extension.length);\n\t}\n\t// Remove any characters that can't be used in cross-platform filenames\n\tfilepath = $tw.utils.transliterate(filepath.replace(/<|>|~|\\:|\\\"|\\||\\?|\\*|\\^/g,\"_\"));\n\t// Truncate the filename if it is too long\n\tif(filepath.length > 200) {\n\t\tfilepath = filepath.substr(0,200);\n\t}\n\t// Truncate the extension if it is too long\n\tif(extension.length > 32) {\n\t\textension = extension.substr(0,32);\n\t}\n\t// If the resulting filename is blank (eg because the title is just punctuation characters)\n\tif(!filepath) {\n\t\t// ...then just use the character codes of the title\n\t\tfilepath = \"\";\t\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tif(filepath) {\n\t\t\t\tfilepath += \"-\";\n\t\t\t}\n\t\t\tfilepath += char.charCodeAt(0).toString();\n\t\t});\n\t}\n\t// Add a uniquifier if the file already exists\n\tvar fullPath, oldPath = (options.fileInfo) ? options.fileInfo.filepath : undefined,\n\t\tcount = 0;\n\tdo {\n\t\tfullPath = path.resolve(directory,filepath + (count ? \"_\" + count : \"\") + extension);\n\t\tif(oldPath && oldPath == fullPath) {\n\t\t\tbreak;\n\t\t}\n\t\tcount++;\n\t} while(fs.existsSync(fullPath));\n\t// If the last write failed with an error, or if path does not start with:\n\t//\tthe resolved options.directory, the resolved wikiPath directory, or the wikiTiddlersPath directory, \n\t//\tthen encodeURIComponent() and resolve to tiddler directory\n\tvar writePath = $tw.hooks.invokeHook(\"th-make-tiddler-path\",fullPath),\n\t\tencode = (options.fileInfo || {writeError: false}).writeError == true;\n\tif(!encode) {\n\t\tencode = !(fullPath.indexOf(path.resolve(directory)) == 0 ||\n\t\t\tfullPath.indexOf(path.resolve($tw.boot.wikiPath)) == 0 ||\n\t\t\tfullPath.indexOf($tw.boot.wikiTiddlersPath) == 0);\n\t\t}\n\tif(encode) {\n\t\twritePath = path.resolve(directory,encodeURIComponent(fullPath));\n\t}\n\t// Return the full path to the file\n\treturn writePath;\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFile = function(tiddler,fileInfo,callback) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFile(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tfs.writeFile(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn callback(null,fileInfo);\n\t\t\t});\n\t\t});\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFile(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn callback(null,fileInfo);\n\t\t\t});\n\t\t} else {\n\t\t\tfs.writeFile(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn callback(null,fileInfo);\n\t\t\t});\n\t\t}\n\t}\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFileSync = function(tiddler,fileInfo) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFileSync(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding);\n\t\tfs.writeFileSync(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\");\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFileSync(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\");\n\t\t} else {\n\t\t\tfs.writeFileSync(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\");\n\t\t}\n\t}\n};\n\n/*\nDelete a file described by the fileInfo if it exits\n*/\nexports.deleteTiddlerFile = function(fileInfo,callback) {\n\t//Only attempt to delete files that exist on disk\n\tif(!fileInfo.filepath || !fs.existsSync(fileInfo.filepath)) {\n\t\t//For some reason, the tiddler is only in memory or we can't modify the file at this path\n\t\t$tw.syncer.displayError(\"Server deleteTiddlerFile task failed for filepath: \"+fileInfo.filepath);\n\t\treturn callback(null,fileInfo);\n\t}\n\t// Delete the file\n\tfs.unlink(fileInfo.filepath,function(err) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\t\n\t\t// Delete the metafile if present\n\t\tif(fileInfo.hasMetaFile && fs.existsSync(fileInfo.filepath + \".meta\")) {\n\t\t\tfs.unlink(fileInfo.filepath + \".meta\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),function(err) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\treturn callback(null,fileInfo);\n\t\t\t\t});\n\t\t\t});\n\t\t} else {\n\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn callback(null,fileInfo);\n\t\t\t});\n\t\t}\n\t});\n};\n\n/*\nCleanup old files on disk, by comparing the options values:\n\tadaptorInfo from $tw.syncer.tiddlerInfo\n\tbootInfo from $tw.boot.files\n*/\nexports.cleanupTiddlerFiles = function(options,callback) {\n\tvar adaptorInfo = options.adaptorInfo || {},\n\tbootInfo = options.bootInfo || {},\n\ttitle = options.title || \"undefined\";\n\tif(adaptorInfo.filepath && bootInfo.filepath && adaptorInfo.filepath !== bootInfo.filepath) {\n\t\t$tw.utils.deleteTiddlerFile(adaptorInfo,function(err) {\n\t\t\tif(err) {\n\t\t\t\tif ((err.code == \"EPERM\" || err.code == \"EACCES\") && err.syscall == \"unlink\") {\n\t\t\t\t\t// Error deleting the previous file on disk, should fail gracefully\n\t\t\t\t\t$tw.syncer.displayError(\"Server desynchronized. Error cleaning up previous file for tiddler: \\\"\"+title+\"\\\"\",err);\n\t\t\t\t\treturn callback(null,bootInfo);\n\t\t\t\t} else {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn callback(null,bootInfo);\n\t\t});\n\t} else {\n\t\treturn callback(null,bootInfo);\n\t}\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils-node"
},
"$:/core/modules/utils/linkedlist.js": {
"title": "$:/core/modules/utils/linkedlist.js",
"text": "/*\\\nmodule-type: utils\ntitle: $:/core/modules/utils/linkedlist.js\ntype: application/javascript\n\nThis is a doubly-linked indexed list intended for manipulation, particularly\npushTop, which it does with significantly better performance than an array.\n\n\\*/\n(function(){\n\nfunction LinkedList() {\n\tthis.clear();\n};\n\nLinkedList.prototype.clear = function() {\n\t// LinkedList performs the duty of both the head and tail node\n\tthis.next = Object.create(null);\n\tthis.prev = Object.create(null);\n\tthis.first = undefined;\n\tthis.last = undefined;\n\tthis.length = 0;\n};\n\nLinkedList.prototype.remove = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_assertString(value[t]);\n\t\t}\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t} else {\n\t\t_assertString(value);\n\t\t_removeOne(this,value);\n\t}\n};\n\n/*\nPush behaves like array.push and accepts multiple string arguments. But it also\naccepts a single array argument too, to be consistent with its other methods.\n*/\nLinkedList.prototype.push = function(/* values */) {\n\tvar values = arguments;\n\tif($tw.utils.isArray(values[0])) {\n\t\tvalues = values[0];\n\t}\n\tfor(var i = 0; i < values.length; i++) {\n\t\t_assertString(values[i]);\n\t}\n\tfor(var i = 0; i < values.length; i++) {\n\t\t_linkToEnd(this,values[i]);\n\t}\n\treturn this.length;\n};\n\nLinkedList.prototype.pushTop = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor (var t=0; t<value.length; t++) {\n\t\t\t_assertString(value[t]);\n\t\t}\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_linkToEnd(this,value[t]);\n\t\t}\n\t} else {\n\t\t_assertString(value);\n\t\t_removeOne(this,value);\n\t\t_linkToEnd(this,value);\n\t}\n};\n\nLinkedList.prototype.each = function(callback) {\n\tvar visits = Object.create(null),\n\t\tvalue = this.first;\n\twhile(value !== undefined) {\n\t\tcallback(value);\n\t\tvar next = this.next[value];\n\t\tif(typeof next === \"object\") {\n\t\t\tvar i = visits[value] || 0;\n\t\t\tvisits[value] = i+1;\n\t\t\tvalue = next[i];\n\t\t} else {\n\t\t\tvalue = next;\n\t\t}\n\t}\n};\n\nLinkedList.prototype.toArray = function() {\n\tvar output = new Array(this.length),\n\t\tindex = 0;\n\tthis.each(function(value) { output[index++] = value; });\n\treturn output;\n};\n\nfunction _removeOne(list,value) {\n\tvar prevEntry = list.prev[value],\n\t\tnextEntry = list.next[value],\n\t\tprev = prevEntry,\n\t\tnext = nextEntry;\n\tif(typeof nextEntry === \"object\") {\n\t\tnext = nextEntry[0];\n\t\tprev = prevEntry[0];\n\t}\n\t// Relink preceding element.\n\tif(list.first === value) {\n\t\tlist.first = next\n\t} else if(prev !== undefined) {\n\t\tif(typeof list.next[prev] === \"object\") {\n\t\t\tif(next === undefined) {\n\t\t\t\t// Must have been last, and 'i' would be last element.\n\t\t\t\tlist.next[prev].pop();\n\t\t\t} else {\n\t\t\t\tvar i = list.next[prev].indexOf(value);\n\t\t\t\tlist.next[prev][i] = next;\n\t\t\t}\n\t\t} else {\n\t\t\tlist.next[prev] = next;\n\t\t}\n\t} else {\n\t\treturn;\n\t}\n\t// Now relink following element\n\t// Check \"next !== undefined\" rather than \"list.last === value\" because\n\t// we need to know if the FIRST value is the last in the list, not the last.\n\tif(next !== undefined) {\n\t\tif(typeof list.prev[next] === \"object\") {\n\t\t\tif(prev === undefined) {\n\t\t\t\t// Must have been first, and 'i' would be 0.\n\t\t\t\tlist.prev[next].shift();\n\t\t\t} else {\n\t\t\t\tvar i = list.prev[next].indexOf(value);\n\t\t\t\tlist.prev[next][i] = prev;\n\t\t\t}\n\t\t} else {\n\t\t\tlist.prev[next] = prev;\n\t\t}\n\t} else {\n\t\tlist.last = prev;\n\t}\n\t// Delink actual value. If it uses arrays, just remove first entries.\n\tif(typeof nextEntry === \"object\") {\n\t\tnextEntry.shift();\n\t\tprevEntry.shift();\n\t} else {\n\t\tlist.next[value] = undefined;\n\t\tlist.prev[value] = undefined;\n\t}\n\tlist.length -= 1;\n};\n\n// Sticks the given node onto the end of the list.\nfunction _linkToEnd(list,value) {\n\tif(list.first === undefined) {\n\t\tlist.first = value;\n\t} else {\n\t\t// Does it already exists?\n\t\tif(list.first === value || list.prev[value] !== undefined) {\n\t\t\tif(typeof list.next[value] === \"string\") {\n\t\t\t\tlist.next[value] = [list.next[value]];\n\t\t\t\tlist.prev[value] = [list.prev[value]];\n\t\t\t} else if(typeof list.next[value] === \"undefined\") {\n\t\t\t\t// list.next[value] must be undefined.\n\t\t\t\t// Special case. List already has 1 value. It's at the end.\n\t\t\t\tlist.next[value] = [];\n\t\t\t\tlist.prev[value] = [list.prev[value]];\n\t\t\t}\n\t\t\tlist.prev[value].push(list.last);\n\t\t\t// We do NOT append a new value onto \"next\" list. Iteration will\n\t\t\t// figure out it must point to End-of-List on its own.\n\t\t} else {\n\t\t\tlist.prev[value] = list.last;\n\t\t}\n\t\t// Make the old last point to this new one.\n\t\tif(typeof list.next[list.last] === \"object\") {\n\t\t\tlist.next[list.last].push(value);\n\t\t} else {\n\t\t\tlist.next[list.last] = value;\n\t\t}\n\t}\n\tlist.last = value;\n\tlist.length += 1;\n};\n\nfunction _assertString(value) {\n\tif(typeof value !== \"string\") {\n\t\tthrow \"Linked List only accepts string values, not \" + value;\n\t}\n};\n\nexports.LinkedList = LinkedList;\n\n})();\n",
"module-type": "utils",
"type": "application/javascript"
},
"$:/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\tthis.save = \"save\" in options ? options.save : true;\n\tthis.saveLimit = options.saveLimit || 100 * 1024;\n\tthis.saveBufferLogger = this;\n\tthis.buffer = \"\";\n\tthis.alertCount = 0;\n}\n\nLogger.prototype.setSaveBuffer = function(logger) {\n\tthis.saveBufferLogger = logger;\n};\n\n/*\nLog a message\n*/\nLogger.prototype.log = function(/* args */) {\n\tvar self = this;\n\tif(this.enable) {\n\t\tif(this.saveBufferLogger.save) {\n\t\t\tthis.saveBufferLogger.buffer += $tw.utils.formatDateString(new Date(),\"YYYY MM DD 0hh:0mm:0ss.0XXX\") + \":\";\n\t\t\t$tw.utils.each(Array.prototype.slice.call(arguments,0),function(arg,index) {\n\t\t\t\tself.saveBufferLogger.buffer += \" \" + arg;\n\t\t\t});\n\t\t\tthis.saveBufferLogger.buffer += \"\\n\";\n\t\t\tthis.saveBufferLogger.buffer = this.saveBufferLogger.buffer.slice(-this.saveBufferLogger.saveLimit);\t\t\t\n\t\t}\n\t\tif(console !== undefined && console.log !== undefined) {\n\t\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\t}\n\t} \n};\n\n/*\nRead the message buffer\n*/\nLogger.prototype.getBuffer = function() {\n\treturn this.saveBufferLogger.buffer;\n};\n\n/*\nLog a structure as a table\n*/\nLogger.prototype.table = function(value) {\n\t(console.table || console.log)(value);\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\tthis.alertCount += 1;\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\n/*\nClear outstanding alerts\n*/\nLogger.prototype.clearAlerts = function() {\n\tvar self = this;\n\tif($tw.browser && this.alertCount > 0) {\n\t\t$tw.utils.each($tw.wiki.getTiddlersWithTag(ALERT_TAG),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(tiddler.fields.component === self.componentName) {\n\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t}\n\t\t});\n\t\tthis.alertCount = 0;\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 by measurement name of {time:, invocations:}\n\tthis.logger = new $tw.utils.Logger(\"performance\");\n\tthis.showGreeting();\n}\n\nPerformance.prototype.showGreeting = function() {\n\tif($tw.browser) {\n\t\tthis.logger.log(\"Execute $tw.perf.log(); to see filter execution timings\");\t\t\n\t}\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\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\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nPerformance.prototype.log = function() {\n\tvar self = this,\n\t\ttotalTime = 0,\n\t\torderedMeasures = Object.keys(this.measures).sort(function(a,b) {\n\t\t\tif(self.measures[a].time > self.measures[b].time) {\n\t\t\t\treturn -1;\n\t\t\t} else if (self.measures[a].time < self.measures[b].time) {\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$tw.utils.each(orderedMeasures,function(name) {\n\t\ttotalTime += self.measures[name].time;\n\t});\n\tvar results = []\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\tvar measure = self.measures[name];\n\t\tresults.push({name: name,invocations: measure.invocations, avgTime: measure.time / measure.invocations, totalTime: measure.time, percentTime: (measure.time / totalTime) * 100})\n\t});\n\tself.logger.table(results);\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\tif(!(name in self.measures)) {\n\t\t\t\tself.measures[name] = {time: 0, invocations: 0};\n\t\t\t}\n\t\t\tself.measures[name].time += $tw.utils.timer(startTime);\n\t\t\tself.measures[name].invocations++;\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\nexports.transliterateToSafeASCII = function(str) {\n\treturn str.replace(/[^\\x00-\\x7F]/g,function(ch) {\n\t\treturn exports.transliterationPairs[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\nvar base64utf8 = require(\"$:/core/modules/utils/base64-utf8/base64-utf8.module.js\");\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/*\nLog a table of name: value pairs\n*/\nexports.logTable = function(data) {\n\tif(console.table) {\n\t\tconsole.table(data);\n\t} else {\n\t\t$tw.utils.each(data,function(value,name) {\n\t\t\tconsole.log(name + \": \" + value);\n\t\t});\n\t}\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\nexports.trimPrefix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/^\\s\\s*/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('^(' + unwanted + ')+');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\nexports.trimSuffix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/\\s\\s*$/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('(' + unwanted + ')+$');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\n/*\nConvert a string to sentence case (ie capitalise first letter)\n*/\nexports.toSentenceCase = function(str) {\n\treturn (str || \"\").replace(/^\\S/, function(c) {return c.toUpperCase();});\n}\n\n/*\nConvert a string to title case (ie capitalise each initial letter)\n*/\nexports.toTitleCase = function(str) {\n\treturn (str || \"\").replace(/(^|\\s)\\S/g, function(c) {return c.toUpperCase();});\n}\n\t\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/*\nDetermine whether an array-item is an object-property\n*/\nexports.hopArray = function(object,array) {\n\tfor(var i=0; i<array.length; i++) {\n\t\tif($tw.utils.hop(object,array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\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.pad($tw.utils.getYearForWeekNo(date),4);\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 $tw.utils.pad(date.getFullYear(),4);\n\t\t\t}],\n\t\t\t[/^aYYYY/, function() {\n\t\t\t\treturn $tw.utils.pad(Math.abs(date.getFullYear()),4);\n\t\t\t}],\n\t\t\t[/^\\{era:([^,\\|}]*)\\|([^}\\|]*)\\|([^}]*)\\}/, function(match) {\n\t\t\t\tvar year = date.getFullYear();\n\t\t\t\treturn year === 0 ? match[2] : (year < 0 ? match[1] : match[3]);\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(),3);\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(null,match);\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 \"&\", < to \"<\", > to \">\", \" to \""\"\nexports.htmlEncode = function(s) {\n\tif(s) {\n\t\treturn s.toString().replace(/&/mg,\"&\").replace(/</mg,\"<\").replace(/>/mg,\">\").replace(/\\\"/mg,\""\");\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\t\tc;\n\tif(e.charAt(0) === \"#\") {\n\t\tif(e.charAt(1) === \"x\" || e.charAt(1) === \"X\") {\n\t\t\tc = parseInt(e.substr(2),16);\n\t\t} else {\n\t\t\tc = parseInt(e.substr(1),10);\n\t\t}\n\t\tif(isNaN(c)) {\n\t\t\treturn s;\n\t\t} else {\n\t\t\treturn converter(c);\n\t\t}\n\t} else {\n\t\tc = $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, rawUnicode) {\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\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\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(regex, 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, rawUnicode) {\n\t// See http://www.json.org/\n\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\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(regex,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,0);\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) || 0;\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\treturn base64utf8.base64.decode.call(base64utf8,string64);\n};\n\n/*\nEncode a string to base64\n*/\nexports.base64Encode = function(string64) {\n\treturn base64utf8.base64.encode.call(base64utf8,string64);\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,_canonical_uri) {\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\tif(_canonical_uri) {\n\t\tparts.push(_canonical_uri);\n\t} else {\n\t\tparts.push(\"data:\");\n\t\tparts.push(type);\n\t\tparts.push(isBase64 ? \";base64\" : \"\");\n\t\tparts.push(\",\");\n\t\tparts.push(isBase64 ? text : encodeURIComponent(text));\t\t\n\t}\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/*\nReturn system information useful for debugging\n*/\nexports.getSystemInfo = function(str,ending,position) {\n\tvar results = [],\n\t\tsave = function(desc,value) {\n\t\t\tresults.push(desc + \": \" + value);\n\t\t};\n\tif($tw.browser) {\n\t\tsave(\"User Agent\",navigator.userAgent);\n\t\tsave(\"Online Status\",window.navigator.onLine);\n\t}\n\tif($tw.node) {\n\t\tsave(\"Node Version\",process.version);\n\t}\n\treturn results.join(\"\\n\");\n};\n\nexports.parseNumber = function(str) {\n\treturn parseFloat(str) || 0;\n};\n\nexports.parseInt = function(str) {\n\treturn parseInt(str,10) || 0;\n};\n\nexports.stringifyNumber = function(num) {\n\treturn num + \"\";\n};\n\nexports.makeCompareFunction = function(type,options) {\n\toptions = options || {};\n\tvar gt = options.invert ? -1 : +1,\n\t\tlt = options.invert ? +1 : -1,\n\t\tcompare = function(a,b) {\n\t\t\tif(a > b) {\n\t\t\t\treturn gt ;\n\t\t\t} else if(a < b) {\n\t\t\t\treturn lt;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t},\n\t\ttypes = {\n\t\t\t\"number\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseNumber(a),$tw.utils.parseNumber(b));\n\t\t\t},\n\t\t\t\"integer\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseInt(a),$tw.utils.parseInt(b));\n\t\t\t},\n\t\t\t\"string\": function(a,b) {\n\t\t\t\treturn compare(\"\" + a,\"\" +b);\n\t\t\t},\n\t\t\t\"date\": function(a,b) {\n\t\t\t\tvar dateA = $tw.utils.parseDate(a),\n\t\t\t\t\tdateB = $tw.utils.parseDate(b);\n\t\t\t\tif(!isFinite(dateA)) {\n\t\t\t\t\tdateA = new Date(0);\n\t\t\t\t}\n\t\t\t\tif(!isFinite(dateB)) {\n\t\t\t\t\tdateB = new Date(0);\n\t\t\t\t}\n\t\t\t\treturn compare(dateA,dateB);\n\t\t\t},\n\t\t\t\"version\": function(a,b) {\n\t\t\t\treturn $tw.utils.compareVersions(a,b);\n\t\t\t}\n\t\t};\n\treturn (types[type] || types[options.defaultType] || types.number);\n};\n\n})();\n",
"type": "application/javascript",
"module-type": "utils"
},
"$:/core/modules/widgets/action-confirm.js": {
"title": "$:/core/modules/widgets/action-confirm.js",
"text": "/*\\\n\ntitle: $:/core/modules/widgets/action-confirm.js\ntype: application/javascript\nmodule-type: 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 ConfirmWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nConfirmWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nConfirmWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.parentDomNode = parent;\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nConfirmWidget.prototype.execute = function() {\n\tthis.message = this.getAttribute(\"$message\",$tw.language.getString(\"ConfirmAction\"));\n\tthis.prompt = (this.getAttribute(\"$prompt\",\"yes\") == \"no\" ? false : true);\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nConfirmWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$message\"] || changedAttributes[\"$prompt\"]) {\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*/\nConfirmWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar invokeActions = true,\n\t\thandled = true;\n\tif(this.prompt) {\n\t\tinvokeActions = confirm(this.message);\n\t}\n\tif(invokeActions) {\n\t\thandled = this.invokeActions(triggeringWidget,event);\n\t}\n\treturn handled;\n};\n\nConfirmWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nexports[\"action-confirm\"] = ConfirmWidget;\n\n})();",
"type": "application/javascript",
"module-type": "widget"
},
"$:/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, require:false, exports: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.hasBase = !!this.actionBaseTitle;\n\tthis.actionSaveTitle = this.getAttribute(\"$savetitle\");\n\tthis.actionSaveDraftTitle = this.getAttribute(\"$savedrafttitle\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n\t//Following params are new since 5.1.22\n\tthis.actionTemplate = this.getAttribute(\"$template\");\n\tthis.useTemplate = !!this.actionTemplate;\n\tthis.actionOverwrite = this.getAttribute(\"$overwrite\",\"no\");\n\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.getTiddlerText(\"$:/language/DefaultNewTiddlerTitle\"), // Get the initial new-tiddler title\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\tif(this.hasBase && this.actionOverwrite === \"no\") {\n\t\ttitle = this.wiki.generateNewTitle(this.actionBaseTitle);\n\t} else if (this.hasBase && this.actionOverwrite === \"yes\") {\n\t\ttitle = this.actionBaseTitle\n\t}\n\t// NO $basetitle BUT $template parameter is available\n\t// the title MUST be unique, otherwise the template would be overwritten\n\tif (!this.hasBase && this.useTemplate) {\n\t\ttitle = this.wiki.generateNewTitle(this.actionTemplate);\n\t} else if (!this.hasBase && !this.useTemplate) {\n\t\t// If NO $basetitle AND NO $template use initial title\n\t\t// DON'T overwrite any stuff\n\t\ttitle = this.wiki.generateNewTitle(title);\n\t}\n\tvar templateTiddler = this.wiki.getTiddler(this.actionTemplate) || {};\n\tvar tiddler = this.wiki.addTiddler(new $tw.Tiddler(templateTiddler.fields,creationFields,fields,modificationFields,{title: title}));\n\tif(this.actionSaveTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveTitle,title,this.getVariable(\"currentTiddler\"));\n\t}\n\tif(this.actionSaveDraftTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveDraftTitle,this.wiki.generateDraftTitle(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 && tiddler) {\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-log.js": {
"title": "$:/core/modules/widgets/action-log.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-log.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to log debug messages\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 LogWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLogWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLogWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\nLogWidget.prototype.execute = function(){\n\tthis.message = this.getAttribute(\"$$message\",\"debug\");\n\tthis.logAll = this.getAttribute(\"$$all\",\"no\") === \"yes\" ? true : false;\n\tthis.filter = this.getAttribute(\"$$filter\");\n}\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nLogWidget.prototype.refresh = function(changedTiddlers) {\n\tthis.refreshSelf();\n\treturn true;\n};\n\n/*\nInvoke the action associated with this widget\n*/\nLogWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tthis.log();\n\treturn true; // Action was invoked\n};\n\nLogWidget.prototype.log = function() {\n\tvar data = {},\n\t\tdataCount,\n\t\tallVars = {},\n\t\tfilteredVars;\n\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.substring(0,2) !== \"$$\") {\n\t\t\tdata[name] = attribute;\n\t\t}\t\t\n\t});\n\n\tfor(var v in this.variables) {\n\t\tallVars[v] = this.getVariable(v,{defaultValue:\"\"});\n\t}\t\n\tif(this.filter) {\n\t\tfilteredVars = this.wiki.compileFilter(this.filter).call(this.wiki,this.wiki.makeTiddlerIterator(allVars));\n\t\t$tw.utils.each(filteredVars,function(name) {\n\t\t\tdata[name] = allVars[name];\n\t\t});\t\t\n\t}\n\tdataCount = $tw.utils.count(data);\n\n\tconsole.group(this.message);\n\tif(dataCount > 0) {\n\t\t$tw.utils.logTable(data);\n\t}\n\tif(this.logAll || !dataCount) {\n\t\tconsole.groupCollapsed(\"All variables\");\n\t\t$tw.utils.logTable(allVars);\n\t\tconsole.groupEnd();\n\t}\n\tconsole.groupEnd();\n}\n\nexports[\"action-log\"] = LogWidget;\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\tevent = 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-popup.js": {
"title": "$:/core/modules/widgets/action-popup.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/action-popup.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to trigger a popup.\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 ActionPopupWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nActionPopupWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nActionPopupWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nActionPopupWidget.prototype.execute = function() {\n\tthis.actionState = this.getAttribute(\"$state\");\n\tthis.actionCoords = this.getAttribute(\"$coords\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nActionPopupWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$state\"] || changedAttributes[\"$coords\"]) {\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*/\nActionPopupWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Trigger the popup\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(this.actionCoords || \"\");\n\tif(match) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: null,\n\t\t\tdomNodeRect: {\n\t\t\t\tleft: parseFloat(match[1]),\n\t\t\t\ttop: parseFloat(match[2]),\n\t\t\t\twidth: parseFloat(match[3]),\n\t\t\t\theight: parseFloat(match[4])\n\t\t\t},\n\t\t\ttitle: this.actionState,\n\t\t\twiki: this.wiki\n\t\t});\n\t} else {\n\t\t$tw.popup.cancel(0);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-popup\"] = ActionPopupWidget;\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\tif(this.accept) {\n\t\tdomNode.setAttribute(\"accept\",this.accept);\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.accept = this.getAttribute(\"accept\");\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\ttag = \"button\",\n\t\tdomNode;\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\tif(this.buttonTag && $tw.config.htmlUnsafeElements.indexOf(this.buttonTag) === -1) {\n\t\ttag = this.buttonTag;\n\t}\n\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tvar classes = this[\"class\"].split(\" \") || [],\n\t\tisPoppedUp = (this.popup || this.popupTitle) && this.isPoppedUp();\n\tif(this.selectedClass) {\n\t\tif((this.set || this.setTitle) && 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\tif(this.popup || this.popupTitle) {\n\t\tdomNode.setAttribute(\"aria-expanded\",isPoppedUp ? \"true\" : \"false\");\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tdomNode.setAttribute(\"disabled\",true);\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 || self.popupTitle) {\n\t\t\tself.triggerPopup(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.set || self.setTitle) {\n\t\t\tself.setTiddler();\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.actions) {\n\t\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tself.invokeActionString(self.actions,self,event,{modifier: modifierKey});\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.setTitle ? (this.setField ? this.wiki.getTiddler(this.setTitle).getFieldString(this.setField) === this.setTo :\n\t\t(this.setIndex ? this.wiki.extractTiddlerDataItem(this.setTitle,this.setIndex) === this.setTo :\n\t\t\tthis.wiki.getTiddlerText(this.setTitle))) || this.defaultSetValue || this.getVariable(\"currentTiddler\") :\n\t\tthis.wiki.getTextReference(this.set,this.defaultSetValue,this.getVariable(\"currentTiddler\")) === this.setTo;\n};\n\nButtonWidget.prototype.isPoppedUp = function() {\n\tvar tiddler = this.popupTitle ? this.wiki.getTiddler(this.popupTitle) : 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\tif(this.popupTitle) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popupTitle,\n\t\t\twiki: this.wiki,\n\t\t\tnoStateReference: true\n\t\t});\n\t} else {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popup,\n\t\t\twiki: this.wiki\n\t\t});\n\t}\n};\n\nButtonWidget.prototype.setTiddler = function() {\n\tif(this.setTitle) {\n\t\tthis.setField ? this.wiki.setText(this.setTitle,this.setField,undefined,this.setTo) :\n\t\t\t\t(this.setIndex ? this.wiki.setText(this.setTitle,undefined,this.setIndex,this.setTo) :\n\t\t\t\tthis.wiki.setText(this.setTitle,\"text\",undefined,this.setTo));\n\t} else {\n\t\tthis.wiki.setTextReference(this.set,this.setTo,this.getVariable(\"currentTiddler\"));\n\t}\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[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.style = this.getAttribute(\"style\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\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\tthis.setTitle = this.getAttribute(\"setTitle\");\n\tthis.setField = this.getAttribute(\"setField\");\n\tthis.setIndex = this.getAttribute(\"setIndex\");\n\tthis.popupTitle = this.getAttribute(\"popupTitle\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nButtonWidget.prototype.updateDomNodeClasses = function() {\n\tvar domNodeClasses = this.domNode.className.split(\" \"),\n\t\toldClasses = this.class.split(\" \"),\n\t\tnewClasses;\t\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tnewClasses = this.class.split(\" \");\n\t//Remove classes assigned from the old value of class attribute\n\t$tw.utils.each(oldClasses,function(oldClass){\n\t\tvar i = domNodeClasses.indexOf(oldClass);\n\t\tif(i !== -1) {\n\t\t\tdomNodeClasses.splice(i,1);\n\t\t}\n\t});\n\t//Add new classes from updated class attribute.\n\t$tw.utils.pushTop(domNodeClasses,newClasses);\n\tthis.domNode.className = domNodeClasses.join(\" \");\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.actions || changedAttributes.to || changedAttributes.message || changedAttributes.param || changedAttributes.set || changedAttributes.setTo || changedAttributes.popup || changedAttributes.hover || changedAttributes.selectedClass || changedAttributes.style || changedAttributes.dragFilter || changedAttributes.dragTiddler || (this.set && changedTiddlers[this.set]) || (this.popup && changedTiddlers[this.popup]) || (this.popupTitle && changedTiddlers[this.popupTitle]) || changedAttributes.setTitle || changedAttributes.setField || changedAttributes.setIndex || changedAttributes.popupTitle || changedAttributes.disabled) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.updateDomNodeClasses();\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\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",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.checkboxCheckActions && checked) {\n\t\tthis.invokeActionString(this.checkboxCheckActions,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.checkboxCheckActions = this.getAttribute(\"checkactions\");\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\tthis.isDisabled = this.getAttribute(\"disabled\",\"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*/\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\"] || changedAttributes.disabled) {\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 = \"0\";\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(changedAttributes.tag || changedAttributes[\"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\ttag = this.parseTreeNode.isBlock ? \"div\" : \"span\",\n\t\tdomNode;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\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\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\n\t// Add event handlers\n\tif(this.droppableEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"}\n\t\t]);\t\t\n\t} else {\n\t\t$tw.utils.addClass(this.domNode,this.disabledClass);\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\tif(this.domNodes[0]) {\n\t\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t\t}\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 = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\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.droppableEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.disabledClass = this.getAttribute(\"disabledClass\",\"\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nDroppableWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-droppable\");\n\tthis.domNode.className = classes.join(\" \");\t\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.tag || changedAttributes.enable || changedAttributes.disabledClass || changedAttributes.actions || changedAttributes.effect) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.droppable = DroppableWidget;\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 = this.dropzoneClass || \"tc-dropzone\";\n\t// Add event handlers\n\tif(this.dropzoneEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"},\n\t\t\t{name: \"paste\", handlerObject: this, handlerMethod: \"handlePasteEvent\"},\n\t\t\t{name: \"dragend\", handlerObject: this, handlerMethod: \"handleDragEndEvent\"}\n\t\t]);\t\t\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.handleDragEndEvent = function(event) {\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\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), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\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), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\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 && !event.target.isContentEditable) {\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]), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\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.dropzoneClass = this.getAttribute(\"class\");\n\tthis.dropzoneDeserializer = this.getAttribute(\"deserializer\");\n\tthis.dropzoneEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.autoOpenOnImport = this.getAttribute(\"autoOpenOnImport\");\n\tthis.importTitle = this.getAttribute(\"importTitle\");\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\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.enable || changedAttributes.autoOpenOnImport || changedAttributes.importTitle || changedAttributes.deserializer || changedAttributes.class) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\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\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\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// Get our parameters\n\tvar editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tvar tiddler = this.wiki.getTiddler(editTitle);\n\tvar type = tiddler.fields.type;\n\tvar text = tiddler.fields.text;\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on draft tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!draft.title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!draft.title\"}\n\t\t},\n\t\tchildren: [{\n\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to internal data URI (no external)\n\tif(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets([element]);\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\tDEFAULT_IMAGE_TYPE = \"image/png\";\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\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// 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\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\tif(tiddler && tiddler.fields.type && tiddler.fields.text) {\n\t\tcurrImage.src = \"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text;\t\t\n\t} else {\n\t\tcurrImage.width = DEFAULT_IMAGE_WIDTH;\n\t\tcurrImage.height = DEFAULT_IMAGE_HEIGHT;\n\t\tcurrImage.onerror();\n\t}\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) || new $tw.Tiddler({title: this.editTitle,type: DEFAULT_IMAGE_TYPE});\n\t// data URIs look like \"data:<type>;base64,<text>\"\n\tvar dataURL = this.canvasDomNode.toDataURL(tiddler.fields.type),\n\t\tposColon = dataURL.indexOf(\":\"),\n\t\tposSemiColon = dataURL.indexOf(\";\"),\n\t\tposComma = dataURL.indexOf(\",\"),\n\t\ttype = dataURL.substring(posColon+1,posSemiColon),\n\t\ttext = dataURL.substring(posComma+1);\n\tvar update = {type: type, text: text};\n\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getModificationFields(),tiddler,update,this.wiki.getCreationFields()));\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\t// Focus the input Node if focus === \"yes\" or focus === \"true\"\n\tif(this.shortcutFocus === \"yes\" || this.shortcutFocus === \"true\") {\n\t\tthis.focus();\n\t}\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\tthis.shortcutFocus = this.getAttribute(\"focus\");\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/*\nfocus the input node\n*/\nEditShortcutWidget.prototype.focus = function() {\n\tif(this.inputNode.focus && this.inputNode.select) {\n\t\tthis.inputNode.focus();\n\t\tthis.inputNode.select();\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\"] || changedAttributes.focus) {\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\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\tthis.editFocus = this.getAttribute(\"focus\",\"\");\n\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\");\n\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\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: this.parseTreeNode.attributes,\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 || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || (changedTiddlers[this.editTitle] && this.getEditorType() !== this.editorType)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\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\t// Neuter blacklisted elements\n\tthis.tag = this.parseTreeNode.tag;\n\tif($tw.config.htmlUnsafeElements.indexOf(this.tag) !== -1) {\n\t\tthis.tag = \"safe-\" + this.tag;\n\t}\n\t// Adjust headings by the current base level\n\tvar headingLevel = [\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"].indexOf(this.tag);\n\tif(headingLevel !== -1) {\n\t\tvar baseLevel = parseInt(this.getVariable(\"tv-adjust-heading-level\",\"0\"),10) || 0;\n\t\theadingLevel = Math.min(Math.max(headingLevel + 1 + baseLevel,1),6);\n\t\tthis.tag = \"h\" + headingLevel;\n\t}\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.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// Invoke the th-rendering-element hook\n\tvar parseTreeNodes = $tw.hooks.invokeHook(\"th-rendering-element\",null,this);\n\tthis.isReplaced = !!parseTreeNodes;\n\tif(parseTreeNodes) {\n\t\t// Use the parse tree nodes provided by the hook\n\t\tthis.makeChildWidgets(parseTreeNodes);\n\t\tthis.renderChildren(this.parentDomNode,null);\n\t\treturn;\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n\t// Create the DOM node and render children\n\tvar domNode = this.document.createElementNS(this.namespace,this.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/*\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\tif(!this.isReplaced) {\n\t\t\t// Update our attributes\n\t\t\tthis.assignAttributes(this.domNodes[0],{excludeEventAttributes: true});\t\t\t\n\t\t} else {\n\t\t\t// If we were replaced then completely refresh ourselves\n\t\t\treturn this.refreshSelf();\n\t\t}\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.computeAttributes();\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/eventcatcher.js": {
"title": "$:/core/modules/widgets/eventcatcher.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/eventcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nEvent handler 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 EventWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEventWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEventWidget.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 = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.elementTag && $tw.config.htmlUnsafeElements.indexOf(this.elementTag) === -1) {\n\t\ttag = this.elementTag;\n\t}\t\n\tvar domNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tthis.assignDomNodeClasses();\t\n\t// Add our event handler\n\t$tw.utils.each(this.types,function(type) {\n\t\tdomNode.addEventListener(type,function(event) {\n\t\t\tvar selector = self.getAttribute(\"selector\"),\n\t\t\t\tactions = self.getAttribute(\"actions-\"+type),\n\t\t\t\tselectedNode = event.target,\n\t\t\t\tselectedNodeRect,\n\t\t\t\tcatcherNodeRect,\n\t\t\t\tvariables = {};\n\t\t\tif(selector) {\n\t\t\t\t// Search ancestors for a node that matches the selector\n\t\t\t\twhile(!selectedNode.matches(selector) && selectedNode !== domNode) {\n\t\t\t\t\tselectedNode = selectedNode.parentNode;\n\t\t\t\t}\n\t\t\t\t// If we found one, copy the attributes as variables, otherwise exit\n\t\t\t\tif(selectedNode.matches(selector)) {\n\t\t\t\t\t$tw.utils.each(selectedNode.attributes,function(attribute) {\n\t\t\t\t\t\tvariables[\"dom-\" + attribute.name] = attribute.value.toString();\n\t\t\t\t\t});\n\t\t\t\t\t//Add a variable with a popup coordinate string for the selected node\n\t\t\t\t\tvariables[\"tv-popup-coords\"] = \"(\" + selectedNode.offsetLeft + \",\" + selectedNode.offsetTop +\",\" + selectedNode.offsetWidth + \",\" + selectedNode.offsetHeight + \")\";\n\t\t\t\t\t\n\t\t\t\t\t//Add variables for offset of selected node\n\t\t\t\t\tvariables[\"tv-selectednode-posx\"] = selectedNode.offsetLeft.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-posy\"] = selectedNode.offsetTop.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-width\"] = selectedNode.offsetWidth.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-height\"] = selectedNode.offsetHeight.toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to selected node\n\t\t\t\t\tselectedNodeRect = selectedNode.getBoundingClientRect();\t\t\t\t\n\t\t\t\t\tvariables[\"event-fromselected-posx\"] = (event.clientX - selectedNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromselected-posy\"] = (event.clientY - selectedNodeRect.top).toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to event catcher node\n\t\t\t\t\tcatcherNodeRect = self.domNode.getBoundingClientRect();\n\t\t\t\t\tvariables[\"event-fromcatcher-posx\"] = (event.clientX - catcherNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromcatcher-posy\"] = (event.clientY - catcherNodeRect.top).toString();\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Execute our actions with the variables\n\t\t\tif(actions) {\n\t\t\t\t// Add a variable for the modifier key\n\t\t\t\tvariables.modifier = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\t\t// Add a variable for the mouse button\n\t\t\t\tif(\"button\" in event) {\n\t\t\t\t\tif(event.button === 0) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"left\";\n\t\t\t\t\t} else if(event.button === 1) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"middle\";\n\t\t\t\t\t} else if(event.button === 2) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"right\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvariables[\"event-type\"] = event.type.toString();\n\t\t\t\tif(typeof event.detail === \"object\" && !!event.detail) {\n\t\t\t\t\t$tw.utils.each(event.detail,function(detailValue,detail) {\n\t\t\t\t\t\tvariables[\"event-detail-\" + detail] = detailValue.toString();\n\t\t\t\t\t});\n\t\t\t\t} else if(!!event.detail) {\n\t\t\t\t\tvariables[\"event-detail\"] = event.detail.toString();\n\t\t\t\t}\n\t\t\t\tself.invokeActionString(actions,self,event,variables);\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t},false);\n\t});\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*/\nEventWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes that require a refresh on change\n\tthis.types = this.getAttribute(\"events\",\"\").split(\" \");\n\tthis.elementTag = this.getAttribute(\"tag\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nEventWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-eventcatcher\");\n\tthis.domNode.className = classes.join(\" \");\t\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEventWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"events\"] || changedAttributes[\"tag\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.eventcatcher = EventWidget;\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};\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.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\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.sort = this.getAttribute(\"sort\",\"yes\") === \"yes\";\n\tthis.sortReverse = this.getAttribute(\"sortReverse\",\"no\") === \"yes\";\n\tthis.exclude = this.getAttribute(\"exclude\");\n\tthis.include = this.getAttribute(\"include\",null);\n\tthis.stripTitlePrefix = this.getAttribute(\"stripTitlePrefix\",\"no\") === \"yes\";\n\t// Get the value to display\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\n\t// Get the inclusion and exclusion list\n\tvar excludeArr = (this.exclude) ? this.exclude.split(\" \") : [\"text\"];\n\t// Include takes precedence\n\tvar includeArr = (this.include) ? this.include.split(\" \") : null;\n\n\t// Compose the template\n\tvar text = [];\n\tif(this.template && tiddler) {\n\t\tvar fields = [];\n\t\tif (includeArr) { // Include takes precedence\n\t\t\tfor(var i=0; i<includeArr.length; i++) {\n\t\t\t\tif(tiddler.fields[includeArr[i]]) {\n\t\t\t\t\tfields.push(includeArr[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor(var fieldName in tiddler.fields) {\n\t\t\t\tif(excludeArr.indexOf(fieldName) === -1) {\n\t\t\t\t\tfields.push(fieldName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.sort) fields.sort();\n\t\tif (this.sortReverse) fields.reverse();\n\t\tfor(var f=0, fmax=fields.length; f<fmax; f++) {\n\t\t\tfieldName = fields[f];\n\t\t\tvar row = this.template,\n\t\t\t\tvalue = tiddler.getFieldString(fieldName);\n\t\t\tif(this.stripTitlePrefix && fieldName === \"title\") {\n\t\t\t\tvar reStrip = /^\\{[^\\}]+\\}(.+)/mg,\n\t\t\t\t\treMatch = reStrip.exec(value);\n\t\t\t\tif(reMatch) {\n\t\t\t\t\tvalue = reMatch[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\trow = $tw.utils.replaceString(row,\"$name$\",fieldName);\n\t\t\trow = $tw.utils.replaceString(row,\"$value$\",value);\n\t\t\trow = $tw.utils.replaceString(row,\"$encoded_value$\",$tw.utils.htmlEncode(value));\n\t\t\ttext.push(row);\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 ||\n\t\tchangedAttributes.include || changedAttributes.sort || changedAttributes.sortReverse ||\n\t\tchangedTiddlers[this.tiddlerTitle] || changedAttributes.stripTitlePrefix) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t} else {\n\t\treturn false;\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 widgetPointer = this;\n\t// Got to flush all the accumulated variables\n\tthis.variables = new this.variablesConstructor();\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\t$tw.utils.each(this.tiddlerList,function(title) {\n\t\tvar parser = widgetPointer.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\tvar node = {\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\tisMacroDefinition: parseTreeNode.isMacroDefinition\n\t\t\t\t};\n\t\t\t\tif (parseTreeNode.isMacroDefinition) {\n\t\t\t\t\t// Macro definitions can be folded into\n\t\t\t\t\t// current widget instead of adding\n\t\t\t\t\t// another link to the chain.\n\t\t\t\t\tvar widget = widgetPointer.makeChildWidget(node);\n\t\t\t\t\twidget.computeAttributes();\n\t\t\t\t\twidget.execute();\n\t\t\t\t\t// We SHALLOW copy over all variables\n\t\t\t\t\t// in widget. We can't use\n\t\t\t\t\t// $tw.utils.assign, because that copies\n\t\t\t\t\t// up the prototype chain, which we\n\t\t\t\t\t// don't want.\n\t\t\t\t\t$tw.utils.each(Object.keys(widget.variables), function(key) {\n\t\t\t\t\t\twidgetPointer.variables[key] = widget.variables[key];\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\twidgetPointer.children = [widgetPointer.makeChildWidget(node)];\n\t\t\t\t\t// No more regenerating children for\n\t\t\t\t\t// this widget. If it needs to refresh,\n\t\t\t\t\t// it'll do so along with the the whole\n\t\t\t\t\t// importvariable tree.\n\t\t\t\t\tif (widgetPointer != this) {\n\t\t\t\t\t\twidgetPointer.makeChildWidgets = function(){};\n\t\t\t\t\t}\n\t\t\t\t\twidgetPointer = widgetPointer.children[0];\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children && parseTreeNode.children[0];\n\t\t\t}\n\t\t} \n\t});\n\n\tif (widgetPointer != this) {\n\t\twidgetPointer.parseTreeNode.children = this.parseTreeNode.children;\n\t} else {\n\t\twidgetPointer.makeChildWidgets();\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*/\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\tvar handled = self.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\tif(handled || self.actions || self.message) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\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\tvar self = this;\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\tif(this.key.substr(0,2) === \"((\" && this.key.substr(-2,2) === \"))\") {\n\t\tthis.shortcutTiddlers = [];\n\t\tvar name = this.key.substring(2,this.key.length -2);\n\t\t$tw.utils.each($tw.keyboardManager.lookupNames,function(platformDescriptor) {\n\t\t\tself.shortcutTiddlers.push(\"$:/config/\" + platformDescriptor + \"/\" + name);\n\t\t});\n\t}\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\t// Update the keyInfoArray if one of its shortcut-config-tiddlers has changed\n\tif(this.shortcutTiddlers && $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers)) {\n\t\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\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;\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 namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"}),\n\t\tdomNode = this.document.createElementNS(namespace,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\tvar namespaceHref = (namespace === \"http://www.w3.org/2000/svg\") ? \"http://www.w3.org/1999/xlink\" : undefined;\n\t\tdomNode.setAttributeNS(namespaceHref,\"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\tevent: event\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 = (this.getVariable(\"tv-show-missing-links\") || \"yes\") === \"no\";\n\t// Make the child widgets\n\tvar templateTree;\n\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\ttemplateTree = this.parseTreeNode.children;\n\t} else {\n\t\t// Default template is a link to the title\n\t\ttemplateTree = [{type: \"text\", text: this.to}];\n\t}\n\tthis.makeChildWidgets(templateTree);\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) {\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};\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.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"}\n\t]);\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\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tthis.invokeActionString(this.catchActions,this,event,{navigateTo: event.navigateTo, modifier: modifierKey});\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// 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\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\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 parser,\n\t\temptyMessage = this.getAttribute(\"emptyMessage\",\"\");\n\t// this.wiki.parseText() calls \n\t// new Parser(..), which should only be done, if needed, because it's heavy!\n\tif (emptyMessage === \"\") {\n\t\treturn [];\n\t}\n\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})();\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/core/modules/widgets/log.js": {
"title": "$:/core/modules/widgets/log.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/log.js\ntype: application/javascript\nmodule-type: widget-subclass\n\nWidget to log debug messages\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.baseClass = \"action-log\";\n\nexports.name = \"log\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n}\n\nexports.prototype = {};\n\nexports.prototype.render = function(event) {\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).render.call(this,event);\t\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).log.call(this);\n}\n\n})();",
"type": "application/javascript",
"module-type": "widget-subclass"
},
"$:/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\t// Check if we've already cached parsing this macro\n\t\tvar mode = this.parseTreeNode.isBlock ? \"blockParser\" : \"inlineParser\",\n\t\t\tparser;\n\t\tif(variableInfo.srcVariable && variableInfo.srcVariable[mode]) {\n\t\t\tparser = variableInfo.srcVariable[mode];\n\t\t} else {\n\t\t\tparser = this.wiki.parseText(this.parseType,text,\n\t\t\t\t\t\t\t\t{parseAsInline: !this.parseTreeNode.isBlock});\n\t\t\tif(variableInfo.isCacheable && variableInfo.srcVariable) {\n\t\t\t\tvariableInfo.srcVariable[mode] = parser;\n\t\t\t}\n\t\t}\n\t\tvar parseTreeNodes = 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 if(this.renderOutput === \"text/raw\") {\n\t\tparseTreeNodes = [{type: \"text\", text: text}];\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/messagecatcher.js": {
"title": "$:/core/modules/widgets/messagecatcher.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/messagecatcher.js\ntype: application/javascript\nmodule-type: widget\n\nMessage catcher 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 MessageCatcherWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nMessageCatcherWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nMessageCatcherWidget.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// Add our message handler\n\tif(this.messageType) {\n\t\tthis.addEventListeners([\n\t\t\t{type: this.messageType, handler: \"handleEvent\"}\n\t\t]);\n\t}\n\t// Render children\n\tthis.renderChildren(parent,null);\n};\n\n/*\nCompute the internal state of the widget\n*/\nMessageCatcherWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes that require a refresh on change\n\tthis.messageType = this.getAttribute(\"type\");\n\tthis.messageActions = this.getAttribute(\"actions\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nHandle an event\n*/\nMessageCatcherWidget.prototype.handleEvent = function(event) {\n\tif(this.messageActions) {\n\t\t// Collect all the event properties into variables\n\t\tvar collectProps = function(obj,prefix) {\n\t\t\t\tprefix = prefix || \"\";\n\t\t\t\tvar props = {};\n\t\t\t\t$tw.utils.each(obj,function(value,name) {\n\t\t\t\t\tif([\"string\",\"boolean\",\"number\"].indexOf(typeof value) !== -1) {\n\t\t\t\t\t\tprops[prefix + name] = value.toString();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\treturn props;\n\t\t\t};\n\t\tvar variables = $tw.utils.extend(\n\t\t\t{},\n\t\t\tcollectProps(event.paramObject,\"event-paramObject-\"),\n\t\t\tcollectProps(event,\"event-\"),\n\t\t\t{\n\t\t\t\tmodifier: $tw.keyboardManager.getEventModifierKeyDescriptor(event)\n\t\t\t});\n\t\tthis.invokeActionString(this.messageActions,this,event,variables);\n\t}\n\treturn false;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nMessageCatcherWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"type\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.messagecatcher = MessageCatcherWidget;\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};\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.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\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\tthis.story = new $tw.Story({\n\t\twiki: this.wiki,\n\t\tstoryTitle: this.storyTitle,\n\t\thistoryTitle: this.historyTitle\n\t});\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\tif(this.storyTitle) {\n\t\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t{title: this.storyTitle},\n\t\t\tstoryTiddler,\n\t\t\t{list: storyList}\n\t\t));\t\t\n\t}\n};\n\nNavigatorWidget.prototype.removeTitleFromStory = function(storyList,title) {\n\tif(storyList) {\n\t\tvar p = storyList.indexOf(title);\n\t\twhile(p !== -1) {\n\t\t\tstoryList.splice(p,1);\n\t\t\tp = storyList.indexOf(title);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.replaceFirstTitleInStory = function(storyList,oldTitle,newTitle) {\n\tif(storyList) {\n\t\tvar pos = storyList.indexOf(oldTitle);\n\t\tif(pos !== -1) {\n\t\t\tstoryList[pos] = newTitle;\n\t\t\tdo {\n\t\t\t\tpos = storyList.indexOf(oldTitle,pos + 1);\n\t\t\t\tif(pos !== -1) {\n\t\t\t\t\tstoryList.splice(pos,1);\n\t\t\t\t}\n\t\t\t} while(pos !== -1);\n\t\t} else {\n\t\t\tstoryList.splice(0,0,newTitle);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.addToStory = function(title,fromTitle) {\n\tif(this.storyTitle) {\n\t\tthis.story.addToStory(title,fromTitle,{\n\t\t\topenLinkFromInsideRiver: this.getAttribute(\"openLinkFromInsideRiver\",\"top\"),\n\t\t\topenLinkFromOutsideRiver: this.getAttribute(\"openLinkFromOutsideRiver\",\"top\")\n\t\t});\n\t}\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.story.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\t\ttext: \"\",\n\t\t\t},\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\treturn this.wiki.generateDraftTitle(title);\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,tiddler);\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)) {\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\tthis.wiki.getCreationFields(),\n\t\texistingTiddler,\n\t\tfilteredAdditionalFields,\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 && storyList.indexOf(draftTitle) === -1) {\n\t\tvar slot = storyList.indexOf(event.navigateFromTitle);\n\t\tif(slot === -1) {\n\t\t\tslot = this.getAttribute(\"openLinkFromOutsideRiver\",\"top\") === \"bottom\" ? storyList.length - 1 : slot;\n\t\t}\n\t\tstoryList.splice(slot + 1,0,draftTitle);\n\t}\n\tif(storyList && 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 importTitle = event.importTitle ? event.importTitle : IMPORT_TITLE,\n\t\timportTiddler = this.wiki.getTiddler(importTitle),\n\t\timportData = this.wiki.getTiddlerData(importTitle,{}),\n\t\tnewFields = new Object({\n\t\t\ttitle: importTitle,\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\tnewFields[\"suppressed-\" + title] = \"yes\";\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\tvar autoOpenOnImport = event.autoOpenOnImport ? event.autoOpenOnImport : this.getVariable(\"tv-auto-open-on-import\"); \n\tif(autoOpenOnImport !== \"no\") {\n\t\tvar storyList = this.getStoryList(),\n\t\t\thistory = [];\n\t\t// Add it to the story\n\t\tif(storyList && storyList.indexOf(importTitle) === -1) {\n\t\t\tstoryList.unshift(importTitle);\n\t\t}\n\t\t// And to history\n\t\thistory.push(importTitle);\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\tif($tw.utils.hop(importTiddler.fields,[\"rename-\" + title])) {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields,{title : importTiddler.fields[\"rename-\" + title]});\n\t\t\t} else {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\t\t\t}\n\t\t\ttiddler = $tw.hooks.invokeHook(\"th-importing-tiddler\",tiddler);\n\t\t\tself.wiki.addTiddler(tiddler);\n\t\t\timportReport.push(\"# [[\" + tiddler.fields.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 || \"$:/state/folded/\";\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\tvar options = {},\n\t\tparamObject = event.paramObject || {},\n\t\tfrom = paramObject.from || event.tiddlerTitle,\n\t\tto = paramObject.to;\n\toptions.dontRenameInTags = (paramObject.renameInTags === \"false\" || paramObject.renameInTags === \"no\") ? true : false;\n\toptions.dontRenameInLists = (paramObject.renameInLists === \"false\" || paramObject.renameInLists === \"no\") ? true : false;\n\tthis.wiki.renameTiddler(from,to,options);\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/qualify.js": {
"title": "$:/core/modules/widgets/qualify.js",
"text": "/*\\\ntitle: $:/core/modules/widgets/qualify.js\ntype: application/javascript\nmodule-type: widget\n\nQualify text to 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 QualifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nQualifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nQualifyWidget.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*/\nQualifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.qualifyName = this.getAttribute(\"name\");\n\tthis.qualifyTitle = this.getAttribute(\"title\");\n\t// Set context variable\n\tif(this.qualifyName) {\n\t\tthis.setVariable(this.qualifyName,this.qualifyTitle + \"-\" + this.getStateQualifier());\n\t}\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*/\nQualifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.title) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.qualify = QualifyWidget;\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;\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.checked = true;\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",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(tiddler) {\n\t\tif(this.radioIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.radioTitle,this.radioIndex);\n\t\t} else {\n\t\t\tvalue = tiddler.getFieldString(this.radioField);\n\t\t}\n\t} else {\n\t\tvalue = this.radioDefault;\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\t// Trigger actions\n\tif(this.radioActions) {\n\t\tthis.invokeActionString(this.radioActions,this,event,{\"actionValue\": this.radioValue});\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\tthis.radioDefault = this.getAttribute(\"default\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\tthis.radioActions = this.getAttribute(\"actions\",\"\");\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(($tw.utils.count(changedAttributes) > 0)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedTiddlers[this.radioTitle]) {\n\t\tthis.inputDomNode.checked = this.getValue() === this.radioValue;\n\t\treturn this.refreshChildren(changedTiddlers);\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\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\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.inputDomNode.value = this.getValue();\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name:\"mousedown\", handlerObject:this, handlerMethod:\"handleMouseDownEvent\"},\n\t\t{name:\"mouseup\", handlerObject:this, handlerMethod:\"handleMouseUpEvent\"},\n\t\t{name:\"change\", handlerObject:this, handlerMethod:\"handleChangeEvent\"},\n\t\t{name:\"input\", handlerObject:this, handlerMethod:\"handleInputEvent\"},\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\tfieldName = this.tiddlerField,\n\t\tvalue = this.defaultValue;\n\tif(tiddler) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(tiddler,this.tiddlerIndex,this.defaultValue);\n\t\t} else {\n\t\t\tif($tw.utils.hop(tiddler.fields,fieldName)) {\n\t\t\t\tvalue = tiddler.fields[fieldName] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.defaultValue;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nRangeWidget.prototype.getActionVariables = function(options) {\n\toptions = options || {};\n\tvar hasChanged = (this.startValue !== this.inputDomNode.value) ? \"yes\" : \"no\";\n\t// Trigger actions. Use variables = {key:value, key:value ...}\n\t// the \"value\" is needed.\n\treturn $tw.utils.extend({\"actionValue\": this.inputDomNode.value, \"actionValueHasChanged\": hasChanged}, options);\n}\n\n// actionsStart\nRangeWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.mouseDown = true; // TODO remove once IE is gone.\n\tthis.startValue = this.inputDomNode.value; // TODO remove this line once IE is gone!\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseDown) {\n\t\tvar variables = this.getActionVariables() // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsMouseDown,this,event,variables);\n\t}\n}\n\n// actionsStop\nRangeWidget.prototype.handleMouseUpEvent = function(event) {\n\tthis.mouseDown = false; // TODO remove once IE is gone.\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseUp) {\n\t\tvar variables = this.getActionVariables()\n\t\tthis.invokeActionString(this.actionsMouseUp,this,event,variables);\n\t}\n\t// TODO remove the following if() once IE is gone!\n\tif ($tw.browser.isIE) {\n\t\tif (this.startValue !== this.inputDomNode.value) {\n\t\t\tthis.handleChangeEvent(event);\n\t\t\tthis.startValue = this.inputDomNode.value;\n\t\t}\n\t}\n}\n\nRangeWidget.prototype.handleChangeEvent = function(event) {\n\tif (this.mouseDown) { // TODO refactor this function once IE is gone.\n\t\tthis.handleInputEvent(event);\n\t}\n};\n\nRangeWidget.prototype.handleInputEvent = function(event) {\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsInput) {\n\t\t// \"tiddler\" parameter may be missing. See .execute() below\n\t\tvar variables = this.getActionVariables({\"actionValueHasChanged\": \"yes\"}) // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsInput,this,event,variables);\n\t}\n};\n\nRangeWidget.prototype.handleEvent = function(event) {\n\tif(this.getValue() !== this.inputDomNode.value) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,\"\",this.tiddlerIndex,this.inputDomNode.value);\n\t\t} else {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,this.tiddlerField,null,this.inputDomNode.value);\n\t\t}\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRangeWidget.prototype.execute = function() {\n\t// TODO remove the next 1 lines once IE is gone!\n\tthis.mouseUp = true; // Needed for IE10\n\t// Get the parameters from the attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.tiddlerField = this.getAttribute(\"field\",\"text\");\n\tthis.tiddlerIndex = this.getAttribute(\"index\");\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\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Actions since 5.1.23\n\t// Next 2 only fire once!\n\tthis.actionsMouseDown = this.getAttribute(\"actionsStart\",\"\");\n\tthis.actionsMouseUp = this.getAttribute(\"actionsStop\",\"\");\n\t// Input fires very often!\n\tthis.actionsInput = this.getAttribute(\"actions\",\"\");\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($tw.utils.count(changedAttributes) > 0) {\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\tvar value = this.getValue();\n\t\t\tif(this.inputDomNode.value !== value) {\n\t\t\t\tthis.inputDomNode.value = value;\n\t\t\t}\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\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\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\tvar left,top;\n\tswitch(this.position) {\n\t\tcase \"left\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"above\":\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"aboveright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"belowright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\t\t\t\n\t\tcase \"right\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"belowleft\":\n\t\t\tleft = this.popup.left + this.popup.width - domNode.offsetWidth;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t\tcase \"aboveleft\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\t\t\t\n\t\tdefault: // Below\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t}\n\tif(!this.positionAllowNegative) {\n\t\tleft = Math.max(0,left);\n\t\ttop = Math.max(0,top);\n\t}\n\tdomNode.style.left = left + \"px\";\n\tdomNode.style.top = top + \"px\";\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.positionAllowNegative = this.getAttribute(\"positionAllowNegative\") === \"yes\";\n\t// class attribute handled in assignDomNodeClasses()\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\tthis.updatePopupPosition = this.getAttribute(\"updatePopupPosition\",\"no\") === \"yes\";\n\t// Compute the title of the state tiddler and read it\n\tthis.stateTiddlerTitle = this.state;\n\tthis.stateTitle = this.getAttribute(\"stateTitle\");\n\tthis.stateField = this.getAttribute(\"stateField\");\n\tthis.stateIndex = this.getAttribute(\"stateIndex\");\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,\n\t defaultState = this[\"default\"];\n\tif(this.stateTitle) {\n\t\tvar stateTitleTiddler = this.wiki.getTiddler(this.stateTitle);\n\t\tif(this.stateField) {\n\t\t\tstate = stateTitleTiddler ? stateTitleTiddler.getFieldString(this.stateField) || defaultState : defaultState;\n\t\t} else if(this.stateIndex) {\n\t\t\tstate = stateTitleTiddler ? this.wiki.extractTiddlerDataItem(this.stateTitle,this.stateIndex) || defaultState : defaultState;\n\t\t} else if(stateTitleTiddler) {\n\t\t\tstate = this.wiki.getTiddlerText(this.stateTitle) || defaultState;\n\t\t} else {\n\t\t\tstate = defaultState;\n\t\t}\n\t} else {\n\t\tstate = this.stateTiddlerTitle ? this.wiki.getTextReference(this.state,this[\"default\"],this.getVariable(\"currentTiddler\")) : this[\"default\"];\n\t}\n\tif(state === null) {\n\t\tstate = this[\"default\"];\n\t}\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.text === state;\n\t\t\tbreak;\n\t\tcase \"nomatch\":\n\t\t\tthis.isOpen = this.text !== state;\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\nRevealWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-reveal\");\n\tthis.domNode.className = classes.join(\" \");\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.positionAllowNegative || changedAttributes[\"default\"] || changedAttributes.animate || changedAttributes.stateTitle || changedAttributes.stateField || changedAttributes.stateIndex) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar currentlyOpen = 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\treturn true;\n\t\t\t}\n\t\t} else if(this.type === \"popup\" && this.updatePopupPosition && (changedTiddlers[this.state] || changedTiddlers[this.stateTitle])) {\n\t\t\tthis.positionPopup(this.domNode);\n\t\t}\n\t\tif(changedAttributes.style) {\n\t\t\tthis.domNode.style = this.getAttribute(\"style\",\"\");\n\t\t}\n\t\tif(changedAttributes[\"class\"]) {\n\t\t\tthis.assignDomNodeClasses();\n\t\t}\t\t\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\n/*\nCalled by refresh() to dynamically show or hide the content\n*/\nRevealWidget.prototype.updateState = function() {\n\tvar self = this;\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\t//make sure that the state hasn't changed during the close animation\n\t\t\tself.readState()\n\t\t\tif(!self.isOpen) {\n\t\t\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t\t\t}\n\t\t}});\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};\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\tif(event.paramObject && event.paramObject.selector) {\n\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t} else {\n\t\tthis.scrollIntoView(event.target);\t\t\t\n\t}\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\tsrcWindow = element ? element.ownerDocument.defaultView : window;\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(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\t\tdrawFrame();\n\t}\n};\n\nScrollableWidget.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nScrollableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\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\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\tselect.children[i].selected = values.indexOf(select.children[i].value) !== -1\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\tthis.selectTooltip = this.getAttribute(\"tooltip\");\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\tif(this.selectTooltip) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"title\",this.selectTooltip);\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 || changedAttributes.selectTooltip) {\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,!!this.parseTreeNode.isMacroDefinition);\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\tthis.recursionMarker = this.getAttribute(\"recursionMarker\",\"yes\");\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\tif(this.recursionMarker === \"yes\") {\n\t\tthis.setVariable(\"transclusion\",recursionMarker);\n\t}\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// Assign any variables set via attributes starting with $\n\tvar variables = Object.create(null);\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) === \"$\") {\n\t\t\tvariables[name.substr(1)] = attribute;\n\t\t}\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes,{\n\t\tvariables: variables\n\t});\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($tw.utils.count(changedAttributes) || 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// 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\t// Call the constructor\n\tWidget.call(this);\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\tthis.initialise(parseTreeNode,options);\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\t// Bail if parseTreeNode is undefined, meaning that the widget constructor was called without any arguments so that it can be subclassed\n\tif(parseTreeNode === undefined) {\n\t\treturn;\n\t}\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\t// Get widget classes\n\t\tWidget.prototype.widgetClasses = $tw.modules.applyMethods(\"widget\");\n\t\t// Process any subclasses\n\t\t$tw.modules.forEachModuleOfType(\"widget-subclass\",function(title,module) {\n\t\t\tif(module.baseClass) {\n\t\t\t\tvar baseClass = Widget.prototype.widgetClasses[module.baseClass];\n\t\t\t\tif(!baseClass) {\n\t\t\t\t\tthrow \"Module '\" + title + \"' is attemping to extend a non-existent base class '\" + module.baseClass + \"'\";\n\t\t\t\t}\n\t\t\t\tvar subClass = module.constructor;\n\t\t\t\tsubClass.prototype = new baseClass();\n\t\t\t\t$tw.utils.extend(subClass.prototype,module.prototype);\n\t\t\t\tWidget.prototype.widgetClasses[module.name || module.baseClass] = subClass;\n\t\t\t}\n\t\t});\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\nisMacroDefinition: true if the variable is set via a \\define macro pragma (and hence should have variable substitution performed)\n*/\nWidget.prototype.setVariable = function(name,value,params,isMacroDefinition) {\n\tthis.variables[name] = {value: value, params: params, isMacroDefinition: !!isMacroDefinition};\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\toriginalValue = variable.value,\n\t\t\tvalue = originalValue,\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\t// Only substitute variable references if this variable was defined with the \\define pragma\n\t\tif(variable.isMacroDefinition) {\n\t\t\tvalue = this.substituteVariableReferences(value);\t\t\t\n\t\t}\n\t\treturn {\n\t\t\ttext: value,\n\t\t\tparams: params,\n\t\t\tsrcVariable: variable,\n\t\t\tisCacheable: originalValue === value\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,options) {\n\toptions = options || {};\n\tthis.children = [];\n\tvar self = this;\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: parseTreeNodes\n\t\t};\n\t\tparseTreeNodes = [setVariableWidget];\n\t});\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\noptions include:\n\tvariables: optional hashmap of variables to wrap around the widget\n*/\nWidget.prototype.makeChildWidget = function(parseTreeNode,options) {\n\toptions = options || {};\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\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\t\tparseTreeNode\n\t\t\t]\n\t\t};\n\t\tparseTreeNode = setVariableWidget;\n\t});\n\treturn new WidgetClass(parseTreeNode,{\n\t\twiki: this.wiki,\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\tvar children = this.children;\n\tfor(var i = 0; i < children.length; i++) {\n\t\tchildren[i].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\tevent.widget = event.widget || this;\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 children = this.children,\n\t\trefreshed = false;\n\tfor (var i = 0; i < children.length; i++) {\n\t\trefreshed = children[i].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\n/*\nExecute action tiddlers by tag\n*/\nWidget.prototype.invokeActionsByTag = function(tag,event,variables) {\n\tvar self = this;\n\t$tw.utils.each(self.wiki.filterTiddlers(\"[all[shadows+tiddlers]tag[\" + tag + \"]!has[draft.of]]\"),function(title) {\n\t\tself.invokeActionString(self.wiki.getTiddlerText(title),self,event,variables);\n\t});\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 ? tiddler.fields.tags.slice(0) : undefined,\n\t\t\t\t\tlist = tiddler.fields.list ? tiddler.fields.list.slice(0) : undefined,\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/*\nAdd available indexers to this wiki\n*/\nexports.addIndexersToWiki = function() {\n\tvar self = this;\n\t$tw.utils.each($tw.modules.applyMethods(\"indexer\"),function(Indexer,name) {\n\t\tself.addIndexer(new Indexer(self),name);\n\t});\n};\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\nexports.isBinaryTiddler = 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.encoding === \"base64\";\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($tw.utils.isDate(a) && $tw.utils.isDate(b)) {\n\t\t\treturn isDescending ? b - a : a - b;\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 {\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 within the given parse tree\n */\nexports.extractLinks = function(parseTreeRoot) {\n\t// Count up the links\n\tvar links = [],\n\t\tcheckParseTree = function(parseTree) {\n\t\t\tfor(var t=0; t<parseTree.length; t++) {\n\t\t\t\tvar parseTreeNode = parseTree[t];\n\t\t\t\tif(parseTreeNode.type === \"link\" && parseTreeNode.attributes.to && parseTreeNode.attributes.to.type === \"string\") {\n\t\t\t\t\tvar value = parseTreeNode.attributes.to.value;\n\t\t\t\t\tif(links.indexOf(value) === -1) {\n\t\t\t\t\t\tlinks.push(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(parseTreeNode.children) {\n\t\t\t\t\tcheckParseTree(parseTreeNode.children);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\tcheckParseTree(parseTreeRoot);\n\treturn links;\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\tif(parser) {\n\t\t\treturn self.extractLinks(parser.tree);\n\t\t}\n\t\treturn [];\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\tbacklinksIndexer = this.getIndexer(\"BacklinksIndexer\"),\n\t\tbacklinks = backlinksIndexer && backlinksIndexer.lookup(targetTitle);\n\n\tif(!backlinks) {\n\t\tbacklinks = [];\n\t\tthis.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self.getTiddlerLinks(title);\n\t\t\tif(links.indexOf(targetTitle) !== -1) {\n\t\t\t\tbacklinks.push(title);\n\t\t\t}\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\t// Try to use the indexer\n\tvar self = this,\n\t\ttagIndexer = this.getIndexer(\"TagIndexer\"),\n\t\tresults = tagIndexer && tagIndexer.subIndexers[3].lookup(tag);\n\tif(!results) {\n\t\t// If not available, perform a manual scan\n\t\tresults = this.getGlobalCache(\"taglist-\" + tag,function() {\n\t\t\tvar tagmap = self.getTagMap();\n\t\t\treturn self.sortByList(tagmap[tag],tag);\n\t\t});\n\t}\n\treturn results;\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 self = this,\n\t\treplacedTitles = Object.create(null);\n\t// Given a title, this function will place it in the correct location\n\t// within titles.\n\tfunction moveItemInList(title) {\n\t\tif(!$tw.utils.hop(replacedTitles, title)) {\n\t\t\treplacedTitles[title] = true;\n\t\t\tvar newPos = -1,\n\t\t\t\ttiddler = self.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\t// if this title is placed relative\n\t\t\t\t\t// to another title, make sure that\n\t\t\t\t\t// title is placed before we place\n\t\t\t\t\t// this one.\n\t\t\t\t\tmoveItemInList(beforeTitle);\n\t\t\t\t\tnewPos = titles.indexOf(beforeTitle);\n\t\t\t\t} else if(afterTitle) {\n\t\t\t\t\t// Same deal\n\t\t\t\t\tmoveItemInList(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\t// If a new position is specified, let's move it\n\t\t\t\tif (newPos !== -1) {\n\t\t\t\t\t// get its current Pos, and make sure\n\t\t\t\t\t// sure that it's _actually_ in the list\n\t\t\t\t\t// and that it would _actually_ move\n\t\t\t\t\t// (#4275) We don't bother calling\n\t\t\t\t\t// indexOf unless we have a new\n\t\t\t\t\t// position to work with\n\t\t\t\t\tvar currPos = titles.indexOf(title);\n\t\t\t\t\tif(currPos >= 0 && newPos !== currPos) {\n\t\t\t\t\t\t// move it!\n\t\t\t\t\t\ttitles.splice(currPos,1);\n\t\t\t\t\t\tif(newPos >= currPos) {\n\t\t\t\t\t\t\tnewPos--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitles.splice(newPos,0,title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\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\tmoveItemInList(title);\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\nexports.getTiddlersAsJson = function(filter,spaces) {\n\tvar tiddlers = this.filterTiddlers(filter),\n\t\tspaces = (spaces === undefined) ? $tw.config.preferences.jsonSpaces : spaces,\n\t\tdata = [];\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\tvar tiddler = this.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,spaces);\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\t// Use the generic binary parser for any binary types not registered so far\n\tif($tw.Wiki.parsers[\"application/octet-stream\"]) {\n\t\tObject.keys($tw.config.contentTypeInfo).forEach(function(type) {\n\t\t\tif(!$tw.utils.hop($tw.Wiki.parsers,type) && $tw.config.contentTypeInfo[type].encoding === \"base64\") {\n\t\t\t\t$tw.Wiki.parsers[type] = $tw.Wiki.parsers[\"application/octet-stream\"];\n\t\t\t}\n\t\t});\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,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.recursionMarker : optional flag to set a recursion marker, defaults to \"yes\"\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\trecursionMarker: {\n\t\t\t\t\tname: \"recursionMarker\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: options.recursionMarker || \"yes\"\n\t\t\t\t\t},\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\t\t}\n\t\t\t},\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 this.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\tfield: If specified, restricts the search to the specified field, or an array of field names\n\tanchored: If true, forces all but regexp searches to be anchored to the start of text\n\texcludeField: If true, the field options are inverted to specify the fields that are not to be searched\n\tThe search mode is determined by the first of these boolean flags to be true\n\t\tliteral: searches for literal string\n\t\twhitespace: same as literal except runs of whitespace are treated as a single space\n\t\tregexp: treats the search term as a regular expression\n\t\twords: (default) treats search string as a list of tokens, and matches if all tokens are found, regardless of adjacency or ordering\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\t\tanchor = options.anchored ? \"^\" : \"\";\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(\"(\" + anchor + $tw.utils.escapeRegExp(text) + \")\",flags)];\n\t\t}\n\t} else if(options.whitespace) {\n\t\tterms = [];\n\t\t$tw.utils.each(text.split(/\\s+/g),function(term) {\n\t\t\tif(term) {\n\t\t\t\tterms.push($tw.utils.escapeRegExp(term));\n\t\t\t}\n\t\t});\n\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + terms.join(\"\\\\s+\") + \")\",flags)];\n\t} else if(options.regexp) {\n\t\ttry {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + text + \")\",flags)];\t\t\t\n\t\t} catch(e) {\n\t\t\tsearchTermsRegExps = null;\n\t\t\tconsole.log(\"Regexp error parsing /(\" + text + \")/\" + flags + \": \",e);\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(\"(\" + anchor + $tw.utils.escapeRegExp(terms[t]) + \")\",flags));\n\t\t\t}\n\t\t}\n\t}\n\t// Accumulate the array of fields to be searched or excluded from the search\n\tvar fields = [];\n\tif(options.field) {\n\t\tif($tw.utils.isArray(options.field)) {\n\t\t\t$tw.utils.each(options.field,function(fieldName) {\n\t\t\t\tif(fieldName) {\n\t\t\t\t\tfields.push(fieldName);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tfields.push(options.field);\n\t\t}\n\t}\n\t// Use default fields if none specified and we're not excluding fields (excluding fields with an empty field array is the same as searching all fields)\n\tif(fields.length === 0 && !options.excludeField) {\n\t\tfields.push(\"title\");\n\t\tfields.push(\"tags\");\n\t\tfields.push(\"text\");\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 notYetFound = searchTermsRegExps.slice();\n\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\tsearchFields;\n\t\t// Get the list of fields we're searching\n\t\tif(options.excludeField) {\n\t\t\tsearchFields = Object.keys(tiddler.fields);\n\t\t\t$tw.utils.each(fields,function(fieldName) {\n\t\t\t\tvar p = searchFields.indexOf(fieldName);\n\t\t\t\tif(p !== -1) {\n\t\t\t\t\tsearchFields.splice(p,1);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsearchFields = fields;\n\t\t}\n\t\tfor(var fieldIndex=0; notYetFound.length>0 && fieldIndex<searchFields.length; fieldIndex++) {\n\t\t\t// Don't search the text field if the content type is binary\n\t\t\tvar fieldName = searchFields[fieldIndex];\n\t\t\tif(fieldName === \"text\" && contentTypeInfo.encoding !== \"utf8\") {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tvar str = tiddler.fields[fieldName],\n\t\t\t\tt;\n\t\t\tif(str) {\n\t\t\t\tif($tw.utils.isArray(str)) {\n\t\t\t\t\t// If the field value is an array, test each regexp against each field array entry and fail if each regexp doesn't match at least one field array entry\n\t\t\t\t\tfor(var s=0; s<str.length; s++) {\n\t\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\t\tif(notYetFound[t].test(str[s])) {\n\t\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt++;\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} else {\n\t\t\t\t\t// If the field isn't an array, force it to a string and test each regexp against it and fail if any do not match\n\t\t\t\t\tstr = tiddler.getFieldString(fieldName);\n\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\tif(notYetFound[t].test(str)) {\n\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt++;\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\treturn notYetFound.length == 0;\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) !== 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.hasField(\"_is_skinny\")) {\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],$tw.utils.extend({},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\"};\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);\t\n\tconsole.log(\"$tw.wiki.addToHistory() is deprecated since V5.1.23! Use the this.story.addToHistory() from the story-object!\")\n};\n\n/*\nAdd a new tiddler to the story river\ntitle: a title string or an array of title strings\nfromTitle: the title of the tiddler from which the navigation originated\nstoryTitle: title of story tiddler (defaults to $:/StoryList)\noptions: see story.js\n*/\nexports.addToStory = function(title,fromTitle,storyTitle,options) {\n\tvar story = new $tw.Story({wiki: this, storyTitle: storyTitle});\n\tstory.addToStory(title,fromTitle,options);\n\tconsole.log(\"$tw.wiki.addToStory() is deprecated since V5.1.23! Use the this.story.addToStory() from the story-object!\")\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nexports.generateDraftTitle = function(title) {\n\tvar c = 0,\n\t\tdraftTitle,\n\t\tusername = this.getTiddlerText(\"$:/status/UserName\"),\n\t\tattribution = username ? \" by \" + username : \"\";\n\tdo {\n\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\" + attribution;\n\t\tc++;\n\t} while(this.tiddlerExists(draftTitle));\n\treturn draftTitle;\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// Determine whether a plugin by title is dynamically loadable\nexports.doesPluginRequireReload = function(title) {\n\treturn this.doesPluginInfoRequireReload(this.getPluginInfo(title) || this.getTiddlerDataCached(title));\n};\n\n// Determine whether a plugin info structure is dynamically loadable\nexports.doesPluginInfoRequireReload = function(pluginInfo) {\n\tif(pluginInfo) {\n\t\tvar foundModule = false;\n\t\t$tw.utils.each(pluginInfo.tiddlers,function(tiddler) {\n\t\t\tif(tiddler.type === \"application/javascript\" && $tw.utils.hop(tiddler,\"module-type\")) {\n\t\t\t\tfoundModule = true;\n\t\t\t}\n\t\t});\n\t\treturn foundModule;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.slugify = function(title,options) {\n\tvar tiddler = this.getTiddler(title),\n\t\tslug;\n\tif(tiddler && tiddler.fields.slug) {\n\t\tslug = tiddler.fields.slug;\n\t} else {\n\t\tslug = $tw.utils.transliterate(title.toString().toLowerCase()) // Replace diacritics with basic lowercase ASCII\n\t\t\t.replace(/\\s+/g,\"-\") // Replace spaces with -\n\t\t\t.replace(/[^\\w\\-\\.]+/g,\"\") // Remove all non-word chars except dash and dot\n\t\t\t.replace(/\\-\\-+/g,\"-\") // Replace multiple - with single -\n\t\t\t.replace(/^-+/,\"\") // Trim - from start of text\n\t\t\t.replace(/-+$/,\"\"); // Trim - from end of text\n\t}\n\t// If the resulting slug is blank (eg because the title is just punctuation characters)\n\tif(!slug) {\n\t\t// ...then just use the character codes of the title\n\t\tvar result = [];\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tresult.push(char.charCodeAt(0).toString());\n\t\t});\n\t\tslug = result.join(\"-\");\n\t}\n\treturn slug;\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\nselect-tag-background:\nselect-tag-foreground:\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\nselect-tag-background:\nselect-tag-foreground:\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\nselect-tag-background:\nselect-tag-foreground:\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\nselect-tag-background:\nselect-tag-foreground:\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\nselect-tag-background:\nselect-tag-foreground:\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/CupertinoDark": {
"title": "$:/palettes/CupertinoDark",
"tags": "$:/tags/Palette",
"name": "Cupertino Dark",
"description": "A macOS inspired dark palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #FF453A\nalert-border: #FF453A\nalert-highlight: #FFD60A\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #282828\nblockquote-bar: <<colour page-background>>\nbutton-foreground: <<colour background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #FF453A\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour tiddler-info-background>>\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: #3F638B\ndropdown-tab-background: #323232\ndropzone-background: #30D158\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #BF5AF2\nexternal-link-foreground: #32D74B\nforeground: #FFFFFF\nmenubar-background: #464646\nmenubar-foreground: #ffffff\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: #98989D\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #323232\npre-background: #464646\npre-border: transparent\nprimary: #0A84FF\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour background>>\nsidebar-controls-foreground-hover: #FF9F0A\nsidebar-controls-foreground: #8E8E93\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: #3F638B\nsidebar-tab-background: <<colour background>>\nsidebar-tab-border-selected: <<colour background>>\nsidebar-tab-border: <<colour background>>\nsidebar-tab-divider: <<colour background>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: #ffffff\nstatic-alert-foreground: #B4B4B4\ntab-background-selected: #3F638B\ntab-background: <<colour page-background>>\ntab-border-selected: <<colour page-background>>\ntab-border: <<colour page-background>>\ntab-divider: <<colour page-background>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #464646\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #48484A\ntag-foreground: #323232\ntiddler-background: <<colour background>>\ntiddler-border: transparent\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: #48484A\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #1E1E1E\ntiddler-info-border: #1E1E1E\ntiddler-info-tab-background: #3F638B\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\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 very-muted-foreground>>\nvery-muted-foreground: #464646\nselection-background: #3F638B\nselection-foreground: #ffffff\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #3F638B\nwikilist-button-foreground: <<colour foreground>>\nwikilist-button-open: #32D74B\nwikilist-button-open-hover: #32D74B\nwikilist-button-reveal: #0A84FF\nwikilist-button-reveal-hover: #0A84FF\nwikilist-button-remove: #FF453A\nwikilist-button-remove-hover: #FF453A\nwikilist-droplink-dragover: #32D74B\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour foreground>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-url: <<colour muted-foreground>>\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\nselect-tag-background:\nselect-tag-foreground:\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/DesertSand": {
"title": "$:/palettes/DesertSand",
"tags": "$:/tags/Palette",
"name": "Desert Sand",
"description": "A desert sand palette",
"type": "application/x-tiddler-dictionary",
"text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #E9E0C7\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour foreground>>\ncode-background: #F3EDDF\ncode-border: #C3BAA1\ncode-foreground: #ab3250\ndiff-delete-background: #bd8b8b\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #91c093\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ad3434\ndownload-background: #6ca16c\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: #E9E0C7\ndropdown-tab-background: #BAB29C\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: #313163\nexternal-link-foreground: #555592\nforeground: #2D2A23\nmenubar-background: #CDC2A6\nmenubar-foreground: #5A5446\nmessage-background: #ECE5CF\nmessage-border: #D6CBAA\nmessage-foreground: #5f6e7d\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #8A8885\nmodal-footer-background: #CDC2A6\nmodal-footer-border: #9D998E\nmodal-header-border: #9D998E\nmuted-foreground: #9D998E\nnotification-background: #F0E9D7\nnotification-border: #939189\npage-background: #e0d3af\npre-background: #D6CBAA\npre-border: #CDC2A6\nprimary: #5B6F55\nselection-background: #9D947B\nselection-foreground: <<colour foreground>>\nselect-tag-background: #F0E9D7\nselect-tag-foreground: #2D2A23\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #2D2A23\nsidebar-controls-foreground: #867F69\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #867F69\nsidebar-muted-foreground-hover: #706A58\nsidebar-muted-foreground: #B3A98C\nsidebar-tab-background-selected: #e0d3af\nsidebar-tab-background: #A6A193\nsidebar-tab-border-selected: #C3BAA1\nsidebar-tab-border: #C3BAA1\nsidebar-tab-divider: #CDC2A6\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #2D2A23\nsidebar-tiddler-link-foreground-hover: #433F35\nsidebar-tiddler-link-foreground: #706A58\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #A6A193\ntab-background-selected: #E9E0C7\ntab-background: #A6A193\ntab-border-selected: #C3BAA1\ntab-border: #C3BAA1\ntab-divider: #CDC2A6\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #2D2A23\ntable-border: #9D998E\ntable-footer-background: #8A8885\ntable-header-background: #B0AA98\ntag-background: #706A58\ntag-foreground: #E3D7B7\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #9D947B\ntiddler-controls-foreground-selected: #706A58\ntiddler-controls-foreground: #C3BAA1\ntiddler-editor-background: #E9E0C7\ntiddler-editor-border-image: #A6A193\ntiddler-editor-border: #A6A193\ntiddler-editor-fields-even: #D6CBAA\ntiddler-editor-fields-odd: #C3BAA1\ntiddler-info-background: #E3D7B7\ntiddler-info-border: #BAB29C\ntiddler-info-tab-background: #E9E0C7\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #867F69\ntiddler-title-foreground: #374464\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: #8A8885\nvery-muted-foreground: #CDC2A6\nwikilist-background: <<colour page-background>>\nwikilist-item: #CDC2A6\nwikilist-info: #161512\nwikilist-title: #433F35\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #706A58\nwikilist-button-open: #7db66a\nwikilist-button-open-hover: #56a556\nwikilist-button-reveal: #5a6c9e\nwikilist-button-reveal-hover: #454591\nwikilist-button-remove: #bc5972\nwikilist-button-remove-hover: #814040\nwikilist-toolbar-background: #CDC2A6\nwikilist-toolbar-foreground: #2D2A23\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #A6A193\nwikilist-button-foreground: #161512\n"
},
"$:/palettes/GruvboxDark": {
"title": "$:/palettes/GruvboxDark",
"name": "Gruvbox Dark",
"description": "Retro groove color scheme",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"license": "https://github.com/morhetz/gruvbox",
"text": "alert-background: #cc241d\nalert-border: #cc241d\nalert-highlight: #d79921\nalert-muted-foreground: #504945\nbackground: #3c3836\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #504945\ncode-border: #504945\ncode-foreground: #fb4934\ndiff-delete-background: #fb4934\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #b8bb26\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #fb4934\ndownload-background: #b8bb26\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #665c54\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ebdbb2\ndropdown-tab-background: #665c54\ndropzone-background: #98971a\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #d3869b\nexternal-link-foreground: #8ec07c\nforeground: #fbf1c7\nmenubar-background: #504945\nmenubar-foreground: <<colour foreground>>\nmessage-background: #83a598\nmessage-border: #83a598\nmessage-foreground: #3c3836\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #504945\nmodal-footer-background: #3c3836\nmodal-footer-border: #3c3836\nmodal-header-border: #3c3836\nmuted-foreground: #d5c4a1\nnotification-background: <<colour primary>>\nnotification-border: <<colour primary>>\npage-background: #282828\npre-background: #504945\npre-border: #504945\nprimary: #d79921\nselect-tag-background: #665c54\nselect-tag-foreground: <<colour foreground>>\nselection-background: #458588\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #7c6f64\nsidebar-controls-foreground: #504945\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #fbf1c7\nsidebar-muted-foreground-hover: #7c6f64\nsidebar-muted-foreground: #504945\nsidebar-tab-background-selected: #bdae93\nsidebar-tab-background: #3c3836\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #bdae93\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #282828\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #458588\nsidebar-tiddler-link-foreground: #98971a\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ebdbb2\ntab-background: #665c54\ntab-border-selected: #665c54\ntab-border: #665c54\ntab-divider: #bdae93\ntab-foreground-selected: #282828\ntab-foreground: #ebdbb2\ntable-border: #7c6f64\ntable-footer-background: #665c54\ntable-header-background: #504945\ntag-background: #d3869b\ntag-foreground: #282828\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #7c6f64\ntiddler-controls-foreground-selected: <<colour primary>>\ntiddler-controls-foreground: #665c54\ntiddler-editor-background: #32302f\ntiddler-editor-border-image: #282828\ntiddler-editor-border: #282828\ntiddler-editor-fields-even: #504945\ntiddler-editor-fields-odd: #7c6f64\ntiddler-info-background: #32302f\ntiddler-info-border: #ebdbb2\ntiddler-info-tab-background: #ebdbb2\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #7c6f64\ntiddler-title-foreground: #a89984\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: #504945\nvery-muted-foreground: #bdae93\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #acacac\nwikilist-button-foreground: <<colour button-foreground>>\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: <<colour muted-foreground>>\nwikilist-button-open-hover: <<colour primary>>\nwikilist-button-open: <<colour dropzone-background>>\nwikilist-button-remove: <<colour dirty-indicator>>\nwikilist-button-remove-hover: <<colour alert-background>>\nwikilist-droplink-dragover: <<colour dropzone-background>>\nwikilist-button-reveal: <<colour sidebar-tiddler-link-foreground-hover>>\nwikilist-button-reveal-hover: <<colour message-background>>\n"
},
"$:/palettes/Nord": {
"title": "$:/palettes/Nord",
"name": "Nord",
"description": "An arctic, north-bluish color palette.",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"license": "MIT, arcticicestudio, https://github.com/arcticicestudio/nord/blob/develop/LICENSE.md",
"text": "alert-background: #D08770\nalert-border: #D08770\nalert-highlight: #B48EAD\nalert-muted-foreground: #4C566A\nbackground: #3b4252\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #2E3440\ncode-border: #2E3440\ncode-foreground: #BF616A\ndiff-delete-background: #BF616A\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #A3BE8C\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #BF616A\ndownload-background: #A3BE8C\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ECEFF4\ndropdown-tab-background: #4C566A\ndropzone-background: #A3BE8C\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #5E81AC\nexternal-link-foreground: #8FBCBB\nforeground: #d8dee9\nmenubar-background: #2E3440\nmenubar-foreground: #d8dee9\nmessage-background: #2E3440\nmessage-border: #2E3440\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #3b4252\nmodal-footer-background: #3b4252\nmodal-footer-border: #3b4252\nmodal-header-border: #3b4252\nmuted-foreground: #4C566A\nnotification-background: <<colour primary>>\nnotification-border: #EBCB8B\npage-background: #2e3440\npre-background: #2E3440\npre-border: #2E3440\nprimary: #5E81AC\nselect-tag-background: #3b4252\nselect-tag-foreground: <<colour foreground>>\nselection-background: #5E81AC\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #D8DEE9\nsidebar-controls-foreground: #4C566A\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #D8DEE9\nsidebar-muted-foreground-hover: #4C566A\nsidebar-muted-foreground: #4C566A\nsidebar-tab-background-selected: #ECEFF4\nsidebar-tab-background: #4C566A\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #4C566A\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #4C566A\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #A3BE8C\nsidebar-tiddler-link-foreground: #81A1C1\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ECEFF4\ntab-background: #4C566A\ntab-border-selected: #4C566A\ntab-border: #4C566A\ntab-divider: #4C566A\ntab-foreground-selected: #4C566A\ntab-foreground: #D8DEE9\ntable-border: #4C566A\ntable-footer-background: #2e3440\ntable-header-background: #2e3440\ntag-background: #A3BE8C\ntag-foreground: #4C566A\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: \ntiddler-controls-foreground-selected: #EBCB8B\ntiddler-controls-foreground: #4C566A\ntiddler-editor-background: #2e3440\ntiddler-editor-border-image: #2e3440\ntiddler-editor-border: #3b4252\ntiddler-editor-fields-even: #2e3440\ntiddler-editor-fields-odd: #2e3440\ntiddler-info-background: #2e3440\ntiddler-info-border: #2e3440\ntiddler-info-tab-background: #2e3440\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #4C566A\ntiddler-title-foreground: #81A1C1\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: #2d3038\nvery-muted-foreground: #2d3038\nwikilist-background: <<colour page-background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-item: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-info: <<colour muted-foreground>>\nwikilist-button-open: #A3BE8C\nwikilist-button-open-hover: #A3BE8C\nwikilist-button-reveal: #81A1C1\nwikilist-button-reveal-hover: #81A1C1\nwikilist-button-remove: #B48EAD\nwikilist-button-remove-hover: #B48EAD\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\nselect-tag-background:\nselect-tag-foreground:\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\nselect-tag-background:\nselect-tag-foreground:\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/SolarizedDark": {
"title": "$:/palettes/SolarizedDark",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Precision dark colors for machines and people",
"license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
"name": "SolarizedDark",
"text": "alert-background: #073642\nalert-border: #93a1a1\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #073642\nblockquote-bar: #d33682\nbutton-background: #073642\nbutton-border: #586e75\nbutton-foreground: #93a1a1\ncode-background: #073642\ncode-border: #586e75\ncode-foreground: #93a1a1\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #073642\ndragger-background: #073642\ndragger-foreground: #839496\ndropdown-background: #073642\ndropdown-border: #93a1a1\ndropdown-tab-background: #002b36\ndropdown-tab-background-selected: #073642\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover:\nexternal-link-foreground-visited: #268bd2\nforeground: #839496\nmessage-background: #002b36\nmessage-border: #586e75\nmessage-foreground: #839496\nmodal-backdrop: #657b83\nmodal-background: #002b36\nmodal-border: #586e75\nmodal-footer-background: #073642\nmodal-footer-border: #586e75\nmodal-header-border: #586e75\nmuted-foreground: #93a1a1\nnotification-background: #002b36\nnotification-border: #586e75\npage-background: #073642\npre-background: inherit\npre-border: #657b83\nprimary: #859900\nselect-tag-background: #002b36\nselect-tag-foreground: #839496\nsidebar-button-foreground: #93a1a1\nsidebar-controls-foreground: #93a1a1\nsidebar-controls-foreground-hover: #eee8d5\nsidebar-foreground: #93a1a1\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #839496\nsidebar-muted-foreground-hover: #93a1a1\nsidebar-tab-background: #002b36\nsidebar-tab-background-selected: #073642\nsidebar-tab-border: #073642\nsidebar-tab-border-selected: #839496\nsidebar-tab-divider: #002b36\nsidebar-tab-foreground: #657b83\nsidebar-tab-foreground-selected: #93a1a1\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #eee8d5\nsite-title-foreground: #d33682\nstatic-alert-foreground: #93a1a1\ntab-background: #073642\ntab-background-selected: #002b36\ntab-border: #586e75\ntab-border-selected: #93a1a1\ntab-divider: #93a1a1\ntab-foreground: #839496\ntab-foreground-selected: #93a1a1\ntable-border: #586e75\ntable-footer-background: #073642\ntable-header-background: #073642\ntag-background: #b58900\ntag-foreground: #002b36\ntiddler-background: #002b36\ntiddler-border: #586e75\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #002b36\ntiddler-editor-border: #073642\ntiddler-editor-border-image: #002b36\ntiddler-editor-fields-even: #002b36\ntiddler-editor-fields-odd: #073642\ntiddler-info-background: #073642\ntiddler-info-border: #657b83\ntiddler-info-tab-background: #002b36\ntiddler-link-background: #002b36\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #839496\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #839496\ntoolbar-close-button: #839496\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #839496\ntoolbar-edit-button: #839496\ntoolbar-info-button: #839496\ntoolbar-new-button: #839496\ntoolbar-options-button: #839496\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #586e75\n"
},
"$:/palettes/SolarizedLight": {
"title": "$:/palettes/SolarizedLight",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Precision colors for machines and people",
"license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
"name": "SolarizedLight",
"text": "alert-background: #eee8d5\nalert-border: #586e75\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #eee8d5\nblockquote-bar: #d33682\nbutton-background: #eee8d5\nbutton-border: #93a1a1\nbutton-foreground: #586e75\ncode-background: #eee8d5\ncode-border: #93a1a1\ncode-foreground: #586e75\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #eee8d5\ndragger-background: #eee8d5\ndragger-foreground: #657b83\ndropdown-background: #eee8d5\ndropdown-border: #586e75\ndropdown-tab-background: #fdf6e3\ndropdown-tab-background-selected: #eee8d5\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #268bd2\nforeground: #657b83\nmessage-background: #fdf6e3\nmessage-border: #93a1a1\nmessage-foreground: #657b83\nmodal-backdrop: #839496\nmodal-background: #fdf6e3\nmodal-border: #93a1a1\nmodal-footer-background: #eee8d5\nmodal-footer-border: #93a1a1\nmodal-header-border: #93a1a1\nmuted-foreground: #586e75\nnotification-background: #fdf6e3\nnotification-border: #93a1a1\npage-background: #eee8d5\npre-background: #eee8d5\npre-border: #839496\nprimary: #859900\nselect-tag-background: #fdf6e3\nselect-tag-foreground: #657b83\nsidebar-button-foreground: #586e75\nsidebar-controls-foreground: #586e75\nsidebar-controls-foreground-hover: #d33682\nsidebar-foreground: #586e75\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #657b83\nsidebar-muted-foreground-hover: #586e75\nsidebar-tab-background: #fdf6e3\nsidebar-tab-background-selected: #eee8d5\nsidebar-tab-border: #eee8d5\nsidebar-tab-border-selected: #657b83\nsidebar-tab-divider: #fdf6e3\nsidebar-tab-foreground: #839496\nsidebar-tab-foreground-selected: #586e75\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #002b36\nsite-title-foreground: #d33682\nstatic-alert-foreground: #586e75\ntab-background: #eee8d5\ntab-background-selected: #fdf6e3\ntab-border: #93a1a1\ntab-border-selected: #586e75\ntab-divider: #586e75\ntab-foreground: #657b83\ntab-foreground-selected: #586e75\ntable-border: #93a1a1\ntable-footer-background: #eee8d5\ntable-header-background: #eee8d5\ntag-background: #b58900\ntag-foreground: #fdf6e3\ntiddler-background: #fdf6e3\ntiddler-border: #93a1a1\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #fdf6e3\ntiddler-editor-border: #eee8d5\ntiddler-editor-border-image: #fdf6e3\ntiddler-editor-fields-even: #fdf6e3\ntiddler-editor-fields-odd: #eee8d5\ntiddler-info-background: #eee8d5\ntiddler-info-border: #839496\ntiddler-info-tab-background: #fdf6e3\ntiddler-link-background: #fdf6e3\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #657b83\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #657b83\ntoolbar-close-button: #657b83\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #657b83\ntoolbar-edit-button: #657b83\ntoolbar-info-button: #657b83\ntoolbar-new-button: #657b83\ntoolbar-options-button: #657b83\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #93a1a1\n"
},
"$:/palettes/SpartanDay": {
"title": "$:/palettes/SpartanDay",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Cold, spartan day colors",
"name": "Spartan Day",
"text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #FAFAFA\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: #ececec\ncode-border: #ececec\ncode-foreground: \ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #FFFFFF\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #F5F5F5\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: \nexternal-link-foreground: \nforeground: rgba(0, 0, 0, 0.87)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(0, 0, 0, 0.54)\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour very-muted-foreground>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(0, 0, 0, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #f4f4f4\npre-background: #ececec\npre-border: #ececec\nprimary: #3949ab\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #aeaeae\nsidebar-controls-foreground: #c6c6c6\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground-hover: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground: rgba(0, 0, 0, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(0, 0, 0, 0.87)\nsidebar-tab-foreground: rgba(0, 0, 0, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(0, 0, 0, 0.87)\nsidebar-tiddler-link-foreground: rgba(0, 0, 0, 0.54)\nsite-title-foreground: rgba(0, 0, 0, 0.87)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(0, 0, 0, 0.87)\ntab-foreground: rgba(0, 0, 0, 0.54)\ntable-border: #d8d8d8\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: #f9f9f9\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: #e8e7e7\ntiddler-editor-fields-even: rgba(0, 0, 0, 0.1)\ntiddler-editor-fields-odd: rgba(0, 0, 0, 0.04)\ntiddler-info-background: #F5F5F5\ntiddler-info-border: #F5F5F5\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #000000\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 very-muted-foreground>>\nvery-muted-foreground: rgba(0, 0, 0, 0.12)\n"
},
"$:/palettes/SpartanNight": {
"title": "$:/palettes/SpartanNight",
"tags": "$:/tags/Palette",
"type": "application/x-tiddler-dictionary",
"description": "Dark spartan colors",
"name": "Spartan Night",
"text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #303030\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #424242\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #050505\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #7c318c\nexternal-link-foreground: #9e3eb3\nforeground: rgba(255, 255, 255, 0.7)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(255, 255, 255, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #212121\npre-background: #2a2a2a\npre-border: transparent\nprimary: #5656f3\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #494949\nsidebar-controls-foreground: #5d5d5d\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: rgba(255, 255, 255, 0.7)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #3a3a3a\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: rgb(55,55,55)\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #454545\ntiddler-info-border: #454545\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\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 very-muted-foreground>>\nvery-muted-foreground: rgba(255, 255, 255, 0.12)\n"
},
"$:/palettes/Twilight": {
"title": "$:/palettes/Twilight",
"tags": "$:/tags/Palette",
"author": "Thomas Elmiger",
"type": "application/x-tiddler-dictionary",
"name": "Twilight",
"description": "Delightful, soft darkness.",
"text": "alert-background: rgb(255, 255, 102)\nalert-border: rgb(232, 232, 125)\nalert-highlight: rgb(255, 51, 51)\nalert-muted-foreground: rgb(224, 82, 82)\nbackground: rgb(38, 38, 38)\nblockquote-bar: rgba(240, 196, 117, 0.7)\nbutton-background: rgb(63, 63, 63)\nbutton-border: rgb(127, 127, 127)\nbutton-foreground: rgb(179, 179, 179)\ncode-background: rgba(0,0,0,0.03)\ncode-border: rgba(0,0,0,0.08)\ncode-foreground: rgb(255, 94, 94)\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: rgb(255, 94, 94)\ndownload-background: #19a974\ndownload-foreground: rgb(38, 38, 38)\ndragger-background: rgb(179, 179, 179)\ndragger-foreground: rgb(38, 38, 38)\ndropdown-background: rgb(38, 38, 38)\ndropdown-border: rgb(255, 255, 255)\ndropdown-tab-background: rgba(0,0,0,.1)\ndropdown-tab-background-selected: rgba(255,255,255,1)\ndropzone-background: #9eebcf\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: rgb(179, 179, 255)\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: rgb(153, 153, 255)\nforeground: rgb(179, 179, 179)\nmessage-background: <<colour tag-foreground>>\nmessage-border: #96ccff\nmessage-foreground: <<colour tag-background>>\nmodal-backdrop: rgb(179, 179, 179)\nmodal-background: rgb(38, 38, 38)\nmodal-border: rgba(0,0,0,.5)\nmodal-footer-background: #f4f4f4\nmodal-footer-border: rgba(0,0,0,.1)\nmodal-header-border: rgba(0,0,0,.2)\nmuted-foreground: rgb(255, 255, 255)\nnotification-background: <<colour tag-foreground>>\nnotification-border: <<colour tag-background>>\npage-background: rgb(26, 26, 26)\npre-background: rgb(25, 25, 25)\npre-border: rgba(0,0,0,.2)\nprimary: rgb(255, 201, 102)\nselect-tag-background: \nselect-tag-foreground: \nsidebar-button-foreground: rgb(179, 179, 179)\nsidebar-controls-foreground: rgb(153, 153, 153)\nsidebar-controls-foreground-hover: <<colour tiddler-controls-foreground-hover>>\nsidebar-foreground: rgb(141, 141, 141)\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: rgba(0, 0, 0, 0.5)\nsidebar-muted-foreground-hover: rgb(141, 141, 141)\nsidebar-tab-background: rgba(141, 141, 141, 0.2)\nsidebar-tab-background-selected: rgb(26, 26, 26)\nsidebar-tab-border: rgb(127, 127, 127)\nsidebar-tab-border-selected: rgb(127, 127, 127)\nsidebar-tab-divider: rgb(127, 127, 127)\nsidebar-tab-foreground: rgb(179, 179, 179)\nsidebar-tab-foreground-selected: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground-hover: rgb(115, 115, 115)\nsite-title-foreground: rgb(255, 201, 102)\nstatic-alert-foreground: rgba(0,0,0,.3)\ntab-background: rgba(0,0,0,0.125)\ntab-background-selected: rgb(38, 38, 38)\ntab-border: rgb(255, 201, 102)\ntab-border-selected: rgb(255, 201, 102)\ntab-divider: rgb(255, 201, 102)\ntab-foreground: rgb(179, 179, 179)\ntab-foreground-selected: rgb(179, 179, 179)\ntable-border: rgba(255,255,255,.3)\ntable-footer-background: rgba(0,0,0,.4)\ntable-header-background: rgba(0,0,0,.1)\ntag-background: rgb(255, 201, 102)\ntag-foreground: rgb(25, 25, 25)\ntiddler-background: rgb(38, 38, 38)\ntiddler-border: rgba(240, 196, 117, 0.7)\ntiddler-controls-foreground: rgb(128, 128, 128)\ntiddler-controls-foreground-hover: rgba(255, 255, 255, 0.8)\ntiddler-controls-foreground-selected: rgba(255, 255, 255, 0.9)\ntiddler-editor-background: rgb(33, 33, 33)\ntiddler-editor-border: rgb(63, 63, 63)\ntiddler-editor-border-image: rgb(25, 25, 25)\ntiddler-editor-fields-even: rgb(33, 33, 33)\ntiddler-editor-fields-odd: rgb(28, 28, 28)\ntiddler-info-background: rgb(43, 43, 43)\ntiddler-info-border: rgb(25, 25, 25)\ntiddler-info-tab-background: rgb(43, 43, 43)\ntiddler-link-background: rgb(38, 38, 38)\ntiddler-link-foreground: rgb(204, 204, 255)\ntiddler-subtitle-foreground: rgb(255, 255, 255)\ntiddler-title-foreground: rgb(255, 192, 76)\ntoolbar-cancel-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-done-button: \ntoolbar-edit-button: \ntoolbar-info-button: \ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \nuntagged-background: rgb(255, 255, 255)\nvery-muted-foreground: rgba(240, 196, 117, 0.7)\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\nselection-background:\nselection-foreground:\nselect-tag-background:\nselect-tag-foreground:\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\nwikilist-background: #e5e5e5\nwikilist-item: #fff\nwikilist-info: #000\nwikilist-title: #666\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #aaa\nwikilist-button-open: #4fb82b\nwikilist-button-open-hover: green\nwikilist-button-reveal: #5778d8\nwikilist-button-reveal-hover: blue\nwikilist-button-remove: #d85778\nwikilist-button-remove-hover: red\nwikilist-toolbar-background: #d3d3d3\nwikilist-toolbar-foreground: #888\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #acacac\nwikilist-button-foreground: #000\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 --> "
},
"$:/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": "<$macrocall $name=\"csvtiddlers\" filter=<<exportFilter>> format=\"quoted-comma-sep\" $output=\"text/raw\"/>\n"
},
"$:/core/templates/exporters/JsonFile": {
"title": "$:/core/templates/exporters/JsonFile",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/JsonFile}}",
"extension": ".json",
"text": "<$macrocall $name=\"jsontiddlers\" filter=<<exportFilter>> $output=\"text/raw\"/>\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 tc-static-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\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>\n"
},
"$:/core/templates/exporters/TidFile": {
"title": "$:/core/templates/exporters/TidFile",
"tags": "$:/tags/Exporter",
"description": "{{$:/language/Exporters/TidFile}}",
"extension": ".tid",
"condition": "[<count>compare:lte[1]]",
"text": "\\define renderContent()\n{{{ $(exportFilter)$ +[limit[1]] ||$:/core/templates/tid-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>"
},
"$:/core/save/all-external-js": {
"title": "$:/core/save/all-external-js",
"text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5-external-js.html}}\n"
},
"$:/core/templates/tiddlywiki5.js": {
"title": "$:/core/templates/tiddlywiki5.js",
"text": "\\rules only filteredtranscludeinline transcludeinline codeinline\n\n/*\n{{ $:/core/copyright.txt ||$:/core/templates/plain-text-tiddler}}\n`*/\n`<!--~~ Library modules ~~-->\n{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/plain-text-tiddler}}}\n<!--~~ Boot prefix ~~-->\n{{ $:/boot/bootprefix.js ||$:/core/templates/plain-text-tiddler}}\n<!--~~ Core plugin ~~-->\n{{$:/core/templates/tiddlywiki5.js/tiddlers}}\n<!--~~ Boot kernel ~~-->\n{{ $:/boot/boot.js ||$:/core/templates/plain-text-tiddler}}\n"
},
"$:/core/templates/tiddlywiki5.js/tiddlers": {
"title": "$:/core/templates/tiddlywiki5.js/tiddlers",
"text": "`\n$tw.preloadTiddlerArray(`<$text text=<<jsontiddlers \"[[$:/core]]\">>/>`);\n`\n"
},
"$:/core/templates/tiddlywiki5-external-js.html": {
"title": "$:/core/templates/tiddlywiki5-external-js.html",
"text": "\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n{{$:/core/templates/MOTW.html}}<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\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<!--~~ Raw markup for the top of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}\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<!--~~ Raw markup for the bottom of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}\n</body>\n<script src=\"%24%3A%2Fcore%2Ftemplates%2Ftiddlywiki5.js\" onerror=\"alert('Error: Cannot load tiddlywiki.js');\"></script>\n</html>\n"
},
"$:/core/templates/html-div-skinny-tiddler": {
"title": "$:/core/templates/html-div-skinny-tiddler",
"text": "<!--\n\nThis template is a variant of $:/core/templates/html-div-tiddler used for saving skinny tiddlers (with no text field)\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre></pre>\n</div>`\n"
},
"$:/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": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/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\\define skinnySaveTiddlerFilter()\n[!is[system]]\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\\define skinnySaveTiddlerFilter()\n[!is[system]is[image]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
},
"$:/core/templates/server/static.sidebar.wikitext": {
"title": "$:/core/templates/server/static.sidebar.wikitext",
"text": "\\whitespace trim\n<div class=\"tc-sidebar-scrollable\" style=\"overflow: auto;\">\n<div class=\"tc-sidebar-header\">\n<h1 class=\"tc-site-title\">\n<$transclude tiddler=\"$:/SiteTitle\"/>\n</h1>\n<div class=\"tc-site-subtitle\">\n<$transclude tiddler=\"$:/SiteSubtitle\"/>\n</div>\n<h2>\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$list filter={{$:/DefaultTiddlers}}>\n<div class=\"tc-menu-list-subitem\">\n<$link><$text text=<<currentTiddler>>/></$link>\n</div>\n</$list>\n</div>\n<!-- Currently disabled the recent list as it is unweildy when the responsive narrow view kicks in\n<h2>\n{{$:/language/SideBar/Recent/Caption}}\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n</div>\n</div>\n</div>\n-->\n"
},
"$:/core/templates/server/static.tiddler.html": {
"title": "$:/core/templates/server/static.tiddler.html",
"text": "\\whitespace trim\n\\define tv-wikilink-template() $uri_encoded$\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\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=\"%24%3A%2Fcore%2Ftemplates%2Fstatic.template.css\">\n<title><$view field=\"caption\" format=\"plainwikified\"><$view field=\"title\"/></$view>: <$view tiddler=\"$:/core/wiki/title\" format=\"plainwikified\"/></title>\n</head>\n<body class=\"tc-body\">\n<$transclude tiddler=\"$:/core/templates/server/static.sidebar.wikitext\" mode=\"inline\"/>\n<section class=\"tc-story-river\">\n<div class=\"tc-tiddler-frame\">\n<$transclude tiddler=\"$:/core/templates/server/static.tiddler.wikitext\" mode=\"inline\"/>\n</div>\n</section>\n</body>\n</html>"
},
"$:/core/templates/server/static.tiddler.wikitext": {
"title": "$:/core/templates/server/static.tiddler.wikitext",
"text": "\\whitespace trim\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<h2><$text text=<<currentTiddler>>/></h2>\n</div>\n</div>\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<div class=\"tc-tags-wrapper\">\n<$list filter=\"[all[current]tags[]sort[title]]\">\n<a href={{{ [<currentTiddler>encodeuricomponent[]] }}}>\n<$macrocall $name=\"tag-pill\" tag=<<currentTiddler>>/>\n</a>\n</$list>\n</div>\n<div class=\"tc-tiddler-body\">\n<$transclude mode=\"block\"/>\n</div>\n"
},
"$:/core/templates/single.tiddler.window": {
"title": "$:/core/templates/single.tiddler.window",
"text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n\n<$transclude mode=\"block\"/>\n\n</$navigator>\n\n</div>\n\n</$vars>\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<!-- ensure splash screen isn't shown when JS is disabled -->\n`<style>\n.tc-remove-when-wiki-loaded {display: none;}\n</style>`\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\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\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 tc-static-story-river\">\n`<$view tiddler=\"$:/core/ui/ViewTemplate\" format=\"htmlwikified\"/>`\n</section>\n</body>\n</html>\n`\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<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} template=\"$:/core/templates/html-div-skinny-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": "<$set name=\"saveTiddlerAndShadowsFilter\" filter=\"[subfilter<saveTiddlerFilter>] [subfilter<saveTiddlerFilter>plugintiddlers[]]\">\n`<!doctype html>\n`{{$:/core/templates/MOTW.html}}`<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n`{{{ [<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}`\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\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`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/core/wiki/rawmarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}`\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}`\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<!--~~ Raw markup for the bottom of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}`\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/Actions/new-image": {
"title": "$:/core/ui/Actions/new-image",
"tags": "$:/tags/Actions",
"description": "create a new image tiddler",
"text": "\\define get-type()\nimage/$(imageType)$\n\\end\n\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars imageType={{$:/config/NewImageType}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=<<get-type>> tags=<<get-tags>>/>\n</$vars>\n"
},
"$:/core/ui/Actions/new-journal": {
"title": "$:/core/ui/Actions/new-journal",
"tags": "$:/tags/Actions",
"description": "create a new journal tiddler",
"text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars journalTitleTemplate={{$:/config/NewJournal/Title}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}} journalText={{$:/config/NewJournal/Text}}>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$reveal type=\"nomatch\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text={{{ [<journalTitle>get[]] }}}/>\n</$reveal>\n<$reveal type=\"match\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text=<<journalText>>/>\n</$reveal>\n</$wikify>\n</$vars>\n"
},
"$:/core/ui/Actions/new-tiddler": {
"title": "$:/core/ui/Actions/new-tiddler",
"tags": "$:/tags/Actions",
"description": "create a new empty tiddler",
"text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars textFieldTags={{$:/config/NewTiddler/Tags}} tagsFieldTags={{$:/config/NewTiddler/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<get-tags>>/>\n</$vars>\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\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch/input}!match{$:/temp/advancedsearch}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Filter/Hint>>\n\n<div class=\"tc-search tc-advanced-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\" \n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/temp/advancedsearch]]\" firstSearchFilterField=\"text\" \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tinputCancelActions=<<cancel-search-actions>>/>\n</$keyboard>\n</$keyboard>\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}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\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<<cancel-search-actions>>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\" />\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<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=\"$:/temp/advancedsearch\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param='.tc-advanced-search input' />\"\"\">\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</$set>\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}}",
"first-search-filter": "[all[shadows]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]",
"text": "\\define lingo-base() $:/language/Search/\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Shadows/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/Shadows]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>> filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\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]] -[[$:/temp/advancedsearch/input]]\"/>\"\"\">\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]] -[[$:/temp/advancedsearch/input]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\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\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define next-search-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/advancedsearch\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Standard/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"shift-alt-Right\" actions=<<next-search-tab>>>\n<$keyboard key=\"shift-alt-Left\" actions=<<next-search-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"\n\t\tfilterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\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<$vars userInput={{{ [[$:/temp/advancedsearch]get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} searchListState=\"$:/temp/advancedsearch/selected-item\">\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}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/advancedsearch\" />\n</$list>\n</$vars>\n</$list>\n</$reveal>\n"
},
"$:/core/ui/AdvancedSearch/System": {
"title": "$:/core/ui/AdvancedSearch/System",
"tags": "$:/tags/AdvancedSearch",
"caption": "{{$:/language/Search/System/Caption}}",
"first-search-filter": "[is[system]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]",
"text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\",stateTitle,tag,defaultState,currentTabTiddler) <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo System/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\"\n\t\ttype=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/System]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>> filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\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]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\"/>\"\"\">\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]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]\" default=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab--1498284803\"/>\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/cancel-button}}</$button>\n</div>\n<div class=\"tc-alert-subtitle\">\n<$wikify name=\"format\" text=<<lingo Tiddler/DateFormat>>>\n<$view field=\"component\"/> - <$view field=\"modified\" format=\"date\" template=<<format>>/> <$reveal type=\"nomatch\" state=\"!!count\" text=\"\"><span class=\"tc-alert-highlight\">({{$:/language/Count}}: <$view field=\"count\"/>)</span></$reveal>\n</$wikify>\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<<lingo Prompt>>\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-plugin-info-toggle\">\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/chevron-right}}\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/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\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 tc-plugin-info-description\">\n<h1>\n''<$text text={{{ [<currentTiddler>get[name]] ~[<currentTiddler>split[/]last[1]] }}}/>'': <$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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Advanced]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/TiddlerFields\" explicitState=\"$:/state/tab--959111941\"/>\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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Appearance]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Theme\" explicitState=\"$:/state/tab--1963855381\"/>\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=\"$:/temp/advancedsearch/input\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/>\n<$action-setfield $tiddler=\"$:/state/tab--1498284803\" $value=\"$:/core/ui/AdvancedSearch/Filter\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-advanced-search input\"/>\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/NewTiddler/Tags\"><<lingo NewTiddler/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewTiddler/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/NewJournal/Tags\"><<lingo NewJournal/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewJournal/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/AutoFocus\"><<lingo AutoFocus/Prompt>></$link> |{{$:/snippets/minifocusswitcher}} |\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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Info]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Basics\" explicitState=\"$:/state/tab--2112689675\"/>\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}} focus=\"true\" 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={{$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint}}>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"+[remove<shortcut>]\"\n/>\n<small>{{$:/core/images/close-button}}</small>\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=\"[[$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>match[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-actions()\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url={{!!url}} title={{$(assetInfo)$!!original-title}}/>\n<$set name=\"url\" value={{!!url}}>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url=<<url>> title=<<dependency>>/>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define install-plugin-button()\n<div>\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n<$button actions=<<install-plugin-actions>> class={{{ [<assetInfo>get[original-title]has[version]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}}>\n{{$:/core/images/download-button}}\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Install/Caption}}\">\n<$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}\">\n{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}\n</$list>\n\"\"\">\n{{$:/language/ControlPanel/Plugins/Update/Caption}}\n</$list>\n</$list>\n</$button>\n<div>\n</div>\n<$reveal stateTitle=<<assetInfo>> stateField=\"requires-reload\" type=\"match\" text=\"yes\">{{$:/language/ControlPanel/Plugins/PluginWillRequireReload}}</$reveal>\n</$set>\n</$set>\n</$set>\n</div>\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-plugin-info-toggle\">\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/chevron-right}}\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/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\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 tc-plugin-info-description\">\n<h1><strong><$text text={{{ [<assetInfo>get[name]] ~[<assetInfo>get[original-title]split[/]last[1]] }}}/></strong>: <$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<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\"><div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div></$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n<<install-plugin-button>>\n</div>\n</div>\n<$set name=\"original-title\" value={{{ [<assetInfo>get[original-title]] }}}>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>>>\n<div class=\"tc-plugin-info-dropdown\">\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]] ~[<assetInfo>get[original-title]!is[tiddler]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-dropdown-message\">\n<$list filter=\"[<assetInfo>get[original-title]!is[tiddler]]\">\n{{$:/language/ControlPanel/Plugins/NotInstalled/Hint}}\n</$list>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]]\" variable=\"ignore\">\n<div>\n{{$:/language/ControlPanel/Plugins/AlsoRequires}}\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$text text=<<dependency>>/>\n</$list>\n</div>\n</$list>\n</$set>\n</div>\n</$list>\n<div class=\"tc-plugin-info-dropdown-body\">\n<$transclude tiddler=<<assetInfo>> field=\"readme\" mode=\"block\"/>\n</div>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-sub-plugins\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>sort[name]]\" variable=\"assetInfo\">\n<<display-plugin-info \"$type$\">>\n</$list>\n</div>\n</$list>\n</div>\n</$reveal>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<$reveal type=\"nomatch\" text=\"yes\" state=<<popup-state>> tag=\"div\" class=\"tc-plugin-info-sub-plugin-indicator\">\n<$wikify name=\"count\" text=\"\"\"<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>]\"/>\"\"\">\n<$button class=\"tc-btn-invisible\" set=<<popup-state>> setTo=\"yes\">\n{{$:/language/ControlPanel/Plugins/SubPluginPrompt}}\n</$button>\n</$wikify>\n</$reveal>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define load-plugin-library-button()\n<$list filter=\"[<currentTiddler>get[enabled]else[yes]match[yes]]\" variable=\"ignore\">\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</$list>\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:author,description,original-title,readme,title{$:/temp/RemoteAssetSearch/$(currentTiddler)$}sort[name]]\" variable=\"assetInfo\">\n<$list filter=\"[[$:/temp/RemoteAssetSearch/$(currentTiddler)$]has[text]] ~[<assetInfo>!has[parent-plugin]]\" variable=\"ignore\"><!-- Hide sub-plugins if we're not searching -->\n<<display-plugin-info \"$type$\">>\n</$list>\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<$set name=\"transclusion\" value=<<connectionTiddler>>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Add/Updates]] [[$:/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</$set>\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<div class=\"tc-tab-set\">\n<$set name=\"defaultTab\" value={{{ [all[tiddlers+shadows]tag[$:/tags/PluginLibrary]] }}}>\n<div class=\"tc-tab-buttons\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$button set=<<qualify \"$:/state/addplugins/tab\">> setTo=<<currentTiddler>> default=<<defaultTab>> selectedClass=\"tc-tab-selected\">\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude field=\"caption\"/>\n</$set>\n</$button>\n</$list>\n</div>\n<div class=\"tc-tab-divider\"/>\n<div class=\"tc-tab-content\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$reveal type=\"match\" state=<<qualify \"$:/state/addplugins/tab\">> text=<<currentTiddler>> default=<<defaultTab>>>\n<h2><$link><$transclude field=\"caption\"><$view field=\"title\"/></$transclude></$link></h2>\n//<$view field=\"url\"/>//\n<$transclude mode=\"block\"/>\n<$set name=PluginLibraryURL value={{!!url}}>\n<<close-library-button>>\n</$set>\n<<display-server-connection>>\n</$reveal>\n</$list>\n</div>\n</$set>\n</div>\n\\end\n\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<div>\n<<plugin-library-listing>>\n</div>\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{{$:/PaletteManager}}\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/Add/Updates": {
"title": "$:/core/ui/ControlPanel/Plugins/Add/Updates",
"caption": "<$importvariables filter=\"$:/core/ui/ControlPanel/Plugins/Add/Updates\">{{$:/language/ControlPanel/Plugins/Updates/Caption}} (<<update-count>>)</$importvariables>",
"text": "\\define each-updateable-plugin(body)\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}sort[title]]\" variable=\"assetInfo\">\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$list filter=\"[<assetInfo>get[original-title]has[version]!version<libraryVersion>]\" variable=\"ignore\">\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$list filter=\"[<installedversion>!match<libraryVersion>]\" variable=\"ignore\">\n$body$\n</$list>\n</$set>\n</$list>\n</$set>\n</$list>\n\\end\n\n\\define update-all-actions()\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<<install-plugin-actions>>\n\"\"\"/>\n\\end\n\n\\define update-count()\n<$wikify name=\"count-filter\" text=<<each-updateable-plugin \"[[<$text text=<<assetInfo>>/>]]\">>><$count filter=<<count-filter>>/></$wikify>\n\\end\n\n<$button actions=<<update-all-actions>> class=\"tc-btn-invisible tc-install-plugin tc-reinstall-upgrade\">\n{{$:/core/images/download-button}} {{||$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption}}\n</$button>\n\n<div class=\"tc-plugin-library-listing\">\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<$macrocall $name=\"display-plugin-info\" type={{{ [<assetInfo>get[original-plugin-type]] }}}/>\n\"\"\"/>\n</div>\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 tc-primary-btn\">\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[name]]\" 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<$macrocall $name=\"tabs\" tabsList=\"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] [[$:/core/ui/ControlPanel/Plugins/Installed/Languages]]\" default=\"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\" explicitState=\"$:/state/tab--86143343\"/>\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/GitHub": {
"title": "$:/core/ui/ControlPanel/Saving/GitHub",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/GitHub/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitHub\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitHub/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitHub/Password>> |<$password name=\"github\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitHub/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitHub/Branch\" default=\"main\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitHub/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitHub/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitHub/ServerURL\" default=\"https://api.github.com\" tag=\"input\"/> |"
},
"$:/core/ui/ControlPanel/Saving/GitLab": {
"title": "$:/core/ui/ControlPanel/Saving/GitLab",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/GitLab/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitLab\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitLab/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitLab/Password>> |<$password name=\"gitlab\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitLab/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitLab/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitLab/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitLab/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitLab/ServerURL\" default=\"https://gitlab.com/api/v4\" tag=\"input\"/> |"
},
"$:/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 siteURL(path)\nhttp://$(userName)$.tiddlyspot.com/$path$/\n\\end\n\\define siteLink(path)\n<$reveal type=\"nomatch\" state=\"$:/UploadName\" text=\"\">\n<$set name=\"userName\" value={{$:/UploadName}}>\n<$reveal type=\"match\" state=\"$:/UploadURL\" text=\"\">\n<<siteURL $path$>>\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<div class=\"tc-message-box\">\n\n<<lingo ReadOnly>>\n\n</div>\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/UploadName\" default=\"\" tag=\"input\"/> |\n|<<lingo Password>> |<$password name=\"upload\"/> |\n|<<lingo Backups>> |<<siteLink backup>> |\n|<<lingo ControlPanel>> |<<siteLink controlpanel>> |\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>>\n"
},
"$:/core/ui/ControlPanel/Saving/Gitea": {
"title": "$:/core/ui/ControlPanel/Saving/Gitea",
"tags": "$:/tags/ControlPanel/Saving",
"caption": "{{$:/language/ControlPanel/Saving/GitService/Gitea/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~Gitea\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/Gitea/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo Gitea/Password>> |<$password name=\"Gitea\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/Gitea/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/Gitea/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/Gitea/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/Gitea/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/Gitea/ServerURL\" default=\"https://gitea/api/v1\" tag=\"input\"/> |\n"
},
"$:/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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Saving]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Saving/General\" explicitState=\"$:/state/tab-2065006209\"/>\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/NavigationPermalinkviewMode": {
"title": "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode",
"tags": "$:/tags/ControlPanel/Settings",
"caption": "{{$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption}}",
"text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationPermalinkviewMode/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/CopyToClipboard\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/CopyToClipboard\"><<lingo CopyToClipboard/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\"><<lingo UpdateAddressBar/Description>></$link> </$checkbox>\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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" class=\"tc-vertical\" explicitState=\"$:/state/tabs/controlpanel/toolbars-1345989671\"/>\n</div>\n"
},
"$:/ControlPanel": {
"title": "$:/ControlPanel",
"icon": "$:/core/images/options-button",
"color": "#bbb",
"text": "<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Info\" explicitState=\"$:/state/tab-1749438307\"/>\n</div>\n"
},
"$:/core/ui/DefaultSearchResultList": {
"title": "$:/core/ui/DefaultSearchResultList",
"tags": "$:/tags/SearchResults",
"caption": "{{$:/language/Search/DefaultResults/Caption}}",
"first-search-filter": "[!is[system]search:title<userInput>sort[title]limit[250]]",
"second-search-filter": "[!is[system]search<userInput>sort[title]limit[250]]",
"text": "\\define searchResultList()\n//<small>{{$:/language/Search/Matches/Title}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[first-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\n\n//<small>{{$:/language/Search/Matches/All}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[second-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-secondaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\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": "\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$set name=\"tv-tiddler-preview\" value=\"yes\">\n\n<$transclude />\n\n</$set>\n"
},
"$:/state/showeditpreview": {
"title": "$:/state/showeditpreview",
"text": "no"
},
"$:/core/ui/EditTemplate/body/editor": {
"title": "$:/core/ui/EditTemplate/body/editor",
"text": "<$edit\n\n field=\"text\"\n class=\"tc-edit-texteditor tc-edit-texteditor-body\"\n placeholder={{$:/language/EditTemplate/Body/Placeholder}}\n tabindex={{$:/config/EditTabIndex}}\n focus={{{ [{$:/config/AutoFocus}match[text]then[true]] ~[[false]] }}}\n cancelPopups=\"yes\"\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 actions={{!!actions}}\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 actions={{!!actions}}\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=\"[all[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\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"></$edit-text>\n\n</div>\n\n</$list>\n\n<$list filter=\"[all[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 current-tiddler-new-field-selector()\n[data-tiddler-title=\"$(currentTiddlerCSSescaped)$\"] .tc-edit-field-add-name-wrapper input\n\\end\n\n\\define new-field-actions()\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/>\n\\end\n\n\\define delete-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\n\\define cancel-search-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newFieldNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-state-tiddlers>>\n</$list>\n\\end\n\n\\define cancel-search-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newFieldNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newFieldNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define new-field()\n<$vars name={{{ [<newFieldNameTiddler>get[text]] }}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button tooltip=<<lingo Fields/Add/Button/Hint>>>\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\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\\whitespace trim\n\n<div class=\"tc-edit-fields\">\n<table class={{{ [all[current]fields[]] :filter[lookup[$:/config/EditTemplateFields/Visibility/]!match[hide]] +[count[]!match[0]] +[then[tc-edit-fields]] ~[[tc-edit-fields tc-edit-fields-small]] }}}>\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\" storyview=\"pop\">\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<$keyboard key=\"((delete-field))\" actions=\"\"\"<$action-deletefield $field=<<currentField>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\"\"\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\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>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\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 tc-big-gap-right\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<$vars refreshTitle=<<qualify \"$:/temp/fieldname/refresh\">> storeTitle=<<newFieldNameInputTiddler>> searchListState=<<newFieldNameSelectionTiddler>>>\n<div class=\"tc-edit-field-add-name-wrapper\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newFieldNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<searchListState>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}}\n\t\tfocus={{{ [{$:/config/AutoFocus}match[fields]then[true]] ~[[false]] }}} cancelPopups=\"yes\"\n\t\tconfigTiddlerFilter=\"[[$:/config/EditMode/fieldname-filter]]\" inputCancelActions=<<cancel-search-actions>> />\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" 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<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<newFieldNameTiddler>>>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$set name=\"newFieldName\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title<newFieldName>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\" variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-primaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title<newFieldName>sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-secondaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n</$set>\n</$linkcatcher>\n</$set>\n</div>\n</$reveal>\n</div>\n<span class=\"tc-edit-field-add-value tc-small-gap-right\">\n<$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}>\n<$keyboard key=\"((add-field))\" actions=<<new-field-actions>>>\n<$edit-text tiddler=<<newFieldValueTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\n</$set>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</$vars>\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": "\\whitespace trim\n\n\\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,icon,tagField:\"tags\")\n\\whitespace trim\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<span style=<<tag-styles>> class=\"tc-tag-label tc-tag-list-item\">\n<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view field=\"title\" format=\"text\" />\n<$button class=\"tc-btn-invisible tc-remove-tag-button\" style=<<tag-styles>>><$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[{!!title}]\"/>{{$:/core/images/close-button}}</$button>\n</span>\n</$vars>\n\\end\n\n\\define tag-body(colour,palette,icon,tagField:\"tags\")\n<$macrocall $name=\"tag-body-inner\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} icon=\"\"\"$icon$\"\"\" tagField=<<__tagField__>>/>\n\\end\n\n\\define edit-tags-template(tagField:\"tags\")\n\\whitespace trim\n<div class=\"tc-edit-tags\">\n<$list filter=\"[list[!!$tagField$]sort[title]]\" storyview=\"pop\">\n<$macrocall $name=\"tag-body\" colour={{!!color}} palette={{$:/palette}} icon={{!!icon}} tagField=<<__tagField__>>/>\n</$list>\n<$vars tabIndex={{$:/config/EditTabIndex}} cancelPopups=\"yes\">\n<$macrocall $name=\"tag-picker\" tagField=<<__tagField__>>/>\n</$vars>\n</div>\n\\end\n<$set name=\"saveTiddler\" value=<<currentTiddler>>>\n<$macrocall $name=\"edit-tags-template\" tagField=<<tagField>>/>\n</$set>\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={{{ [{$:/config/AutoFocus}match[title]then[true]] ~[[false]] }}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[all[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<$list filter=\"[title<fromTitle>backlinks[]limit[1]]\" variable=\"listItem\">\n\n<$vars stateTiddler=<<qualify \"$:/state/edit/references\">> >\n\n<$reveal type=\"nomatch\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/right-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/down-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$tiddler tiddler=<<fromTitle>> >\n<$transclude tiddler=\"$:/core/ui/TiddlerInfo/References\"/>\n</$tiddler>\n</$reveal>\n\n</$vars>\n\n</$list>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n"
},
"$:/core/ui/EditTemplate/type": {
"title": "$:/core/ui/EditTemplate/type",
"tags": "$:/tags/EditTemplate",
"first-search-filter": "[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]sort[description]sort[group-sort]removeprefix[$:/language/Docs/Types/]search<userInput>]",
"text": "\\define lingo-base() $:/language/EditTemplate/\n\\define input-cancel-actions() <$list filter=\"[<storeTitle>get[text]] [<currentTiddler>get[type]] +[limit[1]]\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\"><$action-sendmessage $message=\"tm-remove-field\" $param=\"type\"/><$action-deletetiddler $filter=\"[<typeInputTiddler>] [<refreshTitle>] [<typeSelectionTiddler>]\"/></$list>\n\\whitespace trim\n<$set name=\"refreshTitle\" value=<<qualify \"$:/temp/type-search/refresh\">>>\n<div class=\"tc-edit-type-selector-wrapper\">\n<em class=\"tc-edit tc-big-gap-right\"><<lingo Type/Prompt>></em>\n<div class=\"tc-type-selector-dropdown-wrapper\">\n<div class=\"tc-type-selector\"><$fieldmangler>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<currentTiddler>> storeTitle=<<typeInputTiddler>> refreshTitle=<<refreshTitle>> selectionStateTitle=<<typeSelectionTiddler>> field=\"type\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Type/Placeholder}} focusPopup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-edit-typeeditor tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}} focus={{{ [{$:/config/AutoFocus}match[type]then[true]] ~[[false]] }}} cancelPopups=\"yes\" configTiddlerFilter=\"[[$:/core/ui/EditTemplate/type]]\" inputCancelActions=<<input-cancel-actions>>/><$button popup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" 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}}<$action-deletetiddler $filter=\"[<storeTitle>] [<refreshTitle>] [<selectionStateTitle>]\"/></$button>\n</$fieldmangler></div>\n\n<div class=\"tc-block-dropdown-wrapper\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\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<$set name=\"userInput\" value={{{ [<typeInputTiddler>get[text]] }}}>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]] +[removeprefix[$:/language/Docs/Types/]] +[search<userInput>]\"><span class={{{ [<currentTiddler>addsuffix[-primaryList]] -[<typeSelectionTiddler>get[text]] +[then[]else[tc-list-item-selected]] }}}><$link to={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]get[name]] }}}><$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"description\"/> (<$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"name\"/>)</$link></span>\n</$list>\n</$set>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n</$set>\n</div>\n</div>\n</div>\n</$set>\n"
},
"$:/core/ui/EditTemplate": {
"title": "$:/core/ui/EditTemplate",
"text": "\\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<newFieldNameInputTiddler>] [<newFieldNameSelectionTiddler>] [<newTagNameTiddler>] [<newTagNameInputTiddler>] [<newTagNameSelectionTiddler>] [<typeInputTiddler>] [<typeSelectionTiddler>]\"/>\n\\define save-tiddler-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{{ [<newTagNameTiddler>get[text]] }}}/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n\\end\n\\define cancel-delete-tiddler-actions(message)\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\end\n<div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-edit-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}>\n<$fieldmangler>\n<$vars storyTiddler=<<currentTiddler>> newTagNameTiddler=<<qualify \"$:/temp/NewTagName\">> newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">> newFieldValueTiddler=<<qualify \"$:/temp/NewFieldValue\">> newFieldNameInputTiddler=<<qualify \"$:/temp/NewFieldName/input\">> newFieldNameSelectionTiddler=<<qualify \"$:/temp/NewFieldName/selected-item\">> newTagNameInputTiddler=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddler=<<qualify \"$:/temp/NewTagName/selected-item\">> typeInputTiddler=<<qualify \"$:/temp/Type/input\">> typeSelectionTiddler=<<qualify \"$:/temp/Type/selected-item\">>>\n<$keyboard key=\"((cancel-edit-tiddler))\" actions=<<cancel-delete-tiddler-actions \"cancel\">>>\n<$keyboard key=\"((save-tiddler))\" actions=<<save-tiddler-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</$vars>\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": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"cancel\">> tooltip={{$:/language/Buttons/Cancel/Hint}} aria-label={{$:/language/Buttons/Cancel/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/cancel-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>\n</$list>\n</$button>\n"
},
"$:/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": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"delete\">> tooltip={{$:/language/Buttons/Delete/Hint}} aria-label={{$:/language/Buttons/Delete/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/delete-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>\n</$list>\n</$button>\n"
},
"$:/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": "\\define save-tiddler-button()\n\\whitespace trim\n<$fieldmangler><$button tooltip={{$:/language/Buttons/Save/Hint}} aria-label={{$:/language/Buttons/Save/Caption}} class=<<tv-config-toolbar-class>>>\n<<save-tiddler-actions>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/done-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Save/Caption}}/></span>\n</$list>\n</$button></$fieldmangler>\n\\end\n<<save-tiddler-button>>\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]] -[<targetTiddler>type[image/svg+xml]]",
"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/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[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/vnd.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=\" \"/>\n\n<$entity entity=\"✓\"/>\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]] -[<targetTiddler>type[image/svg+xml]]",
"dropdown": "$:/core/ui/EditorToolbar/line-width-dropdown",
"text": "<$text text={{$:/config/BitmapEditor/LineWidth}}/>\n"
},
"$:/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 $filter=\"[<dropdown-state>] [<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\\end\n\n\\define get-focus-selector() [data-tiddler-title=\"$(cssEscapedTitle)$\"] .tc-create-wikitext-link input\n\n\\define cancel-search-actions-inner()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}><$list filter=\"[<searchTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=<<searchTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/></$list></$set>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<storeTitle>!has[text]] +[<searchTiddler>!has[text]]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\"><$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"wrap-selection\" prefix=\"\" suffix=\"\"/></$list>\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 set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<$vars searchTiddler=\"\"\"$config-title$/search\"\"\" linkTiddler=\"\"\"$config-title$/link\"\"\" linktext=\"\" searchListState=<<qualify \"$:/temp/link-search/selected-item\">> refreshTitle=<<qualify \"$:/temp/link-search/refresh\">> storeTitle=<<qualify \"$:/temp/link-search/input\">>>\n\n<$vars linkTiddler=<<searchTiddler>>>\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">> class=\"tc-create-wikitext-link\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<searchTiddler>> storeTitle=<<storeTitle>>\n\t\tselectionStateTitle=<<searchListState>> refreshTitle=<<refreshTitle>> type=\"search\" filterMinLength=\"1\"\n\t\ttag=\"input\" focus=\"true\" class=\"tc-popup-handle\" inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<add-link-actions>> placeholder={{$:/language/Search/Search}} default=\"\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\" />\n</$keyboard>\n</$keyboard>\n<$reveal tag=\"span\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n<<external-link>>\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\">\n<<cancel-search-actions>><$set name=\"cssEscapedTitle\" value={{{ [<storyTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-focus-selector>>/></$set>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</$vars>\n\n<$reveal tag=\"div\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n\n<$linkcatcher actions=<<add-link-actions>> to=<<linkTiddler>>>\n\n<$vars userInput={{{ [<storeTitle>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n\n{{$:/core/ui/SearchResults}}\n\n</$vars>\n\n</$linkcatcher>\n\n</$reveal>\n\n</$vars>\n\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Link/\">>/>\n"
},
"$:/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=\" \"/>\n\n<$entity entity=\"✓\"/>\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]] -[<targetTiddler>type[image/svg+xml]]",
"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]] -[<targetTiddler>type[image/svg+xml]]",
"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=\" \"/>\n\n<$entity entity=\"✓\"/>\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]] -[<targetTiddler>type[image/svg+xml]]",
"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>>/> × <$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]] -[<targetTiddler>type[image/svg+xml]]",
"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<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext={{$(snippetTitle)$}}\n/>\n\n</$list>\n\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix={{{ [[$(snippetTitle)$]addsuffix[/prefix]get[text]] }}}\nsuffix={{{ [[$(snippetTitle)$]addsuffix[/suffix]get[text]] }}}\n/>\n\n</$list>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<snippetTitle>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<snippetTitle>> field=\"title\" />\n\n</$transclude>\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/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[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/SessionTiddlers": {
"title": "$:/core/Filters/SessionTiddlers",
"tags": "$:/tags/Filter",
"filter": "[haschanged[]]",
"description": "{{$:/language/Filters/SessionTiddlers}}",
"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() message-$(payloadTiddler)$\n\n\\define payloadTitleFilter() [<currentTiddler>get<renameField>minlength[1]else<payloadTiddler>]\n\n\\define overWriteWarning()\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\">\n<$text text={{{[subfilter<payloadTitleFilter>!is[tiddler]then[]] ~[<lingo-base>addsuffix[Listing/Rename/OverwriteWarning]get[text]]}}}/>\n</$list>\n\\end\n\n\\define selectionField() selection-$(payloadTiddler)$\n\n\\define renameField() rename-$(payloadTiddler)$\n\n\\define suppressedField() suppressed-$(payloadTiddler)$\n\n\\define newImportTitleTiddler() $:/temp/NewImportTitle-$(payloadTiddler)$\n\n\\define previewPopupState() $(currentTiddler)$!!popup-$(payloadTiddler)$\n\n\\define renameFieldState() $(currentTiddler)$!!state-rename-$(payloadTiddler)$\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 class=\"tc-import-table\">\n<tbody>\n<tr>\n<th align=\"left\">\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 class={{{[<currentTiddler>has<suppressedField>then[tc-row-disabled]] ~[subfilter<payloadTitleFilter>is[tiddler]then[tc-row-warning]] }}}>\n<td>\n<$checkbox field=<<selectionField>> checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}/>\n</td>\n<td>\n<$reveal type=\"nomatch\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$reveal type=\"nomatch\" state=<<previewPopupState>> text=\"yes\" tag=\"div\" class=\"tc-flex\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown tc-flex-grow-1 tc-word-break\" set=<<previewPopupState>> setTo=\"yes\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}>\n<span class=\"tc-small-gap-right\">{{$:/core/images/right-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\"><$button class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"yes\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/Tooltip]get[text]]}}}>{{$:/core/images/edit-button}}</$button></$list>\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<span class=\"tc-small-gap-right\">{{$:/core/images/down-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n</$reveal>\n</$reveal>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$text text={{{[<lingo-base>addsuffix[Listing/Rename/Prompt]get[text]]}}}/>\n</$reveal>\n</td>\n<td>\n<$view field=<<messageField>>/>\n<<overWriteWarning>>\n</td>\n</tr>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"tr\">\n<td colspan=\"3\">\n<div class=\"tc-flex\">\n<$edit-text tiddler=<<newImportTitleTiddler>> default={{{[subfilter<payloadTitleFilter>]}}} tag=\"input\" class=\"tc-import-rename tc-flex-grow-1\"/><span class=\"tc-small-gap-left\"><$button class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/CancelRename]get[text]]}}}>{{$:/core/images/close-button}}<$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button><span class=\"tc-small-gap-right\"/></span><$button class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/ConfirmRename]get[text]]}}}>{{$:/core/images/done-button}}<$action-setfield $field=<<renameField>> $value={{{[<newImportTitleTiddler>get[text]minlength[1]else<payloadTiddler>]}}} /><$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button>\n</div>\n</td>\n</$reveal>\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": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[<payloadTiddler>subtiddlerfields<currentTiddler>sort[]] -text\" variable=\"fieldName\">\n<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<fieldName>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<fieldName>> tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>>/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
},
"$:/core/ui/ImportPreviews/Text": {
"title": "$:/core/ui/ImportPreviews/Text",
"tags": "$:/tags/ImportPreview",
"caption": "{{$:/language/Import/Listing/Preview/Text}}",
"text": "<$transclude tiddler=<<currentTiddler>> subtiddler=<<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=<<currentTiddler>> subtiddler=<<payloadTiddler>> /></code></pre>"
},
"$:/core/ui/KeyboardShortcuts/advanced-search": {
"title": "$:/core/ui/KeyboardShortcuts/advanced-search",
"tags": "$:/tags/KeyboardShortcut",
"key": "((advanced-search))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/>\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/change-sidebar-layout": {
"title": "$:/core/ui/KeyboardShortcuts/change-sidebar-layout",
"tags": "$:/tags/KeyboardShortcut",
"key": "((change-sidebar-layout))",
"text": "<$list filter=\"[{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]]\" \nemptyMessage=\"\"\"<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fixed-fluid\"/>\"\"\">\n<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fluid-fixed\"/>\n</$list>\n"
},
"$:/core/ui/KeyboardShortcuts/new-image": {
"title": "$:/core/ui/KeyboardShortcuts/new-image",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-image))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-image}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/new-journal": {
"title": "$:/core/ui/KeyboardShortcuts/new-journal",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-journal))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-journal}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/new-tiddler": {
"title": "$:/core/ui/KeyboardShortcuts/new-tiddler",
"tags": "$:/tags/KeyboardShortcut",
"key": "((new-tiddler))",
"text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-tiddler}}\n</$navigator>\n"
},
"$:/core/ui/KeyboardShortcuts/save-wiki": {
"title": "$:/core/ui/KeyboardShortcuts/save-wiki",
"tags": "$:/tags/KeyboardShortcut",
"key": "((save-wiki))",
"text": "<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n"
},
"$:/core/ui/KeyboardShortcuts/sidebar-search": {
"title": "$:/core/ui/KeyboardShortcuts/sidebar-search",
"tags": "$:/tags/KeyboardShortcut",
"key": "((sidebar-search))",
"text": "<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n"
},
"$:/core/ui/KeyboardShortcuts/switcher": {
"title": "$:/core/ui/KeyboardShortcuts/switcher",
"tags": "$:/tags/KeyboardShortcut",
"key": "((layout-switcher))",
"text": "<$action-sendmessage $message=\"tm-show-switcher\" switch=\"layout\"/>"
},
"$:/core/ui/KeyboardShortcuts/toggle-sidebar": {
"title": "$:/core/ui/KeyboardShortcuts/toggle-sidebar",
"tags": "$:/tags/KeyboardShortcut",
"key": "((toggle-sidebar))",
"text": "<$list filter=\"[[$:/state/sidebar]is[missing]] [{$:/state/sidebar}removeprefix[yes]]\" emptyMessage=\"\"\"\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"yes\"/>\n\"\"\">\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"no\"/>\n</$list>\n"
},
"$:/snippets/LayoutSwitcher": {
"title": "$:/snippets/LayoutSwitcher",
"tags": "$:/tags/ControlPanel/Appearance",
"caption": "{{$:/language/ControlPanel/LayoutSwitcher/Caption}}",
"text": "<$linkcatcher to=\"$:/layout\">\n<div class=\"tc-chooser\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Layout]] [[$:/core/ui/PageTemplate]] +[!is[draft]sort[name]]\">\n<$list filter=\"[{$:/layout}!has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/layout}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n\"\"\">\n<$set name=\"cls\" filter=\"[all[current]field:title[$:/core/ui/PageTemplate]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n</$list>\n</$list>\n</div>\n</$linkcatcher>\n"
},
"$:/core/ui/ListItemTemplate": {
"title": "$:/core/ui/ListItemTemplate",
"text": "<div class=\"tc-menu-list-item\">\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": "\\whitespace trim\n\\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\\end\n\n<p>\n<$list filter=\"[all[current]tags[]] [list[$:/config/Manager/RecentTags]] +[sort[title]] \" variable=\"tag\" storyview=\"pop\">\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<$fieldmangler>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</$fieldmangler>\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<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar/Plugins]!has[draft.of]]\" default=\"$:/core/ui/MoreSideBar/Plugins/Plugins\" explicitState=\"$:/state/tab-1163638994\"/>\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": "\\whitespace trim\n\\define advanced-search-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>match[yes]]\">\n{{$:/core/images/advanced-search-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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=<<advanced-search-button>>>\n<<advanced-search-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>match[yes]]\">\n{{$:/core/images/close-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n\\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>match[yes]]\">\n{{$:/core/images/options-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n<$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>match[yes]]\">\n{{$:/core/images/locked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/unlocked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
},
"$:/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>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/full-screen-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/home-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/import-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n\\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>match[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<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[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>\n"
},
"$:/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": "\\whitespace trim\n\\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>match[yes]]\">\n{{$:/core/images/list}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/NewImage/Hint}} aria-label={{$:/language/Buttons/NewImage/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-image}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-image-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-journal}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>\n</$list>\n</$button>\n\\end\n<<journalButton>>\n"
},
"$:/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": "\\whitespace trim\n<$button actions={{$:/core/ui/Actions/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>match[yes]]\">\n{{$:/core/images/new-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>\n</$list>\n</$button>\n"
},
"$:/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": "\\whitespace trim\n<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>match[yes]]\">\n{{$:/core/images/palette}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[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>\n"
},
"$:/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>match[yes]]\">\n{{$:/core/images/print-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/refresh-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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 tooltip={{$:/language/Buttons/SaveWiki/Hint}} aria-label={{$:/language/Buttons/SaveWiki/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n<span class=\"tc-dirty-indicator\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/save-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n\\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>match[yes]]\">\n<$set name=\"storyview\" value={{$:/view}}>\n<$transclude tiddler=<<icon>>/>\n</$set>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[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>\n"
},
"$:/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": "\\whitespace trim\n\\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>match[yes]]\">\n{{$:/core/images/tag-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n<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>match[yes]]\">\n{{$:/core/images/theme-button}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[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>\n"
},
"$:/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": "\\whitespace trim\n<$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>match[yes]]\">\n{{$:/core/images/timestamp-on}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/timestamp-off}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/Off/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
},
"$:/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>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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": "\\whitespace trim\n\\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<$set name=\"hidden\" value=<<config-title>>>\n<$list filter=\"[<hidden>!text[hide]]\" storyview=\"pop\" variable=\"ignore\">\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</$list>\n</$set>\n</$list>\n</div>\n"
},
"$:/core/ui/PageStylesheet": {
"title": "$:/core/ui/PageStylesheet",
"text": "\\import [[$:/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"
},
"$:/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/drafts": {
"title": "$:/core/ui/PageTemplate/drafts",
"tags": "$:/tags/PageTemplate",
"text": "\\whitespace trim\n<$reveal state=\"$:/status/IsReadOnly\" type=\"nomatch\" text=\"yes\" tag=\"div\" class=\"tc-drafts-list\">\n<$list filter=\"[has[draft.of]!sort[modified]] -[list[$:/StoryList]]\">\n<$link>\n{{$:/core/images/edit-button}} <$text text=<<currentTiddler>>/>\n</$link>\n</$list>\n</$reveal>\n"
},
"$:/core/ui/PageTemplate/pluginreloadwarning": {
"title": "$:/core/ui/PageTemplate/pluginreloadwarning",
"tags": "$:/tags/PageTemplate",
"text": "\\define lingo-base() $:/language/\n\n<$list filter=\"[{$:/status/RequireReloadDueToPluginChange}match[yes]]\">\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": "\\whitespace trim\n\\define config-title()\n$:/config/SideBarSegments/Visibility/$(listItem)$\n\\end\n\n<$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<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBarSegment]!has[draft.of]]\" variable=\"listItem\">\n\n<$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\" tag=\"div\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n\n</$reveal>\n\n</$list>\n\n</$reveal>\n\n</div>\n\n</$scrollable>\n"
},
"$:/core/ui/PageTemplate/story": {
"title": "$:/core/ui/PageTemplate/story",
"tags": "$:/tags/PageTemplate",
"text": "\\whitespace trim\n<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={{$:/config/ui/ViewTemplate}} editTemplate={{$:/config/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\" storyview=\"pop\">\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\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
},
"$:/core/ui/PageTemplate": {
"title": "$:/core/ui/PageTemplate",
"name": "{{$:/language/PageTemplate/Name}}",
"description": "{{$:/language/PageTemplate/Description}}",
"text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-enable-drag-and-drop={{$:/config/DragAndDrop/Enable}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\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 enable=<<tv-enable-drag-and-drop>>>\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</$vars>\n"
},
"$:/PaletteManager": {
"title": "$:/PaletteManager",
"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\\define edit-colour-placeholder()\n edit $(colourName)$\n\\end\n\\define colour-tooltip(showhide) $showhide$ editor for $(newColourName)$ \n\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define delete-colour-index-actions() <$action-setfield $index=<<colourName>>/>\n\\define palette-manager-colour-row-segment()\n\\whitespace trim\n<$edit-text index=<<colourName>> tag=\"input\" placeholder=<<edit-colour-placeholder>> default=\"\"/>\n<br>\n<$edit-text index=<<colourName>> type=\"color\" tag=\"input\" class=\"tc-palette-manager-colour-input\"/>\n<$list filter=\"[<currentTiddler>getindex<colourName>removeprefix[<<]removesuffix[>>]] [<currentTiddler>getindex<colourName>removeprefix[<$]removesuffix[/>]]\" variable=\"ignore\">\n<$set name=\"state\" value={{{ [[$:/state/palettemanager/]addsuffix<currentTiddler>addsuffix[/]addsuffix<colourName>] }}}>\n<$wikify name=\"newColourName\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall={{{ [<currentTiddler>getindex<colourName>] }}}/>\"\"\">\n<$reveal state=<<state>> type=\"nomatch\" text=\"show\">\n<$button tooltip=<<colour-tooltip show>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" set=<<state>> setTo=\"show\">{{$:/core/images/down-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$button tooltip=<<colour-tooltip hide>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" actions=\"\"\"<$action-deletetiddler $tiddler=<<state>>/>\"\"\">{{$:/core/images/up-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$set name=\"colourName\" value=<<newColourName>>>\n<br>\n<<palette-manager-colour-row-segment>>\n<br><br>\n</$set>\n</$reveal>\n</$wikify>\n</$set>\n</$list>\n\\end\n\\define palette-manager-colour-row()\n\\whitespace trim\n<tr>\n<td>\n<span style=\"float:right;\">\n<$button tooltip={{$:/language/ControlPanel/Palette/Editor/Delete/Hint}} aria-label={{$:/language/ControlPanel/Palette/Editor/Delete/Hint}} class=\"tc-btn-invisible\" actions=<<delete-colour-index-actions>>>\n{{$:/core/images/delete-button}}</$button>\n</span>\n''<$macrocall $name=\"describePaletteColour\" colour=<<colourName>>/>''<br/>\n<$macrocall $name=\"colourName\" $output=\"text/plain\"/>\n</td>\n<td>\n<<palette-manager-colour-row-segment>>\n</td>\n</tr>\n\\end\n\\define palette-manager-table()\n\\whitespace trim\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]\" variable=\"colourName\">\n<$list filter=\"[<currentTiddler>indexes[]removeprefix<colourName>suffix[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[{$:/state/palettemanager/showexternal}removeprefix[yes]suffix[]]\" variable=\"ignore\">\n<<palette-manager-colour-row>>\n</$list>\n\"\"\">\n<<palette-manager-colour-row>>\n</$list>\n</$list>\n</tbody>\n</table>\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<$checkbox tiddler=\"$:/state/palettemanager/showexternal\" field=\"text\" checked=\"yes\" unchecked=\"no\"><span class=\"tc-small-gap-left\"><<lingo Names/External/Show>></span></$checkbox>\n\n<<palette-manager-table>>\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 />\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}}><$view field=\"description\"><$view field=\"title\"/></$view></$link>\n</div>"
},
"$:/core/ui/RootTemplate": {
"title": "$:/core/ui/RootTemplate",
"text": "<$transclude tiddler={{{ [{$:/layout}has[text]] ~[[$:/core/ui/PageTemplate]] }}} mode=\"inline\"/>\n\n"
},
"$:/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}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/sidebar\"/>\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 tc-sidebar-tabs-more\" explicitState=\"$:/state/tab/moresidebar-1850697562\"/>\n</div>\n"
},
"$:/core/ui/SideBar/Open": {
"title": "$:/core/ui/SideBar/Open",
"tags": "$:/tags/SideBar",
"caption": "{{$:/language/SideBar/Open/Caption}}",
"text": "\\whitespace trim\n\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=<<tv-story-list>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define placeholder()\n<div class=\"tc-droppable-placeholder\"/>\n\\end\n\n\\define droppable-item(button)\n\\whitespace trim\n<$droppable actions=<<drop-actions>> enable=<<tv-allow-drag-and-drop>>>\n<<placeholder>>\n<div>\n$button$\n</div>\n</$droppable>\n\\end\n\n<div class=\"tc-sidebar-tab-open\">\n<$list filter=\"[list<tv-story-list>]\" history=<<tv-history-list>> storyview=\"pop\">\n<div class=\"tc-sidebar-tab-open-item\">\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini tc-small-gap-right\">{{$:/core/images/close-button}}</$button><$link to={{!!title}}><$view field=\"title\"/></$link>\"\"\"/>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<div>\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\"\"\"/>\n</div>\n</$tiddler>\n</div>\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": "<$transclude tiddler=\"$:/core/ui/SideBarSegments/search\"/>\n\n<$transclude tiddler=\"$:/core/ui/SideBarSegments/tabs\"/>\n\n"
},
"$:/core/ui/SideBarSegments/page-controls": {
"title": "$:/core/ui/SideBarSegments/page-controls",
"tags": "$:/tags/SideBarSegment",
"text": "{{||$:/core/ui/PageTemplate/pagecontrols}}\n"
},
"$:/core/ui/SideBarSegments/search": {
"title": "$:/core/ui/SideBarSegments/search",
"tags": "$:/tags/SideBarSegment",
"text": "\\whitespace trim\n\n\\define count-popup-button()\n\\whitespace trim\n<$button popup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n<$list filter=\"[{$(searchTiddler)$}minlength{$:/config/Search/MinLength}limit[1]]\" variable=\"listItem\">\n<$vars userInput={{{ [<searchTiddler>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} replaceRegexp=\"limit\\[\\d+\\]\">\n<$vars primaryListFilter={{{ [<configTiddler>get[first-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}} secondaryListFilter={{{ [<configTiddler>get[second-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}}>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[subfilter<primaryListFilter>] [subfilter<secondaryListFilter>]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\n</$vars>\n</$vars>\n</$list>\n</$button>\n\\end\n\n\\define search-results-list()\n\\whitespace trim\n<$vars userInput={{$(searchTiddler)$}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$tiddler tiddler=<<configTiddler>>>\n\n{{$:/core/ui/SearchResults}}\n\n</$tiddler>\n\n</$list>\n</$vars>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<searchTiddler>get[text]!match{$:/temp/search}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/search]] [<searchTiddler>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=\"$:/temp/search\" text={{{ [<searchTiddler>get[text]] }}}/><$action-setfield $tiddler=\"$:/temp/search/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{ [<__tiddler__>get[text]] }}}/></$list></$list>\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define advanced-search-actions() <$action-setfield $tiddler=\"$:/temp/advancedsearch\" text={{$:/temp/search/input}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/search/input}}/><<delete-state-tiddlers>><$action-navigate $to=\"$:/AdvancedSearch\"/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/><$action-deletetiddler $filter=\"$:/temp/search $:/temp/search/input $:/temp/search/refresh [<searchListState>]\"/>\n\n<div class=\"tc-sidebar-lists tc-sidebar-search\">\n\n<$vars editTiddler=\"$:/temp/search\" searchTiddler=\"$:/temp/search/input\" searchListState=<<qualify \"$:/state/search-list/selected-item\">>>\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"((advanced-search-sidebar))\" actions=<<advanced-search-actions>>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<editTiddler>> storeTitle=<<searchTiddler>> \n\t\tselectionStateTitle=<<searchListState>> refreshTitle=\"$:/temp/search/refresh\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify \"$:/state/popup/search-dropdown\">> \n\t\tclass=\"tc-popup-handle\" filterMinLength={{$:/config/Search/MinLength}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> cancelPopups=\"yes\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n<<advanced-search-actions>>\n{{$:/core/images/advanced-search-button}}\n</$button>\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>><$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n{{$:/core/images/close-button}}\n</$button>\n<<count-popup-button>>\n</$reveal>\n<$reveal state=<<searchTiddler>> 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=<<searchTiddler>> 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<<search-results-list>>\n\n</$reveal>\n\n</$reveal>\n\n</$vars>\n\n</div>\n"
},
"$:/core/ui/SideBarSegments/site-subtitle": {
"title": "$:/core/ui/SideBarSegments/site-subtitle",
"tags": "$:/tags/SideBarSegment",
"text": "<div class=\"tc-site-subtitle\">\n\n<$transclude tiddler=\"$:/SiteSubtitle\" mode=\"inline\"/>\n\n</div>\n"
},
"$:/core/ui/SideBarSegments/site-title": {
"title": "$:/core/ui/SideBarSegments/site-title",
"tags": "$:/tags/SideBarSegment",
"text": "<h1 class=\"tc-site-title\">\n\n<$transclude tiddler=\"$:/SiteTitle\" mode=\"inline\"/>\n\n</h1>\n"
},
"$:/core/ui/SideBarSegments/tabs": {
"title": "$:/core/ui/SideBarSegments/tabs",
"tags": "$:/tags/SideBarSegment",
"text": "<div class=\"tc-sidebar-lists tc-sidebar-tabs\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\" default={{$:/config/DefaultSidebarTab}} state=\"$:/state/tab/sidebar\" class=\"tc-sidebar-tabs-main\" explicitState=\"$:/state/tab/sidebar--595412856\"/>\n\n</div>\n"
},
"$:/core/ui/SwitcherModal": {
"title": "$:/core/ui/SwitcherModal",
"subtitle": "<$text text={{{[<switch>lookup[$:/language/Switcher/Subtitle/]]}}}/>",
"class": "tc-modal-centered",
"text": "<$tiddler tiddler={{{[<switch>lookup[$:/config/SwitcherTargets/]]}}}>\n\n\n<$transclude/>\n\n\n</$tiddler>"
},
"$:/TagManager": {
"title": "$:/TagManager",
"icon": "$:/core/images/tag-button",
"color": "#bbb",
"text": "\\define lingo-base() $:/language/TagManager/\n\\define iconEditorTab(type)\n\\whitespace trim\n<$link to=\"\"><<lingo Icons/None>></$link>\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\\whitespace trim\n<div class=\"tc-drop-down-wrapper\">\n<$button popupTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal stateTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=<<__title__>> icon=<<navigateTo>>/>\"\"\">\n<<iconEditorTab type:\"!\">>\n<hr/>\n<<iconEditorTab type:\"\">>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>\n\\end\n\\define toggleButton(state)\n\\whitespace trim\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"closed\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"open\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"open\" default=\"closed\">\n<$button setTitle=<<__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\\whitespace trim\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>{{||$:/core/ui/TagTemplate}}</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={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} /> \n</td>\n</tr>\n<tr>\n<td></td>\n<td colspan=\"4\">\n<$reveal stateTitle={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} 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 style=\"position:relative;\">\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/TagPickerTagTemplate": {
"title": "$:/core/ui/TagPickerTagTemplate",
"text": "\\whitespace trim\n<$button class=<<button-classes>> tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n<$list filter=\"[<saveTiddler>minlength[1]]\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<tagField>> $subfilter=\"[<tag>]\"/>\n</$list>\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>> preventScroll=\"true\"/>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$list filter=\"[<refreshTitle>minlength[1]]\">\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n<<actions>>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<$wikify name=\"foregroundColor\" text=\"\"\"<$macrocall $name=\"contrastcolour\" target={{!!color}} fallbackTarget=<<fallbackTarget>> colourA=<<colourA>> colourB=<<colourB>>/>\"\"\">\n<span class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n<$transclude tiddler={{!!icon}}/><$view field=\"title\" format=\"text\"/>\n</span>\n</$wikify>\n</$set>\n</$button>\n"
},
"$:/core/ui/TagTemplate": {
"title": "$:/core/ui/TagTemplate",
"text": "\\whitespace trim\n<span class=\"tc-tag-list-item\" data-tag-title=<<currentTiddler>>>\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<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</$set>\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\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\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>"
},
"$:/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}}/>\n"
},
"$:/core/ui/TopBar/menu": {
"title": "$:/core/ui/TopBar/menu",
"tags": "$:/tags/TopRightBar",
"text": "<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]!match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"no\" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class=\"tc-btn-invisible tc-hide-sidebar-btn\">{{$:/core/images/chevron-right}}</$button>\n</$list>\n<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"yes\" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class=\"tc-btn-invisible tc-show-sidebar-btn\">{{$:/core/images/chevron-left}}</$button>\n</$list>\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\" stateTitle=<<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>\n"
},
"$:/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": "<$reveal tag=\"div\" class=\"tc-tiddler-plugin-info\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$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</$reveal>"
},
"$:/core/ui/ViewTemplate/subtitle": {
"title": "$:/core/ui/ViewTemplate/subtitle",
"tags": "$:/tags/ViewTemplate",
"text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}} />\n<$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\" stateTitle=<<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>\n"
},
"$:/core/ui/ViewTemplate/title": {
"title": "$:/core/ui/ViewTemplate/title",
"tags": "$:/tags/ViewTemplate",
"text": "\\whitespace trim\n\\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<$list filter=\"[all[current]has[icon]]~[[$:/config/DefaultTiddlerIcon]has[text]]\">\n<span class=\"tc-tiddler-title-icon\" style=<<title-styles>>>\n<$transclude tiddler={{!!icon}}>\n<$transclude tiddler={{$:/config/DefaultTiddlerIcon}}/>\n</$transclude>\n</span>\n</$list>\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<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>> mode=\"block\"/></$list>\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\" stateTitle=<<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\" stateTitle=<<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 folded-state()\n$:/state/folded/$(currentTiddler)$\n\\end\n\\define cancel-delete-tiddler-actions(message) <$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$vars storyTiddler=<<currentTiddler>> tiddlerInfoState=<<qualify \"$:/state/popup/tiddler-info\">>><div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-view-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[shadow]is[tiddler]then[tc-tiddler-overridden-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewTemplate]!has[draft.of]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>>/></$list>\n</div>\n</$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>match[yes]]\">\n{{$:/core/images/clone-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/close-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/close-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/edit-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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\" stateTitle=<<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>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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\" stateTitle=<<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>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>\n"
},
"$:/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>match[yes]]\">\n{{$:/core/images/info-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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 newHereActions()\n<$set name=\"tags\" filter=\"[<currentTiddler>] [{$:/config/NewTiddler/Tags}]\">\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<tags>>/>\n</$set>\n\\end\n\\define newHereButton()\n<$button actions=<<newHereActions>> tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-here-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<<newHereButton>>\n"
},
"$:/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<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>\n</span>\n</$list>\n</$wikify>\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>\n"
},
"$:/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>match[yes]]\">\n{{$:/core/images/open-window}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/permalink-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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>match[yes]]\">\n{{$:/core/images/permaview-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[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/AutoFocus": {
"title": "$:/config/AutoFocus",
"text": "title"
},
"$:/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/EditMode/fieldname-filter": {
"title": "$:/config/EditMode/fieldname-filter",
"first-search-filter": "[!is[shadow]!is[system]fields[]search:title<userInput>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type",
"second-search-filter": "[fields[]search:title<userInput>sort[]] -[!is[shadow]!is[system]fields[]]"
},
"$:/config/EditTabIndex": {
"title": "$:/config/EditTabIndex",
"text": "1\n"
},
"$:/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/webp": {
"title": "$:/config/EditorTypeMappings/image/webp",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/heic": {
"title": "$:/config/EditorTypeMappings/image/heic",
"text": "bitmap"
},
"$:/config/EditorTypeMappings/image/heif": {
"title": "$:/config/EditorTypeMappings/image/heif",
"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/NewImageType": {
"title": "$:/config/NewImageType",
"text": "jpeg"
},
"$:/config/OfficialPluginLibrary": {
"title": "$:/config/OfficialPluginLibrary",
"tags": "$:/tags/PluginLibrary",
"url": "https://tiddlywiki.com/library/v5.1.24/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/RegisterPluginType/plugin": {
"title": "$:/config/RegisterPluginType/plugin",
"text": "yes"
},
"$:/config/RegisterPluginType/theme": {
"title": "$:/config/RegisterPluginType/theme",
"text": "no"
},
"$:/config/RegisterPluginType/language": {
"title": "$:/config/RegisterPluginType/language",
"text": "no"
},
"$:/config/RegisterPluginType/info": {
"title": "$:/config/RegisterPluginType/info",
"text": "yes"
},
"$:/config/RegisterPluginType/import": {
"title": "$:/config/RegisterPluginType/import",
"text": "no"
},
"$:/config/SaveWikiButton/Template": {
"title": "$:/config/SaveWikiButton/Template",
"text": "$:/core/save/all"
},
"$:/config/SaverFilter": {
"title": "$:/config/SaverFilter",
"text": "[all[]] -[prefix[$:/HistoryList]] -[prefix[$:/StoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[[$:/UploadName]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
},
"$:/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/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]": {
"title": "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]",
"text": "yes"
},
"$:/config/ShortcutInfo/add-field": {
"title": "$:/config/ShortcutInfo/add-field",
"text": "{{$:/language/EditTemplate/Fields/Add/Button/Hint}}"
},
"$:/config/ShortcutInfo/advanced-search": {
"title": "$:/config/ShortcutInfo/advanced-search",
"text": "{{$:/language/Buttons/AdvancedSearch/Hint}}"
},
"$:/config/ShortcutInfo/advanced-search-sidebar": {
"title": "$:/config/ShortcutInfo/advanced-search-sidebar",
"text": "{{$:/language/Shortcuts/Input/AdvancedSearch/Hint}}"
},
"$:/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/change-sidebar-layout": {
"title": "$:/config/ShortcutInfo/change-sidebar-layout",
"text": "{{$:/language/Shortcuts/SidebarLayout/Hint}}"
},
"$:/config/ShortcutInfo/delete-field": {
"title": "$:/config/ShortcutInfo/delete-field",
"text": "{{$:/language/EditTemplate/Field/Remove/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/input-accept": {
"title": "$:/config/ShortcutInfo/input-accept",
"text": "{{$:/language/Shortcuts/Input/Accept/Hint}}"
},
"$:/config/ShortcutInfo/input-accept-variant": {
"title": "$:/config/ShortcutInfo/input-accept-variant",
"text": "{{$:/language/Shortcuts/Input/AcceptVariant/Hint}}"
},
"$:/config/ShortcutInfo/input-cancel": {
"title": "$:/config/ShortcutInfo/input-cancel",
"text": "{{$:/language/Shortcuts/Input/Cancel/Hint}}"
},
"$:/config/ShortcutInfo/input-down": {
"title": "$:/config/ShortcutInfo/input-down",
"text": "{{$:/language/Shortcuts/Input/Down/Hint}}"
},
"$:/config/ShortcutInfo/input-tab-left": {
"title": "$:/config/ShortcutInfo/input-tab-left",
"text": "{{$:/language/Shortcuts/Input/Tab-Left/Hint}}"
},
"$:/config/ShortcutInfo/input-tab-right": {
"title": "$:/config/ShortcutInfo/input-tab-right",
"text": "{{$:/language/Shortcuts/Input/Tab-Right/Hint}}"
},
"$:/config/ShortcutInfo/input-up": {
"title": "$:/config/ShortcutInfo/input-up",
"text": "{{$:/language/Shortcuts/Input/Up/Hint}}"
},
"$:/config/ShortcutInfo/italic": {
"title": "$:/config/ShortcutInfo/italic",
"text": "{{$:/language/Buttons/Italic/Hint}}"
},
"$:/config/ShortcutInfo/layout-switcher": {
"title": "$:/config/ShortcutInfo/layout-switcher",
"text": "{{$:/language/LayoutSwitcher/Description}}"
},
"$:/config/ShortcutInfo/link": {
"title": "$:/config/ShortcutInfo/link",
"text": "{{$:/language/Buttons/Link/Hint}}"
},
"$:/config/ShortcutInfo/linkify": {
"title": "$:/config/ShortcutInfo/linkify",
"text": "{{$:/language/Buttons/Linkify/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/new-image": {
"title": "$:/config/ShortcutInfo/new-image",
"text": "{{$:/language/Buttons/NewImage/Hint}}"
},
"$:/config/ShortcutInfo/new-journal": {
"title": "$:/config/ShortcutInfo/new-journal",
"text": "{{$:/language/Buttons/NewJournal/Hint}}"
},
"$:/config/ShortcutInfo/new-tiddler": {
"title": "$:/config/ShortcutInfo/new-tiddler",
"text": "{{$:/language/Buttons/NewTiddler/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/save-wiki": {
"title": "$:/config/ShortcutInfo/save-wiki",
"text": "{{$:/language/Buttons/SaveWiki/Hint}}"
},
"$:/config/ShortcutInfo/sidebar-search": {
"title": "$:/config/ShortcutInfo/sidebar-search",
"text": "{{$:/language/Buttons/SidebarSearch/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/toggle-sidebar": {
"title": "$:/config/ShortcutInfo/toggle-sidebar",
"text": "{{$:/language/Buttons/ToggleSidebar/Hint}}"
},
"$:/config/ShortcutInfo/transcludify": {
"title": "$:/config/ShortcutInfo/transcludify",
"text": "{{$:/language/Buttons/Transcludify/Hint}}"
},
"$:/config/ShortcutInfo/underline": {
"title": "$:/config/ShortcutInfo/underline",
"text": "{{$:/language/Buttons/Underline/Hint}}"
},
"$:/config/SwitcherTargets/layout": {
"title": "$:/config/SwitcherTargets/layout",
"text": "$:/snippets/LayoutSwitcher"
},
"$:/config/SwitcherTargets/language": {
"title": "$:/config/SwitcherTargets/language",
"text": "$:/snippets/languageswitcher"
},
"$:/config/SwitcherTargets/palette": {
"title": "$:/config/SwitcherTargets/palette",
"text": "$:/core/ui/ControlPanel/Palette"
},
"$:/config/SwitcherTargets/theme": {
"title": "$:/config/SwitcherTargets/theme",
"text": "$:/core/ui/ControlPanel/Theme"
},
"$:/config/SyncFilter": {
"title": "$:/config/SyncFilter",
"text": "[is[tiddler]] -[[$:/core]] -[[$:/library/sjcl.js]] -[prefix[$:/boot/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[prefix[$:/status/]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
},
"$:/config/SyncSystemTiddlersFromServer": {
"title": "$:/config/SyncSystemTiddlersFromServer",
"text": "no"
},
"$:/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/input-tab-left": {
"title": "$:/config/shortcuts-mac/input-tab-left",
"text": "ctrl-Left"
},
"$:/config/shortcuts-mac/input-tab-right": {
"title": "$:/config/shortcuts-mac/input-tab-right",
"text": "ctrl-Right"
},
"$:/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-mac/new-image": {
"title": "$:/config/shortcuts-mac/new-image",
"text": "ctrl-I"
},
"$:/config/shortcuts-mac/new-journal": {
"title": "$:/config/shortcuts-mac/new-journal",
"text": "ctrl-J"
},
"$:/config/shortcuts-mac/new-tiddler": {
"title": "$:/config/shortcuts-mac/new-tiddler",
"text": "ctrl-N"
},
"$:/config/shortcuts-mac/save-wiki": {
"title": "$:/config/shortcuts-mac/save-wiki",
"text": "meta-S"
},
"$:/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-not-mac/new-image": {
"title": "$:/config/shortcuts-not-mac/new-image",
"text": "alt-I"
},
"$:/config/shortcuts-not-mac/new-journal": {
"title": "$:/config/shortcuts-not-mac/new-journal",
"text": "alt-J"
},
"$:/config/shortcuts-not-mac/new-tiddler": {
"title": "$:/config/shortcuts-not-mac/new-tiddler",
"text": "alt-N"
},
"$:/config/shortcuts/add-field": {
"title": "$:/config/shortcuts/add-field",
"text": "enter"
},
"$:/config/shortcuts/advanced-search": {
"title": "$:/config/shortcuts/advanced-search",
"text": "ctrl-shift-A"
},
"$:/config/shortcuts/advanced-search-sidebar": {
"title": "$:/config/shortcuts/advanced-search-sidebar",
"text": "alt-Enter"
},
"$:/config/shortcuts/cancel-edit-tiddler": {
"title": "$:/config/shortcuts/cancel-edit-tiddler",
"text": "escape"
},
"$:/config/shortcuts/change-sidebar-layout": {
"title": "$:/config/shortcuts/change-sidebar-layout",
"text": "shift-alt-Down"
},
"$:/config/shortcuts/delete-field": {
"title": "$:/config/shortcuts/delete-field",
"text": "shift-alt-D"
},
"$:/config/shortcuts/excise": {
"title": "$:/config/shortcuts/excise",
"text": "ctrl-E"
},
"$:/config/shortcuts/sidebar-search": {
"title": "$:/config/shortcuts/sidebar-search",
"text": "ctrl-shift-F"
},
"$:/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/input-accept": {
"title": "$:/config/shortcuts/input-accept",
"text": "Enter"
},
"$:/config/shortcuts/input-accept-variant": {
"title": "$:/config/shortcuts/input-accept-variant",
"text": "ctrl-Enter"
},
"$:/config/shortcuts/input-cancel": {
"title": "$:/config/shortcuts/input-cancel",
"text": "Escape"
},
"$:/config/shortcuts/input-down": {
"title": "$:/config/shortcuts/input-down",
"text": "Down"
},
"$:/config/shortcuts/input-tab-left": {
"title": "$:/config/shortcuts/input-tab-left",
"text": "alt-Left"
},
"$:/config/shortcuts/input-tab-right": {
"title": "$:/config/shortcuts/input-tab-right",
"text": "alt-Right"
},
"$:/config/shortcuts/input-up": {
"title": "$:/config/shortcuts/input-up",
"text": "Up"
},
"$:/config/shortcuts/layout-switcher": {
"title": "$:/config/shortcuts/layout-switcher",
"text": "ctrl-shift-L"
},
"$:/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/save-wiki": {
"title": "$:/config/shortcuts/save-wiki",
"text": "ctrl-S"
},
"$:/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/toggle-sidebar": {
"title": "$:/config/shortcuts/toggle-sidebar",
"text": "alt-shift-S"
},
"$:/config/shortcuts/transcludify": {
"title": "$:/config/shortcuts/transcludify",
"text": "alt-shift-T"
},
"$:/config/ui/EditTemplate": {
"title": "$:/config/ui/EditTemplate",
"text": "$:/core/ui/EditTemplate"
},
"$:/config/ui/ViewTemplate": {
"title": "$:/config/ui/ViewTemplate",
"text": "$:/core/ui/ViewTemplate"
},
"$:/config/WikiParserRules/Inline/wikilink": {
"title": "$:/config/WikiParserRules/Inline/wikilink",
"text": "enable"
},
"$:/snippets/currpalettepreview": {
"title": "$:/snippets/currpalettepreview",
"text": "\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define swatchStyle()\nbackground-color: $(swatchColour)$;\n\\end\n\\define swatch-inner()\n<$set name=\"swatchColour\" value={{##$(colourResolved)$}}>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n\\end\n\\define swatch()\n<$set name=\"swatchColour\" value={{##$(colour)$}}>\n<$set name=\"swatchTitle\" value=<<colour>>>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n</$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>\n"
},
"$:/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 tiddler=\"$:/config/DefaultColourMappings/$name$\"/></$transclude></$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$}} _canonical_uri={{$title$!!_canonical_uri}}/>\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<span style=\"display:inline-block; 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/dumpvariables": {
"title": "$:/core/macros/dumpvariables",
"tags": "$:/tags/Macro",
"text": "\\define dumpvariables()\n<ul>\n<$list filter=\"[variables[]]\" variable=\"varname\">\n<li>\n<strong><code><$text text=<<varname>>/></code></strong>:<br/>\n<$codeblock code={{{ [<varname>getvariable[]] }}}/>\n</li>\n</$list>\n</ul>\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<$vars hint={{{ [<__lingoBase__>addsuffix[Hint]get[text]] }}} caption={{{ [<__lingoBase__>addsuffix[Caption]get[text]] }}}>\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip=<<hint>> aria-label=<<caption>> class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text=<<caption>>/></span>\n</$list>\n</$button></span></$vars><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$set name=\"count\" value={{{ [subfilter<__exportFilter__>count[]] }}}>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$list filter=\"[<currentTiddler>has[condition]subfilter{!!condition}limit[1]] ~[<currentTiddler>!has[condition]then[true]]\" variable=\"ignore\">\n<$button class=\"tc-btn-invisible\">\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=<<__exportFilter__>> filename={{{ [<__baseFilename__>addsuffix{!!extension}] }}}/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n</$button>\n</$list>\n</$list>\n</$set>\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/keyboard-driven-input": {
"title": "$:/core/macros/keyboard-driven-input",
"tags": "$:/tags/Macro",
"text": "\\define change-input-tab(stateTitle,tag,beforeafter,defaultState,actions)\n<$set name=\"tabsList\" filter=\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]]\">\n<$vars currentState={{{ [<__stateTitle__>!is[missing]get[text]] ~[<__defaultState__>] }}} firstTab={{{ [enlist<tabsList>nth[1]] }}} lastTab={{{ [enlist<tabsList>last[]] }}}>\n<$set name=\"nextTab\" value={{{ [all[shadows+tiddlers]tag<__tag__>!has[draft.of]$beforeafter$<currentState>] ~[[$beforeafter$]removeprefix[after]suffix[]addprefix<firstTab>] ~[[$beforeafter$]removeprefix[before]suffix[]addprefix<lastTab>] }}}>\n<$action-setfield $tiddler=<<__stateTitle__>> text=<<nextTab>>/>\n$actions$\n</$set>\n</$vars>\n</$set>\n\\end\n\n\\define keyboard-input-actions()\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>get<__field__>] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>getindex<__index__>] }}}/>\n</$list>\n\\end\n\n\\define input-next-actions-inner()\n<$list filter=\"[<nextItem>minlength[1]]\" variable=\"ignore\">\n<$action-setfield $tiddler=<<__selectionStateTitle__>> text=<<nextItem>>/>\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $field=<<__field__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $index=<<__index__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$action-setfield $tiddler=<<__refreshTitle__>> text=\"yes\"/>\n</$list>\n\\end\n\n\\define input-next-actions(afterOrBefore:\"after\",reverse:\"\")\n<$list filter=\"[<__storeTitle__>get[text]minlength<__filterMinLength__>] [<__filterMinLength__>match[0]] +[limit[1]]\" variable=\"ignore\">\n<$vars userInput={{{ [<__storeTitle__>get[text]] }}} selectedItem={{{ [<__selectionStateTitle__>get[text]] }}}>\n<$set name=\"configTiddler\" value={{{ [subfilter<__configTiddlerFilter__>] }}}>\n<$vars primaryListFilter={{{ [<configTiddler>get<__firstSearchFilterField__>] }}} secondaryListFilter={{{ [<configTiddler>get<__secondSearchFilterField__>] }}}>\n<$set name=\"filteredList\" filter=\"[subfilter<primaryListFilter>addsuffix[-primaryList]] =[subfilter<secondaryListFilter>addsuffix[-secondaryList]]\">\n<$vars nextItem={{{ [enlist<filteredList>$afterOrBefore$<selectedItem>] ~[enlist<filteredList>$reverse$nth[1]] }}} firstItem={{{ [enlist<filteredList>nth[1]] }}} lastItem={{{ [enlist<filteredList>last[]] }}}>\n<$list filter=\"[<selectedItem>match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[before]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<lastItem>!match<firstItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[after]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<firstItem>match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [<userInput>addsuffix[-userInput]] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>!match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<<input-next-actions-inner>>\n</$list>\n</$vars>\n</$set>\n</$vars>\n</$set>\n</$vars>\n</$list>\n\\end\n\n\\define keyboard-driven-input(tiddler,storeTitle,field:\"text\",index:\"\",tag:\"input\",type,focus:\"\",inputAcceptActions,inputAcceptVariantActions,inputCancelActions,placeholder:\"\",default:\"\",class,focusPopup,rows,minHeight,tabindex,size,autoHeight,filterMinLength:\"0\",refreshTitle,selectionStateTitle,cancelPopups:\"\",configTiddlerFilter,firstSearchFilterField:\"first-search-filter\",secondSearchFilterField:\"second-search-filter\")\n\\whitespace trim\n<$keyboard key=\"((input-accept))\" actions=<<__inputAcceptActions__>>>\n<$keyboard key=\"((input-accept-variant))\" actions=<<__inputAcceptVariantActions__>>>\n<$keyboard key=\"((input-up))\" actions=<<input-next-actions \"before\" \"reverse[]\">>>\n<$keyboard key=\"((input-down))\" actions=<<input-next-actions>>>\n<$keyboard key=\"((input-cancel))\" actions=<<__inputCancelActions__>>>\n<$edit-text tiddler=<<__tiddler__>> field=<<__field__>> index=<<__index__>> \n\t\tinputActions=<<keyboard-input-actions>> tag=<<__tag__>> class=<<__class__>> \n\t\tplaceholder=<<__placeholder__>> default=<<__default__>> focusPopup=<<__focusPopup__>> \n\t\tfocus=<<__focus__>> type=<<__type__>> rows=<<__rows__>> minHeight=<<__minHeight__>> \n\t\ttabindex=<<__tabindex__>> size=<<__size__>> autoHeight=<<__autoHeight__>> \n\t\trefreshTitle=<<__refreshTitle__>> cancelPopups=<<__cancelPopups__>>/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\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\\whitespace trim\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\\whitespace trim\n<span class=\"tc-links-draggable-list\">\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$\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\"/>\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<$tiddler tiddler=\"\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"div\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\">\n{{$:/core/images/blank}}\n</div>\n<div style=\"height:0.5em;\"/>\n</$droppable>\n</$tiddler>\n</$type$>\n</$vars>\n</span>\n\\end\n\n\\define list-tagged-draggable-drop-actions(tag)\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<!-- Save the new order to the Tag Tiddler -->\n<$action-listops $tiddler=<<__tag__>> $field=\"list\" $filter=\"+[enlist<order>] +[insertbefore:currentTiddler<actionTiddler>]\"/>\n<!-- Make sure the newly added item has the right tag -->\n<!-- Removing this line makes dragging tags within the dropdown work as intended -->\n<!--<$action-listops $tiddler=<<actionTiddler>> $tags=<<__tag__>>/>-->\n<!-- Using the following 5 lines as replacement makes dragging titles from outside into the dropdown apply the tag -->\n<$list filter=\"[<actionTiddler>!contains:tags<__tag__>]\">\n<$fieldmangler tiddler=<<actionTiddler>>>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__tag__>>/>\n</$fieldmangler>\n</$list>\n</$set>\n\\end\n\n\\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:\"div\",storyview:\"\")\n\\whitespace trim\n<span class=\"tc-tagged-draggable-list\">\n<$set name=\"tag\" value=<<__tag__>>>\n<$list filter=\"[<__tag__>tagging[]$subFilter$]\" emptyMessage=<<__emptyMessage__>> storyview=<<__storyview__>>>\n<$elementTag$ class=\"tc-menu-list-item\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\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=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$ style=\"height:0.5em;\">\n</$elementTag$>\n</$droppable>\n</$tiddler>\n</$set>\n</span>\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,actions,explicitState)\n<$set name=\"qualifiedState\" value=<<qualify \"$state$\">>>\n<$vars tabsState={{{ [<__explicitState__>minlength[1]] ~[<qualifiedState>] }}}>\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<tabsState>> 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>$actions$</$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=<<tabsState>> 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</$vars>\n</$set>\n\\end\n"
},
"$:/core/macros/tag-picker": {
"title": "$:/core/macros/tag-picker",
"tags": "$:/tags/Macro",
"first-search-filter": "[tags[]!is[system]search:title<userInput>sort[]]",
"second-search-filter": "[tags[]is[system]search:title<userInput>sort[]]",
"text": "\\define get-tagpicker-focus-selector() [data-tiddler-title=\"$(currentTiddlerCSSEscaped)$\"] .tc-add-tag-name input\n\n\\define delete-tag-state-tiddlers() <$action-deletetiddler $filter=\"[<newTagNameTiddler>] [<storeTitle>] [<tagSelectionState>]\"/>\n\n\\define add-tag-actions(actions,tagField:\"tags\")\n<$set name=\"tag\" value={{{ [<__tiddler__>get[text]] }}}>\n<$list filter=\"[<saveTiddler>!contains:$tagField$<tag>!match[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[<tag>]\"/>\n\"\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n</$list>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n\\end\n\n\\define clear-tags-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newTagNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-tag-state-tiddlers>>\n</$list>\n\\end\n\n\\define clear-tags-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newTagNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<clear-tags-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newTagNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define tag-picker-inner(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars newTagNameInputTiddlerQualified=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddlerQualified=<<qualify \"$:/temp/NewTagName/selected-item\">> fallbackTarget={{$(palette)$##tag-background}} colourA={{$(palette)$##foreground}} colourB={{$(palette)$##background}}>\n<$vars storeTitle={{{ [<newTagNameInputTiddler>!match[]] ~[<newTagNameInputTiddlerQualified>] }}} tagSelectionState={{{ [<newTagNameSelectionTiddler>!match[]] ~[<newTagNameSelectionTiddlerQualified>] }}}>\n<$vars refreshTitle=<<qualify \"$:/temp/NewTagName/refresh\">> nonSystemTagsFilter=\"[tags[]!is[system]search:title<userInput>sort[]]\" systemTagsFilter=\"[tags[]is[system]search:title<userInput>sort[]]\">\n<div class=\"tc-edit-add-tag\">\n<div>\n<span class=\"tc-add-tag-name tc-small-gap-right\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newTagNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<tagSelectionState>> inputAcceptActions=\"\"\"<$macrocall $name=\"add-tag-actions\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\"\n\t\tinputCancelActions=<<clear-tags-actions>> tag=\"input\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex=<<tabIndex>> \n\t\tfocus={{{ [{$:/config/AutoFocus}match[tags]then[true]] ~[[false]] }}} filterMinLength={{$:/config/Tags/MinLength}} \n\t\tcancelPopups=<<cancelPopups>> configTiddlerFilter=\"[[$:/core/macros/tag-picker]]\"/>\n</span><$button popup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Tags/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button><$reveal state=<<storeTitle>> type=\"nomatch\" text=\"\"><$button class=\"tc-btn-invisible tc-small-gap tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/ClearInput/Hint}} aria-label={{$:/language/EditTemplate/Tags/ClearInput/Caption}}>{{$:/core/images/close-button}}<<delete-tag-state-tiddlers>></$button></$reveal><span class=\"tc-add-tag-button tc-small-gap-left\">\n<$set name=\"tag\" value={{{ [<newTagNameTiddler>get[text]] }}}>\n<$button set=<<newTagNameTiddler>> setTo=\"\" class=\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<<delete-tag-state-tiddlers>><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>>/>\n</$set>\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 tc-block-tags-dropdown\">\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<nonSystemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-primaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n<hr>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<systemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-secondaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n</$set>\n</div>\n</$reveal>\n</div>\n</div>\n</$vars>\n</$vars>\n</$vars>\n\\end\n\\define tag-picker(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars saveTiddler=<<currentTiddler>> palette={{$:/palette}}>\n<$list filter=\"[<newTagNameTiddler>match[]]\" emptyMessage=\"\"\"<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\">\n<$set name=\"newTagNameTiddler\" value=<<qualify \"$:/temp/NewTagName\">>>\n<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\n</$set>\n</$list>\n</$vars>\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\" data-tag-title=<<__tag__>>>\n<$macrocall $name=\"tag-pill-body\" tag=<<__tag__>> icon={{{ [<__tag__>get[icon]] }}} colour={{{ [<__tag__>get[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\\whitespace trim\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}}><<timeline-title>></$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__>] -[enlist<__exclude__>]\"\"\">\n <$vars item=<<currentTiddler>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=\"<$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}><$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 </$set>\n </$vars>\n </$list>\n</ol>\n\\end\n\n\\define toc(tag,sort:\"\",itemClassFilter:\"\")\n<$macrocall $name=\"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<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<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</$qualify>\n\\end\n\n\\define toc-unlinked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<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</$qualify>\n\\end\n\n\\define toc-expandable-empty-message()\n<$macrocall $name=\"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__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <ol class=\"tc-toc toc-expandable\">\n <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__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 </$set>\n</$vars>\n\\end\n\n\\define toc-linked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\" >\n <li class=<<toc-item-class>>>\n <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>\">\n <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n {{$:/core/images/right-arrow}}\n </$button>\n </$reveal>\n <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<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</$qualify>\n\\end\n\n\\define toc-unlinked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n <li class=<<toc-item-class>>>\n <$list filter=\"[all[current]tagging[]$sort$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\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<toc-state>> text=\"open\">\n <$button setTitle=<<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\" stateTitle=<<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</$qualify>\n\\end\n\n\\define toc-selective-expandable-empty-message()\n<$macrocall $name=\"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__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n <ol class=\"tc-toc toc-selective-expandable\">\n <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__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 </$set>\n</$vars>\n\\end\n\n\\define toc-tabbed-external-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$tiddler tiddler={{{ [<__selectedTiddler__>get[text]] }}}>\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=\"[all[current]] -[<__selectedTiddler__>get[text]]\"/>\n </div>\n </$linkcatcher>\n <div class=\"tc-tabbed-table-of-contents-content\">\n <$reveal stateTitle=<<__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 stateTitle=<<__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-link(full-title,chunk,separator: \"/\")\n<$link to=<<__full-title__>>><$text text=<<__chunk__>>/></$link>\n\\end\n\n\\define leaf-node(prefix,chunk)\n<li>\n<$list filter=\"[<__prefix__>addsuffix<__chunk__>is[shadow]] [<__prefix__>addsuffix<__chunk__>is[tiddler]]\" variable=\"full-title\">\n<$list filter=\"[<full-title>removeprefix<__prefix__>]\" variable=\"chunk\">\n<span>{{$:/core/images/file}}</span> <$macrocall $name=\"leaf-link\" full-title=<<full-title>> chunk=<<chunk>>/>\n</$list>\n</$list>\n</li>\n\\end\n\n\\define branch-node(prefix,chunk,separator: \"/\")\n<li>\n<$set name=\"reveal-state\" value={{{ [[$:/state/tree/]addsuffix<__prefix__>addsuffix<__chunk__>] }}}>\n<$reveal type=\"nomatch\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"show\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"hide\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<span>(<$count filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>removeprefix<__chunk__>] -[<__prefix__>addsuffix<__chunk__>]\"/>)</span>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$macrocall $name=\"tree-node\" prefix={{{ [<__prefix__>addsuffix<__chunk__>] }}} separator=<<__separator__>>/>\n</$reveal>\n</$set>\n</li>\n\\end\n\n\\define tree-node(prefix,separator: \"/\")\n<ol>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]!suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"leaf-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"branch-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n</ol>\n\\end\n\n\\define tree(prefix: \"$:/\",separator: \"/\")\n<div class=\"tc-tree\">\n<span><$text text=<<__prefix__>>/></span>\n<div>\n<$macrocall $name=\"tree-node\" prefix=<<__prefix__>> separator=<<__separator__>>/>\n</div>\n</div>\n\\end\n"
},
"$:/core/macros/utils": {
"title": "$:/core/macros/utils",
"text": "\\define colour(colour)\n$colour$\n\\end\n"
},
"$:/snippets/minifocusswitcher": {
"title": "$:/snippets/minifocusswitcher",
"text": "<$select tiddler=\"$:/config/AutoFocus\">\n<$list filter=\"title tags text type fields\">\n<option value=<<currentTiddler>>><<currentTiddler>></option>\n</$list>\n</$select>\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": "<$transclude tiddler=\"$:/PaletteManager\"/>\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[name]]\"><$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>\n"
},
"$:/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 \"$:/state/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 \"$:/state/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/PluginLibrary": {
"title": "$:/tags/PluginLibrary",
"list": "$:/config/OfficialPluginLibrary"
},
"$:/tags/SideBar": {
"title": "$:/tags/SideBar",
"list": "[[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]",
"text": ""
},
"$:/tags/SideBarSegment": {
"title": "$:/tags/SideBarSegment",
"list": "[[$:/core/ui/SideBarSegments/site-title]] [[$:/core/ui/SideBarSegments/site-subtitle]] [[$:/core/ui/SideBarSegments/page-controls]] [[$:/core/ui/SideBarSegments/search]] [[$:/core/ui/SideBarSegments/tabs]]"
},
"$:/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}}\n<$list filter=\"[{$:/SiteSubtitle}trim[]minlength[1]]\" variable=\"ignore\">\n--- {{$:/SiteSubtitle}}\n</$list>"
},
"$:/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 tc-viewswitcher\">\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>>><$transclude tiddler=<<icon>>/><$text text=<<storyview>>/></$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
}
}
}
<div class="tc-more-sidebar">
<$macrocall $name="tabs" tabsList="[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]" default={{$:/config/DefaultMoreSidebarTab}} state="$:/state/tab/moresidebar" class="tc-vertical tc-sidebar-tabs-more" explicitState="$:/state/tab/moresidebar-1850697562"/>
</div>
\define lingo-base() $:/language/ControlPanel/
\define config-title()
$:/config/PageControlButtons/Visibility/$(listItem)$
\end
<<lingo Basics/Version/Prompt>> <<version>>
<$set name="tv-config-toolbar-icons" value="yes">
<$set name="tv-config-toolbar-text" value="yes">
<$set name="tv-config-toolbar-class" value="">
<$list filter="[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]" variable="listItem">
<div style="position:relative;" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>
<$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>
</div>
</$list>
</$set>
</$set>
</$set>
Les tiddlers suivants ont été importés :
# [[ressources-documentaires.jpg]]
{
"tiddlers": {
"$:/language/Buttons/AdvancedSearch/Caption": {
"title": "$:/language/Buttons/AdvancedSearch/Caption",
"text": "recherche avancée"
},
"$:/language/Buttons/AdvancedSearch/Hint": {
"title": "$:/language/Buttons/AdvancedSearch/Hint",
"text": "Recherche avancée"
},
"$:/language/Buttons/Cancel/Caption": {
"title": "$:/language/Buttons/Cancel/Caption",
"text": "annuler"
},
"$:/language/Buttons/Cancel/Hint": {
"title": "$:/language/Buttons/Cancel/Hint",
"text": "Annule l'édition de ce tiddler"
},
"$:/language/Buttons/Clone/Caption": {
"title": "$:/language/Buttons/Clone/Caption",
"text": "cloner"
},
"$:/language/Buttons/Clone/Hint": {
"title": "$:/language/Buttons/Clone/Hint",
"text": "Clone ce tiddler"
},
"$:/language/Buttons/Close/Caption": {
"title": "$:/language/Buttons/Close/Caption",
"text": "fermer"
},
"$:/language/Buttons/Close/Hint": {
"title": "$:/language/Buttons/Close/Hint",
"text": "Ferme ce tiddler"
},
"$:/language/Buttons/CloseAll/Caption": {
"title": "$:/language/Buttons/CloseAll/Caption",
"text": "fermer tout"
},
"$:/language/Buttons/CloseAll/Hint": {
"title": "$:/language/Buttons/CloseAll/Hint",
"text": "Ferme tous les tiddlers"
},
"$:/language/Buttons/CloseOthers/Caption": {
"title": "$:/language/Buttons/CloseOthers/Caption",
"text": "fermer les autres tiddlers"
},
"$:/language/Buttons/CloseOthers/Hint": {
"title": "$:/language/Buttons/CloseOthers/Hint",
"text": "Ferme les autres tiddlers"
},
"$:/language/Buttons/ControlPanel/Caption": {
"title": "$:/language/Buttons/ControlPanel/Caption",
"text": "panneau de contrôle"
},
"$:/language/Buttons/ControlPanel/Hint": {
"title": "$:/language/Buttons/ControlPanel/Hint",
"text": "Ouvre le panneau de contrôle"
},
"$:/language/Buttons/CopyToClipboard/Caption": {
"title": "$:/language/Buttons/CopyToClipboard/Caption",
"text": "copier dans le presse-papier"
},
"$:/language/Buttons/CopyToClipboard/Hint": {
"title": "$:/language/Buttons/CopyToClipboard/Hint",
"text": "Copie ce texte dans le presse-papier"
},
"$:/language/Buttons/Delete/Caption": {
"title": "$:/language/Buttons/Delete/Caption",
"text": "supprimer"
},
"$:/language/Buttons/Delete/Hint": {
"title": "$:/language/Buttons/Delete/Hint",
"text": "Supprime ce tiddler"
},
"$:/language/Buttons/Edit/Caption": {
"title": "$:/language/Buttons/Edit/Caption",
"text": "éditer"
},
"$:/language/Buttons/Edit/Hint": {
"title": "$:/language/Buttons/Edit/Hint",
"text": "Édite ce tiddler"
},
"$:/language/Buttons/Encryption/Caption": {
"title": "$:/language/Buttons/Encryption/Caption",
"text": "chiffrement"
},
"$:/language/Buttons/Encryption/Hint": {
"title": "$:/language/Buttons/Encryption/Hint",
"text": "Affecte ou résilie le mot de passe pour la sauvegarde de ce wiki"
},
"$:/language/Buttons/Encryption/ClearPassword/Caption": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
"text": "résilier le mot de passe"
},
"$:/language/Buttons/Encryption/ClearPassword/Hint": {
"title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
"text": "Résilie le mot de passe et sauvegarde ce wiki sans chiffrement"
},
"$:/language/Buttons/Encryption/SetPassword/Caption": {
"title": "$:/language/Buttons/Encryption/SetPassword/Caption",
"text": "affecter un mot de passe"
},
"$:/language/Buttons/Encryption/SetPassword/Hint": {
"title": "$:/language/Buttons/Encryption/SetPassword/Hint",
"text": "Affecte un mot de passe pour sauvegarde une version chiffrée de ce wiki"
},
"$:/language/Buttons/ExportPage/Caption": {
"title": "$:/language/Buttons/ExportPage/Caption",
"text": "exporter tout"
},
"$:/language/Buttons/ExportPage/Hint": {
"title": "$:/language/Buttons/ExportPage/Hint",
"text": "Exporte tous les tiddlers"
},
"$:/language/Buttons/ExportTiddler/Caption": {
"title": "$:/language/Buttons/ExportTiddler/Caption",
"text": "exporter ce tiddler"
},
"$:/language/Buttons/ExportTiddler/Hint": {
"title": "$:/language/Buttons/ExportTiddler/Hint",
"text": "Exporte ce tiddler"
},
"$:/language/Buttons/ExportTiddlers/Caption": {
"title": "$:/language/Buttons/ExportTiddlers/Caption",
"text": "exporter ces tiddlers"
},
"$:/language/Buttons/ExportTiddlers/Hint": {
"title": "$:/language/Buttons/ExportTiddlers/Hint",
"text": "Exporte ces tiddlers"
},
"$:/language/Buttons/SidebarSearch/Hint": {
"title": "$:/language/Buttons/SidebarSearch/Hint",
"text": "Choisit le champ de recherche dans la barre latérale"
},
"$:/language/Buttons/Fold/Caption": {
"title": "$:/language/Buttons/Fold/Caption",
"text": "replier le tiddler"
},
"$:/language/Buttons/Fold/Hint": {
"title": "$:/language/Buttons/Fold/Hint",
"text": "Replie le corps du tiddler"
},
"$:/language/Buttons/Fold/FoldBar/Caption": {
"title": "$:/language/Buttons/Fold/FoldBar/Caption",
"text": "Barre de repli"
},
"$:/language/Buttons/Fold/FoldBar/Hint": {
"title": "$:/language/Buttons/Fold/FoldBar/Hint",
"text": "Barre optionnelle pour replier et déplier les tiddlers"
},
"$:/language/Buttons/Unfold/Caption": {
"title": "$:/language/Buttons/Unfold/Caption",
"text": "déplier le tiddler"
},
"$:/language/Buttons/Unfold/Hint": {
"title": "$:/language/Buttons/Unfold/Hint",
"text": "Déplie le corps de ce tiddler"
},
"$:/language/Buttons/FoldOthers/Caption": {
"title": "$:/language/Buttons/FoldOthers/Caption",
"text": "replier les autres tiddlers"
},
"$:/language/Buttons/FoldOthers/Hint": {
"title": "$:/language/Buttons/FoldOthers/Hint",
"text": "Replie le corps des autres tiddlers ouverts"
},
"$:/language/Buttons/FoldAll/Caption": {
"title": "$:/language/Buttons/FoldAll/Caption",
"text": "replier tous les tiddlers"
},
"$:/language/Buttons/FoldAll/Hint": {
"title": "$:/language/Buttons/FoldAll/Hint",
"text": "Replie le corps de tous les tiddlers ouverts"
},
"$:/language/Buttons/UnfoldAll/Caption": {
"title": "$:/language/Buttons/UnfoldAll/Caption",
"text": "déplier tous les tiddlers"
},
"$:/language/Buttons/UnfoldAll/Hint": {
"title": "$:/language/Buttons/UnfoldAll/Hint",
"text": "Déplie le corps de tous les tiddlers ouverts"
},
"$:/language/Buttons/FullScreen/Caption": {
"title": "$:/language/Buttons/FullScreen/Caption",
"text": "plein-écran"
},
"$:/language/Buttons/FullScreen/Hint": {
"title": "$:/language/Buttons/FullScreen/Hint",
"text": "Entre ou sort du mode plein-écran"
},
"$:/language/Buttons/Help/Caption": {
"title": "$:/language/Buttons/Help/Caption",
"text": "aide"
},
"$:/language/Buttons/Help/Hint": {
"title": "$:/language/Buttons/Help/Hint",
"text": "Affiche le panneau d'aide"
},
"$:/language/Buttons/Import/Caption": {
"title": "$:/language/Buttons/Import/Caption",
"text": "importer"
},
"$:/language/Buttons/Import/Hint": {
"title": "$:/language/Buttons/Import/Hint",
"text": "Importe des fichiers de nombreux types, notamment texte, image, TiddlyWiki ou JSON"
},
"$:/language/Buttons/Info/Caption": {
"title": "$:/language/Buttons/Info/Caption",
"text": "informations"
},
"$:/language/Buttons/Info/Hint": {
"title": "$:/language/Buttons/Info/Hint",
"text": "Affiche des informations sur ce tiddler"
},
"$:/language/Buttons/Home/Caption": {
"title": "$:/language/Buttons/Home/Caption",
"text": "accueil"
},
"$:/language/Buttons/Home/Hint": {
"title": "$:/language/Buttons/Home/Hint",
"text": "Ouvre les tiddlers par défaut"
},
"$:/language/Buttons/Language/Caption": {
"title": "$:/language/Buttons/Language/Caption",
"text": "langue"
},
"$:/language/Buttons/Language/Hint": {
"title": "$:/language/Buttons/Language/Hint",
"text": "Choix de la langue pour l'interface utilisateur"
},
"$:/language/Buttons/Manager/Caption": {
"title": "$:/language/Buttons/Manager/Caption",
"text": "gestionnaire de tiddlers"
},
"$:/language/Buttons/Manager/Hint": {
"title": "$:/language/Buttons/Manager/Hint",
"text": "Ouvre le gestionnaire de tiddlers"
},
"$:/language/Buttons/More/Caption": {
"title": "$:/language/Buttons/More/Caption",
"text": "plus"
},
"$:/language/Buttons/More/Hint": {
"title": "$:/language/Buttons/More/Hint",
"text": "Actions supplémentaires"
},
"$:/language/Buttons/NewHere/Caption": {
"title": "$:/language/Buttons/NewHere/Caption",
"text": "nouveau, à partir d'ici"
},
"$:/language/Buttons/NewHere/Hint": {
"title": "$:/language/Buttons/NewHere/Hint",
"text": "Crée un nouveau tiddler avec pour tag le titre du tiddler courant"
},
"$:/language/Buttons/NewJournal/Caption": {
"title": "$:/language/Buttons/NewJournal/Caption",
"text": "nouveau journal"
},
"$:/language/Buttons/NewJournal/Hint": {
"title": "$:/language/Buttons/NewJournal/Hint",
"text": "Crée un nouveau tiddler journal"
},
"$:/language/Buttons/NewJournalHere/Caption": {
"title": "$:/language/Buttons/NewJournalHere/Caption",
"text": "nouveau journal, à partir d'ici"
},
"$:/language/Buttons/NewJournalHere/Hint": {
"title": "$:/language/Buttons/NewJournalHere/Hint",
"text": "Crée un nouveau tiddler journal avec pour tag le titre du tiddler courant"
},
"$:/language/Buttons/NewImage/Caption": {
"title": "$:/language/Buttons/NewImage/Caption",
"text": "nouvelle image"
},
"$:/language/Buttons/NewImage/Hint": {
"title": "$:/language/Buttons/NewImage/Hint",
"text": "Crée une nouveau tiddler image"
},
"$:/language/Buttons/NewMarkdown/Caption": {
"title": "$:/language/Buttons/NewMarkdown/Caption",
"text": "nouveau tiddler Markdown"
},
"$:/language/Buttons/NewMarkdown/Hint": {
"title": "$:/language/Buttons/NewMarkdown/Hint",
"text": "Crée un nouveau tiddler avec la syntaxe Markdown"
},
"$:/language/Buttons/NewTiddler/Caption": {
"title": "$:/language/Buttons/NewTiddler/Caption",
"text": "nouveau tiddler"
},
"$:/language/Buttons/NewTiddler/Hint": {
"title": "$:/language/Buttons/NewTiddler/Hint",
"text": "Crée un nouveau tiddler"
},
"$:/language/Buttons/OpenWindow/Caption": {
"title": "$:/language/Buttons/OpenWindow/Caption",
"text": "ouvrir dans une nouvelle fenêtre"
},
"$:/language/Buttons/OpenWindow/Hint": {
"title": "$:/language/Buttons/OpenWindow/Hint",
"text": "Ouvre ce tiddler dans une nouvelle fenêtre"
},
"$:/language/Buttons/Palette/Caption": {
"title": "$:/language/Buttons/Palette/Caption",
"text": "palette"
},
"$:/language/Buttons/Palette/Hint": {
"title": "$:/language/Buttons/Palette/Hint",
"text": "Choisit une palette de couleur"
},
"$:/language/Buttons/Permalink/Caption": {
"title": "$:/language/Buttons/Permalink/Caption",
"text": "permalink"
},
"$:/language/Buttons/Permalink/Hint": {
"title": "$:/language/Buttons/Permalink/Hint",
"text": "Remplace l'URL dans la barre d'adresse du navigateur par un lien direct vers ce tiddler"
},
"$:/language/Buttons/Permaview/Caption": {
"title": "$:/language/Buttons/Permaview/Caption",
"text": "permaview"
},
"$:/language/Buttons/Permaview/Hint": {
"title": "$:/language/Buttons/Permaview/Hint",
"text": "Remplace l'URL dans la barre d'adresse du navigateur par un lien direct vers l'ensemble des tiddlers présents dans le déroulé"
},
"$:/language/Buttons/Print/Caption": {
"title": "$:/language/Buttons/Print/Caption",
"text": "imprimer la page"
},
"$:/language/Buttons/Print/Hint": {
"title": "$:/language/Buttons/Print/Hint",
"text": "Imprime la page courante"
},
"$:/language/Buttons/Refresh/Caption": {
"title": "$:/language/Buttons/Refresh/Caption",
"text": "rafraîchir"
},
"$:/language/Buttons/Refresh/Hint": {
"title": "$:/language/Buttons/Refresh/Hint",
"text": "Rafraîchit la totalité du wiki"
},
"$:/language/Buttons/Save/Caption": {
"title": "$:/language/Buttons/Save/Caption",
"text": "ok"
},
"$:/language/Buttons/Save/Hint": {
"title": "$:/language/Buttons/Save/Hint",
"text": "Confirme les changements apportés à ce tiddler"
},
"$:/language/Buttons/SaveWiki/Caption": {
"title": "$:/language/Buttons/SaveWiki/Caption",
"text": "enregistrer les modifications"
},
"$:/language/Buttons/SaveWiki/Hint": {
"title": "$:/language/Buttons/SaveWiki/Hint",
"text": "Enregistre les modifications"
},
"$:/language/Buttons/StoryView/Caption": {
"title": "$:/language/Buttons/StoryView/Caption",
"text": "visualisation du déroulé"
},
"$:/language/Buttons/StoryView/Hint": {
"title": "$:/language/Buttons/StoryView/Hint",
"text": "Choisit le mode de visualisation du déroulé"
},
"$:/language/Buttons/HideSideBar/Caption": {
"title": "$:/language/Buttons/HideSideBar/Caption",
"text": "cacher la barre latérale"
},
"$:/language/Buttons/HideSideBar/Hint": {
"title": "$:/language/Buttons/HideSideBar/Hint",
"text": "Cache la barre latérale"
},
"$:/language/Buttons/ShowSideBar/Caption": {
"title": "$:/language/Buttons/ShowSideBar/Caption",
"text": "afficher la barre latérale"
},
"$:/language/Buttons/ShowSideBar/Hint": {
"title": "$:/language/Buttons/ShowSideBar/Hint",
"text": "Affiche la barre latérale"
},
"$:/language/Buttons/TagManager/Caption": {
"title": "$:/language/Buttons/TagManager/Caption",
"text": "gestionnaire de tags"
},
"$:/language/Buttons/TagManager/Hint": {
"title": "$:/language/Buttons/TagManager/Hint",
"text": "Ouvre le gestionnaire de tags"
},
"$:/language/Buttons/Timestamp/Caption": {
"title": "$:/language/Buttons/Timestamp/Caption",
"text": "horodatage"
},
"$:/language/Buttons/Timestamp/Hint": {
"title": "$:/language/Buttons/Timestamp/Hint",
"text": "Décide si les modifications mettent à jour l'horodatage"
},
"$:/language/Buttons/Timestamp/On/Caption": {
"title": "$:/language/Buttons/Timestamp/On/Caption",
"text": "horodatage activé"
},
"$:/language/Buttons/Timestamp/On/Hint": {
"title": "$:/language/Buttons/Timestamp/On/Hint",
"text": "L'horodatage est mis à jour quand les tiddlers sont modifiés"
},
"$:/language/Buttons/Timestamp/Off/Caption": {
"title": "$:/language/Buttons/Timestamp/Off/Caption",
"text": "horodatage désactivé"
},
"$:/language/Buttons/Timestamp/Off/Hint": {
"title": "$:/language/Buttons/Timestamp/Off/Hint",
"text": "L'horodatage n'est pas mis à jour quand les tiddlers sont modifiés"
},
"$:/language/Buttons/Theme/Caption": {
"title": "$:/language/Buttons/Theme/Caption",
"text": "thème"
},
"$:/language/Buttons/Theme/Hint": {
"title": "$:/language/Buttons/Theme/Hint",
"text": "Choix du thème pour l'affichage"
},
"$:/language/Buttons/Bold/Caption": {
"title": "$:/language/Buttons/Bold/Caption",
"text": "gras"
},
"$:/language/Buttons/Bold/Hint": {
"title": "$:/language/Buttons/Bold/Hint",
"text": "Met la sélection en gras"
},
"$:/language/Buttons/Clear/Caption": {
"title": "$:/language/Buttons/Clear/Caption",
"text": "effacer"
},
"$:/language/Buttons/Clear/Hint": {
"title": "$:/language/Buttons/Clear/Hint",
"text": "Remplace l'image par une couleur pleine"
},
"$:/language/Buttons/EditorHeight/Caption": {
"title": "$:/language/Buttons/EditorHeight/Caption",
"text": "hauteur de l'éditeur"
},
"$:/language/Buttons/EditorHeight/Caption/Auto": {
"title": "$:/language/Buttons/EditorHeight/Caption/Auto",
"text": "Ajuste automatiquement la hauteur en fonction du contenu"
},
"$:/language/Buttons/EditorHeight/Caption/Fixed": {
"title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
"text": "Hauteur fixe :"
},
"$:/language/Buttons/EditorHeight/Hint": {
"title": "$:/language/Buttons/EditorHeight/Hint",
"text": "Choisit la hauteur de l'éditeur de texte"
},
"$:/language/Buttons/Excise/Caption": {
"title": "$:/language/Buttons/Excise/Caption",
"text": "exciser"
},
"$:/language/Buttons/Excise/Caption/Excise": {
"title": "$:/language/Buttons/Excise/Caption/Excise",
"text": "Effectue une excision"
},
"$:/language/Buttons/Excise/Caption/MacroName": {
"title": "$:/language/Buttons/Excise/Caption/MacroName",
"text": "Nom de la macro :"
},
"$:/language/Buttons/Excise/Caption/NewTitle": {
"title": "$:/language/Buttons/Excise/Caption/NewTitle",
"text": "Titre du nouveau tiddler :"
},
"$:/language/Buttons/Excise/Caption/Replace": {
"title": "$:/language/Buttons/Excise/Caption/Replace",
"text": "Remplacer le texte excisé par :"
},
"$:/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": "lien"
},
"$:/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": "Utilise le titre de ce tiddler comme tag du nouveau tiddler"
},
"$:/language/Buttons/Excise/Caption/TiddlerExists": {
"title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
"text": "Attention : le tiddler existe déjà"
},
"$:/language/Buttons/Excise/Hint": {
"title": "$:/language/Buttons/Excise/Hint",
"text": "Excise le texte sélectionné vers un nouveau tiddler"
},
"$:/language/Buttons/Heading1/Caption": {
"title": "$:/language/Buttons/Heading1/Caption",
"text": "en-tête 1"
},
"$:/language/Buttons/Heading1/Hint": {
"title": "$:/language/Buttons/Heading1/Hint",
"text": "Applique le formatage des en-têtes de niveau 1 aux lignes de la sélection"
},
"$:/language/Buttons/Heading2/Caption": {
"title": "$:/language/Buttons/Heading2/Caption",
"text": "en-tête 2"
},
"$:/language/Buttons/Heading2/Hint": {
"title": "$:/language/Buttons/Heading2/Hint",
"text": "Applique le formatage des en-têtes de niveau 2 aux lignes de la sélection"
},
"$:/language/Buttons/Heading3/Caption": {
"title": "$:/language/Buttons/Heading3/Caption",
"text": "en-tête 3"
},
"$:/language/Buttons/Heading3/Hint": {
"title": "$:/language/Buttons/Heading3/Hint",
"text": "Applique le formatage des en-têtes de niveau 3 aux lignes de la sélection"
},
"$:/language/Buttons/Heading4/Caption": {
"title": "$:/language/Buttons/Heading4/Caption",
"text": "en-tête 4"
},
"$:/language/Buttons/Heading4/Hint": {
"title": "$:/language/Buttons/Heading4/Hint",
"text": "Applique le formatage des en-têtes de niveau 4 aux lignes de la sélection"
},
"$:/language/Buttons/Heading5/Caption": {
"title": "$:/language/Buttons/Heading5/Caption",
"text": "en-tête 5"
},
"$:/language/Buttons/Heading5/Hint": {
"title": "$:/language/Buttons/Heading5/Hint",
"text": "Applique le formatage des en-têtes de niveau 5 aux lignes de la sélection"
},
"$:/language/Buttons/Heading6/Caption": {
"title": "$:/language/Buttons/Heading6/Caption",
"text": "en-tête 6"
},
"$:/language/Buttons/Heading6/Hint": {
"title": "$:/language/Buttons/Heading6/Hint",
"text": "Applique le formatage des en-têtes de niveau 6 aux lignes de la sélection"
},
"$:/language/Buttons/Italic/Caption": {
"title": "$:/language/Buttons/Italic/Caption",
"text": "italiques"
},
"$:/language/Buttons/Italic/Hint": {
"title": "$:/language/Buttons/Italic/Hint",
"text": "Met la sélection en italiques"
},
"$:/language/Buttons/LineWidth/Caption": {
"title": "$:/language/Buttons/LineWidth/Caption",
"text": "épaisseur du trait"
},
"$:/language/Buttons/LineWidth/Hint": {
"title": "$:/language/Buttons/LineWidth/Hint",
"text": "Choisit une épaisseur de trait pour le remplissage"
},
"$:/language/Buttons/Link/Caption": {
"title": "$:/language/Buttons/Link/Caption",
"text": "lien"
},
"$:/language/Buttons/Link/Hint": {
"title": "$:/language/Buttons/Link/Hint",
"text": "Crée un lien wikitext"
},
"$:/language/Buttons/Linkify/Caption": {
"title": "$:/language/Buttons/Linkify/Caption",
"text": "wikilien"
},
"$:/language/Buttons/Linkify/Hint": {
"title": "$:/language/Buttons/Linkify/Hint",
"text": "Encadre la sélection avec des crochets droits"
},
"$:/language/Buttons/ListBullet/Caption": {
"title": "$:/language/Buttons/ListBullet/Caption",
"text": "liste à puces"
},
"$:/language/Buttons/ListBullet/Hint": {
"title": "$:/language/Buttons/ListBullet/Hint",
"text": "Formate les lignes de la sélection comme une liste à puces"
},
"$:/language/Buttons/ListNumber/Caption": {
"title": "$:/language/Buttons/ListNumber/Caption",
"text": "liste numérotée"
},
"$:/language/Buttons/ListNumber/Hint": {
"title": "$:/language/Buttons/ListNumber/Hint",
"text": "Formate les lignes de la sélection comme une liste numérotée"
},
"$:/language/Buttons/MonoBlock/Caption": {
"title": "$:/language/Buttons/MonoBlock/Caption",
"text": "bloc de chasse constante"
},
"$:/language/Buttons/MonoBlock/Hint": {
"title": "$:/language/Buttons/MonoBlock/Hint",
"text": "Formate les lignes de la sélection en bloc de chasse constante"
},
"$:/language/Buttons/MonoLine/Caption": {
"title": "$:/language/Buttons/MonoLine/Caption",
"text": "chasse constante"
},
"$:/language/Buttons/MonoLine/Hint": {
"title": "$:/language/Buttons/MonoLine/Hint",
"text": "Formate la sélection avec une police de caractères à chasse constante"
},
"$:/language/Buttons/Opacity/Caption": {
"title": "$:/language/Buttons/Opacity/Caption",
"text": "opacité"
},
"$:/language/Buttons/Opacity/Hint": {
"title": "$:/language/Buttons/Opacity/Hint",
"text": "Choisit l'opacité du remplissage"
},
"$:/language/Buttons/Paint/Caption": {
"title": "$:/language/Buttons/Paint/Caption",
"text": "couleur de remplissage"
},
"$:/language/Buttons/Paint/Hint": {
"title": "$:/language/Buttons/Paint/Hint",
"text": "Choisit la couleur de remplissage"
},
"$:/language/Buttons/Picture/Caption": {
"title": "$:/language/Buttons/Picture/Caption",
"text": "image"
},
"$:/language/Buttons/Picture/Hint": {
"title": "$:/language/Buttons/Picture/Hint",
"text": "Insère une image"
},
"$:/language/Buttons/Preview/Caption": {
"title": "$:/language/Buttons/Preview/Caption",
"text": "prévisualisation"
},
"$:/language/Buttons/Preview/Hint": {
"title": "$:/language/Buttons/Preview/Hint",
"text": "Affiche le panneau de prévisualisation"
},
"$:/language/Buttons/PreviewType/Caption": {
"title": "$:/language/Buttons/PreviewType/Caption",
"text": "type de prévisualisation"
},
"$:/language/Buttons/PreviewType/Hint": {
"title": "$:/language/Buttons/PreviewType/Hint",
"text": "Choisit le type de prévisualisation"
},
"$:/language/Buttons/Quote/Caption": {
"title": "$:/language/Buttons/Quote/Caption",
"text": "citation"
},
"$:/language/Buttons/Quote/Hint": {
"title": "$:/language/Buttons/Quote/Hint",
"text": "Formate les lignes de la sélection comme une citation"
},
"$:/language/Buttons/RotateLeft/Caption": {
"title": "$:/language/Buttons/RotateLeft/Caption",
"text": "pivoter vers la gauche"
},
"$:/language/Buttons/RotateLeft/Hint": {
"title": "$:/language/Buttons/RotateLeft/Hint",
"text": "Fait pivoter l'image vers la gauche de 90 degrés"
},
"$:/language/Buttons/Size/Caption": {
"title": "$:/language/Buttons/Size/Caption",
"text": "taille de l'image"
},
"$:/language/Buttons/Size/Caption/Height": {
"title": "$:/language/Buttons/Size/Caption/Height",
"text": "Hauteur :"
},
"$:/language/Buttons/Size/Caption/Resize": {
"title": "$:/language/Buttons/Size/Caption/Resize",
"text": "Redimensionner l'image"
},
"$:/language/Buttons/Size/Caption/Width": {
"title": "$:/language/Buttons/Size/Caption/Width",
"text": "Largeur :"
},
"$:/language/Buttons/Size/Hint": {
"title": "$:/language/Buttons/Size/Hint",
"text": "Indique une taille pour l'image"
},
"$:/language/Buttons/Stamp/Caption": {
"title": "$:/language/Buttons/Stamp/Caption",
"text": "tampon"
},
"$:/language/Buttons/Stamp/Caption/New": {
"title": "$:/language/Buttons/Stamp/Caption/New",
"text": "Ajoutez le vôtre"
},
"$:/language/Buttons/Stamp/Hint": {
"title": "$:/language/Buttons/Stamp/Hint",
"text": "Insère un fragment de texte préconfiguré"
},
"$:/language/Buttons/Stamp/New/Title": {
"title": "$:/language/Buttons/Stamp/New/Title",
"text": "Nom tel qu'il apparaît dans le menu"
},
"$:/language/Buttons/Stamp/New/Text": {
"title": "$:/language/Buttons/Stamp/New/Text",
"text": "Texte du fragment. (N'oubliez pas d'ajouter une légende dans le champ //caption//.)"
},
"$:/language/Buttons/Strikethrough/Caption": {
"title": "$:/language/Buttons/Strikethrough/Caption",
"text": "barré"
},
"$:/language/Buttons/Strikethrough/Hint": {
"title": "$:/language/Buttons/Strikethrough/Hint",
"text": "Barre le texte sélectionné"
},
"$:/language/Buttons/Subscript/Caption": {
"title": "$:/language/Buttons/Subscript/Caption",
"text": "indice"
},
"$:/language/Buttons/Subscript/Hint": {
"title": "$:/language/Buttons/Subscript/Hint",
"text": "Met en indice le texte sélectionné"
},
"$:/language/Buttons/Superscript/Caption": {
"title": "$:/language/Buttons/Superscript/Caption",
"text": "exposant"
},
"$:/language/Buttons/Superscript/Hint": {
"title": "$:/language/Buttons/Superscript/Hint",
"text": "Met en exposant le texte sélectionné"
},
"$:/language/Buttons/ToggleSidebar/Hint": {
"title": "$:/language/Buttons/ToggleSidebar/Hint",
"text": "Bascule la visibilité de la barre latérale"
},
"$:/language/Buttons/Transcludify/Caption": {
"title": "$:/language/Buttons/Transcludify/Caption",
"text": "transclusion"
},
"$:/language/Buttons/Transcludify/Hint": {
"title": "$:/language/Buttons/Transcludify/Hint",
"text": "Encadre la sélection avec des accolades"
},
"$:/language/Buttons/Underline/Caption": {
"title": "$:/language/Buttons/Underline/Caption",
"text": "souligné"
},
"$:/language/Buttons/Underline/Hint": {
"title": "$:/language/Buttons/Underline/Hint",
"text": "Souligne le texte sélectionné"
},
"$:/language/ControlPanel/Advanced/Caption": {
"title": "$:/language/ControlPanel/Advanced/Caption",
"text": "Avancé"
},
"$:/language/ControlPanel/Advanced/Hint": {
"title": "$:/language/ControlPanel/Advanced/Hint",
"text": "Informations internes sur ce ~TiddlyWiki"
},
"$:/language/ControlPanel/Appearance/Caption": {
"title": "$:/language/ControlPanel/Appearance/Caption",
"text": "Apparence"
},
"$:/language/ControlPanel/Appearance/Hint": {
"title": "$:/language/ControlPanel/Appearance/Hint",
"text": "Personnalisation de l'apparence de votre ~TiddlyWiki."
},
"$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
"title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
"text": "Durée de l'animation"
},
"$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
"title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
"text": "Champ qui recevra le focus par défaut pour les nouveaux tiddlers"
},
"$:/language/ControlPanel/Basics/Caption": {
"title": "$:/language/ControlPanel/Basics/Caption",
"text": "Fondamentaux"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
"text": "Utilisez les [[crochets doubles]] pour les titres contenant des espaces. Vous pouvez aussi décider de <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">Conserver le déroulé actuel</$button>"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
"text": "Tiddlers par défaut"
},
"$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
"title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
"text": "Liste les tiddlers qui seront affichés au démarrage :"
},
"$:/language/ControlPanel/Basics/Language/Prompt": {
"title": "$:/language/ControlPanel/Basics/Language/Prompt",
"text": "Bonjour ! Langue active :"
},
"$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
"text": "Modèle pour les titres des tiddlers journaux"
},
"$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
"text": "Texte pour les nouveaux tiddlers journaux"
},
"$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
"text": "Tags pour les nouveaux tiddlers journaux"
},
"$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
"text": "Modèle pour les titres des nouveaux tiddlers"
},
"$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
"text": "Tags pour les nouveaux tiddlers"
},
"$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
"text": "Nombre de tiddlers //shadow// modifiés"
},
"$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
"text": "Nombre de tiddlers //shadow//"
},
"$:/language/ControlPanel/Basics/Subtitle/Prompt": {
"title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
"text": "Sous-titre"
},
"$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
"text": "Nombre de tiddlers système :"
},
"$:/language/ControlPanel/Basics/Tags/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tags/Prompt",
"text": "Nombre de tags :"
},
"$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
"title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
"text": "Nombre de tiddlers :"
},
"$:/language/ControlPanel/Basics/Title/Prompt": {
"title": "$:/language/ControlPanel/Basics/Title/Prompt",
"text": "Titre de ce ~TiddlyWiki :"
},
"$:/language/ControlPanel/Basics/Username/Prompt": {
"title": "$:/language/ControlPanel/Basics/Username/Prompt",
"text": "Signer les modifications avec ce nom d'utilisateur :"
},
"$:/language/ControlPanel/Basics/Version/Prompt": {
"title": "$:/language/ControlPanel/Basics/Version/Prompt",
"text": "Version de ~TiddlyWiki :"
},
"$:/language/ControlPanel/EditorTypes/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Caption",
"text": "Types d'éditeur"
},
"$:/language/ControlPanel/EditorTypes/Editor/Caption": {
"title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
"text": "Éditeur"
},
"$:/language/ControlPanel/EditorTypes/Hint": {
"title": "$:/language/ControlPanel/EditorTypes/Hint",
"text": "Ces tiddlers déterminent l'éditeur à utiliser pour éditer tel ou tel type de tiddler."
},
"$:/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 sur ce TiddlyWiki"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
"text": "Entrez le raccourci ici"
},
"$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
"text": "ajoute un raccourci"
},
"$:/language/ControlPanel/KeyboardShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
"text": "Raccourcis clavier"
},
"$:/language/ControlPanel/KeyboardShortcuts/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
"text": "Gère les définitions des raccourcis clavier"
},
"$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
"text": "Aucun raccourci clavier défini"
},
"$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
"text": "supprime le raccourci clavier"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
"text": "Toutes plates-formes"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
"text": "Plate-forme Macintosh seulement"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
"text": "Plates-formes non-Macintosh seulement"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
"text": "Plate-forme Linux seulement"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
"text": "Plate-formes non-Linux seulement"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
"text": "Plate-forme Windows seulement"
},
"$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
"title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
"text": "Plates-formes non-Windows seulement"
},
"$:/language/ControlPanel/LoadedModules/Caption": {
"title": "$:/language/ControlPanel/LoadedModules/Caption",
"text": "Modules chargés"
},
"$:/language/ControlPanel/LoadedModules/Hint": {
"title": "$:/language/ControlPanel/LoadedModules/Hint",
"text": "Liste des modules chargés, liés à leurs tiddlers sources. Les italiques indiquent que les tiddlers sources n'existent pas, le plus souvent parce que le module a été créé lors du processus d'amorçage."
},
"$:/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": "Cloner"
},
"$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
"text": "Il est recommandé de cloner cette palette « shadow » avant de l'éditer"
},
"$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
"title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
"text": "supprime cette entrée dans la palette courante"
},
"$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
"title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
"text": "Montre les noms de couleur qui ne font pas partie de la palette courante"
},
"$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
"text": "Cette palette « shadow » a été modifiée"
},
"$:/language/ControlPanel/Palette/Editor/Prompt": {
"title": "$:/language/ControlPanel/Palette/Editor/Prompt",
"text": "Édition de"
},
"$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
"title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
"text": "Réinitialiser"
},
"$:/language/ControlPanel/Palette/HideEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
"text": "Masquer l'éditeur"
},
"$:/language/ControlPanel/Palette/Prompt": {
"title": "$:/language/ControlPanel/Palette/Prompt",
"text": "Palette actuelle :"
},
"$:/language/ControlPanel/Palette/ShowEditor/Caption": {
"title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
"text": "Afficher l'éditeur"
},
"$:/language/ControlPanel/Parsing/Caption": {
"title": "$:/language/ControlPanel/Parsing/Caption",
"text": "Analyse"
},
"$:/language/ControlPanel/Parsing/Hint": {
"title": "$:/language/ControlPanel/Parsing/Hint",
"text": "Ici, vous pouvez activer/désactiver globalement les règles de l'analyseur du wiki. Les changements seront effectifs après enregistrement et rechargement de votre wiki. Désactiver certaines règles peut empêcher <$text text=\"TiddlyWiki\"/> de fonctionner correctement. Pour restaurer le fonctionnement normal, utilisez le [[safe mode|https://tiddlywiki.com/#SafeMode]]."
},
"$:/language/ControlPanel/Parsing/Block/Caption": {
"title": "$:/language/ControlPanel/Parsing/Block/Caption",
"text": "Règles d'analyse Block"
},
"$:/language/ControlPanel/Parsing/Inline/Caption": {
"title": "$:/language/ControlPanel/Parsing/Inline/Caption",
"text": "Règles d'analyse Inline"
},
"$:/language/ControlPanel/Parsing/Pragma/Caption": {
"title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
"text": "Règles d'analyse Pragma"
},
"$:/language/ControlPanel/Plugins/Add/Caption": {
"title": "$:/language/ControlPanel/Plugins/Add/Caption",
"text": "Ajouter des plugins"
},
"$:/language/ControlPanel/Plugins/Add/Hint": {
"title": "$:/language/ControlPanel/Plugins/Add/Hint",
"text": "Installer des plugins à partir de la bibliothèque officielle"
},
"$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
"text": "Ce plugin est déjà installé dans la version <$text text=<<installedVersion>>/>"
},
"$:/language/ControlPanel/Plugins/AlsoRequires": {
"title": "$:/language/ControlPanel/Plugins/AlsoRequires",
"text": "Requiert également :"
},
"$:/language/ControlPanel/Plugins/Caption": {
"title": "$:/language/ControlPanel/Plugins/Caption",
"text": "Plugins"
},
"$:/language/ControlPanel/Plugins/Disable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Disable/Caption",
"text": "désactiver"
},
"$:/language/ControlPanel/Plugins/Disable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Disable/Hint",
"text": "Désactive ce plugin au prochain rechargement de la page"
},
"$:/language/ControlPanel/Plugins/Disabled/Status": {
"title": "$:/language/ControlPanel/Plugins/Disabled/Status",
"text": "(désactivé)"
},
"$:/language/ControlPanel/Plugins/Downgrade/Caption": {
"title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
"text": "version antérieure"
},
"$:/language/ControlPanel/Plugins/Empty/Hint": {
"title": "$:/language/ControlPanel/Plugins/Empty/Hint",
"text": "Aucun"
},
"$:/language/ControlPanel/Plugins/Enable/Caption": {
"title": "$:/language/ControlPanel/Plugins/Enable/Caption",
"text": "activer"
},
"$:/language/ControlPanel/Plugins/Enable/Hint": {
"title": "$:/language/ControlPanel/Plugins/Enable/Hint",
"text": "Active ce plugin au prochain rechargement de la page"
},
"$:/language/ControlPanel/Plugins/Install/Caption": {
"title": "$:/language/ControlPanel/Plugins/Install/Caption",
"text": "installer"
},
"$:/language/ControlPanel/Plugins/Installed/Hint": {
"title": "$:/language/ControlPanel/Plugins/Installed/Hint",
"text": "Plugins installés :"
},
"$:/language/ControlPanel/Plugins/Languages/Caption": {
"title": "$:/language/ControlPanel/Plugins/Languages/Caption",
"text": "Langues"
},
"$:/language/ControlPanel/Plugins/Languages/Hint": {
"title": "$:/language/ControlPanel/Plugins/Languages/Hint",
"text": "Plugins de langue"
},
"$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
"title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
"text": "''\"<$text text=<<currentTab>>/>\"'' non trouvé"
},
"$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
"title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
"text": "Ce plugin n'est pas installé"
},
"$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
"text": "ouvre la bibliothèque de plugins"
},
"$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
"title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
"text": "ferme la bibliothèque des plugins"
},
"$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
"title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
"text": "(rechargement requis)"
},
"$:/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": "réinstalle"
},
"$:/language/ControlPanel/Plugins/Themes/Caption": {
"title": "$:/language/ControlPanel/Plugins/Themes/Caption",
"text": "Thèmes"
},
"$:/language/ControlPanel/Plugins/Themes/Hint": {
"title": "$:/language/ControlPanel/Plugins/Themes/Hint",
"text": "Plugins de thème"
},
"$:/language/ControlPanel/Plugins/Update/Caption": {
"title": "$:/language/ControlPanel/Plugins/Update/Caption",
"text": "mise à jour"
},
"$:/language/ControlPanel/Plugins/Updates/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/Caption",
"text": "Mises à jour"
},
"$:/language/ControlPanel/Plugins/Updates/Hint": {
"title": "$:/language/ControlPanel/Plugins/Updates/Hint",
"text": "Mises à jour disponibles pour les plugins installés"
},
"$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
"title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
"text": "Mettre à jour <<update-count>> plugins"
},
"$:/language/ControlPanel/Plugins/SubPluginPrompt": {
"title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
"text": "Avec <<count>> sous-plugins disponibles"
},
"$:/language/ControlPanel/Saving/Caption": {
"title": "$:/language/ControlPanel/Saving/Caption",
"text": "Sauvegarde"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
"text": "Permet l'enregistrement automatique pour l'enregistreur de téléchargement"
},
"$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
"text": "Active l'auto-enregistrement pour l'enregistreur de téléchargement"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
"text": "Enregistreur de téléchargement"
},
"$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
"title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
"text": "Ces paramètres s'appliquent à l'enregistreur de téléchargement compatible HTML5"
},
"$:/language/ControlPanel/Saving/General/Caption": {
"title": "$:/language/ControlPanel/Saving/General/Caption",
"text": "Général"
},
"$:/language/ControlPanel/Saving/General/Hint": {
"title": "$:/language/ControlPanel/Saving/General/Hint",
"text": "Ces paramètres s'appliquent à tous les enregistreurs chargés"
},
"$:/language/ControlPanel/Saving/Hint": {
"title": "$:/language/ControlPanel/Saving/Hint",
"text": "Paramètres pour enregistrer l'intégralité du TiddlyWiki dans un seul fichier, selon le module d'enregistrement choisi"
},
"$:/language/ControlPanel/Saving/GitService/Branch": {
"title": "$:/language/ControlPanel/Saving/GitService/Branch",
"text": "Branche cible où doit s'effectuer l'enregistrement"
},
"$:/language/ControlPanel/Saving/GitService/CommitMessage": {
"title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
"text": "Enregistré depuis TiddlyWiki"
},
"$:/language/ControlPanel/Saving/GitService/Description": {
"title": "$:/language/ControlPanel/Saving/GitService/Description",
"text": "Ces paramètres ne sont utilisés que pour l'enregistrement sur <<service-name>>"
},
"$:/language/ControlPanel/Saving/GitService/Filename": {
"title": "$:/language/ControlPanel/Saving/GitService/Filename",
"text": "Nom du fichier cible (par ex. `index.html`)"
},
"$:/language/ControlPanel/Saving/GitService/Path": {
"title": "$:/language/ControlPanel/Saving/GitService/Path",
"text": "Chemin vers le fichier cible (par ex. `/wiki/`)"
},
"$:/language/ControlPanel/Saving/GitService/Repo": {
"title": "$:/language/ControlPanel/Saving/GitService/Repo",
"text": "//Dépôt// cible (par ex. `Jermolene/TiddlyWiki5`)"
},
"$:/language/ControlPanel/Saving/GitService/ServerURL": {
"title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
"text": "URL du serveur d'API"
},
"$:/language/ControlPanel/Saving/GitService/UserName": {
"title": "$:/language/ControlPanel/Saving/GitService/UserName",
"text": "Nom d'utilisateur"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
"text": "Enregistreur ~GitHub"
},
"$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
"text": "Mot de passe, jeton OAUTH, ou //personal access token// (voir [[GitHub help page|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]] pour de plus amples détails)"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
"text": "Enregistreur ~GitLab"
},
"$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
"text": "//Personal access token// pour cette API (voir [[GitLab help page|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]] pour de plus amples details)"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
"text": "Enregistreur Gitea"
},
"$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
"title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
"text": "//Jeton d'accès// pour cette API (via l'interface web de Gitea : `Configuration | Applications | Générer le nouveau jeton`)"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
"text": "Paramètres avancés"
},
"$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
"text": "Dossier des //sauvegardes//"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
"text": "Sauvegardes"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
"text": "Enregistreur ~TiddlySpot"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Description": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
"text": "Ces paramètres ne servent que lors de la sauvegarde vers http://tiddlyspot.com ou vers un serveur distant compatible"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
"text": "Nom du fichier enregistré"
},
"$:/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": "//L'URL par défaut est `http://<nom du wiki>.tiddlyspot.com/store.cgi`. Elle peut être remplacée par une adresse serveur personnalisée, comme `http://example.com/store.php`.//"
},
"$:/language/ControlPanel/Saving/TiddlySpot/Password": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
"text": "Mot de passe"
},
"$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
"text": "URL du serveur"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
"text": "Dossier des dépôts"
},
"$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
"title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
"text": "Nom utilisé pour ce Wiki"
},
"$:/language/ControlPanel/Settings/AutoSave/Caption": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
"text": "Sauvegarde automatique"
},
"$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
"text": "Pas de sauvegarde automatique des modifications"
},
"$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
"text": "Sauvegarde automatique des modifications"
},
"$:/language/ControlPanel/Settings/AutoSave/Hint": {
"title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
"text": "Tentative de sauvegarde automatique des modifications pendant l'édition quand un enregistreur compatible est utilisé"
},
"$:/language/ControlPanel/Settings/CamelCase/Caption": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
"text": "Liens Wiki //Camel Case//"
},
"$:/language/ControlPanel/Settings/CamelCase/Hint": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
"text": "Vous pouvez désactiver globalement les liens créés à partir des expressions de type ~CamelCase. Pour que ce paramètre prenne effet, il est nécessaire de recharger le wiki"
},
"$:/language/ControlPanel/Settings/CamelCase/Description": {
"title": "$:/language/ControlPanel/Settings/CamelCase/Description",
"text": "Active les liens automatiques sur les expressions de la forme ~CamelCase"
},
"$:/language/ControlPanel/Settings/Caption": {
"title": "$:/language/ControlPanel/Settings/Caption",
"text": "Paramétrage"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
"text": "Barre d'outils de l'éditeur"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
"text": "Active ou désactive la barre d'outils de l'éditeur :"
},
"$:/language/ControlPanel/Settings/EditorToolbar/Description": {
"title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
"text": "Affiche la barre d'outils de l'éditeur"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
"text": "Mode Panneau d'Informations du Tiddler"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
"text": "Contrôle à quel moment le panneau d'informations du tiddler se ferme :"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
"text": "Le panneau d'informations se ferme automatiquement"
},
"$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
"title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
"text": "Le panneau d'informations du tiddler reste ouvert jusqu'à ce qu'il soit fermé explicitement"
},
"$:/language/ControlPanel/Settings/Hint": {
"title": "$:/language/ControlPanel/Settings/Hint",
"text": "Ce paramétrage vous permet de personnaliser le comportement de TiddlyWiki."
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
"text": "Barre d'adresse pendant la navigation"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
"text": "Comportement de la barre d'adresse du navigateur lorsqu'on pointe vers un tiddler :"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
"text": "Ne pas modifier la barre d'adresse"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
"text": "Inclure uniquement le titre du tiddler cible"
},
"$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
"text": "Inclure le titre du tiddler cible ainsi que le déroulé courant"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
"text": "Historique de navigation"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
"text": "Mise à jour de l'historique de navigation du navigateur lorsqu'on pointe vers un tiddler :"
},
"$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
"text": "Ne pas mettre à jour l'historique"
},
"$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
"text": "Mettre à jour l'historique"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
"text": "Mode Permalink/permaview"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
"text": "Choisit la manière de traiter l'URL permalink/permaview:"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
"text": "Copie l'URL permalink/permaview dans le presse-papier"
},
"$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
"title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
"text": "Met à jour la barre d'adresse à partir de l'URL permalink/permaview"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
"text": "Instrumentation de la performance"
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
"text": "Affiche des statistiques de performance dans la console de développement du navigateur. Nécessite de recharger la page pour prendre effet."
},
"$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
"title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
"text": "Active l'instrumentation de la performance"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
"text": "Style des boutons de la barre d'outils"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
"text": "Choix du style des boutons de la barre d'outils :"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
"text": "Sans bordure"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
"text": "Avec une bordure"
},
"$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
"text": "Arrondis"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
"text": "Boutons de la barre d'outils"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
"text": "Apparence par défaut des boutons sur la barre d'outils :"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
"text": "Afficher l'icône"
},
"$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
"title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
"text": "Afficher le texte"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
"text": "Onglet par défaut sur la barre latérale"
},
"$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
"text": "Indique l'onglet de la barre latérale qui sera affiché par défaut"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
"text": "Onglet par défaut sous le Plus de la barre latérale"
},
"$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
"title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
"text": "Indique quel onglet sera affiché par défaut sous le Plus de la barre latérale"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
"text": "Comportement à l'ouverture du tiddler"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
"text": "Navigation depuis un emplacement //interne// au déroulé"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
"text": "Navigation depuis un emplacement //externe// au déroulé"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
"text": "Ouvrir au-dessus du tiddler courant"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
"text": "Ouvrir en dessous du tiddler courant"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
"text": "Ouvrir tout en haut du déroulé"
},
"$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
"title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
"text": "Ouvrir tout en bas du déroulé"
},
"$:/language/ControlPanel/Settings/TitleLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
"text": "Titres des tiddlers"
},
"$:/language/ControlPanel/Settings/TitleLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
"text": "Faut-il afficher les titres des tiddlers comme des liens ?"
},
"$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
"text": "Ne pas afficher les titres des tiddlers comme des liens"
},
"$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
"title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
"text": "Afficher les titres des tiddlers comme des liens"
},
"$:/language/ControlPanel/Settings/MissingLinks/Caption": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
"text": "Liens wiki"
},
"$:/language/ControlPanel/Settings/MissingLinks/Hint": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
"text": "Peut-on pointer vers des tiddlers qui n'existent pas encore ?"
},
"$:/language/ControlPanel/Settings/MissingLinks/Description": {
"title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
"text": "Active les liens vers les tiddlers inexistants"
},
"$:/language/ControlPanel/StoryView/Caption": {
"title": "$:/language/ControlPanel/StoryView/Caption",
"text": "Vue sur le déroulé"
},
"$:/language/ControlPanel/StoryView/Prompt": {
"title": "$:/language/ControlPanel/StoryView/Prompt",
"text": "Vue courante :"
},
"$:/language/ControlPanel/Stylesheets/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Caption",
"text": "Feuilles de style"
},
"$:/language/ControlPanel/Stylesheets/Expand/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
"text": "Tout déployer"
},
"$:/language/ControlPanel/Stylesheets/Hint": {
"title": "$:/language/ControlPanel/Stylesheets/Hint",
"text": "Voici le rendu CSS courant pour les tiddlers feuilles de style tagués avec <<tag \"$:/tags/Stylesheet\">>"
},
"$:/language/ControlPanel/Stylesheets/Restore/Caption": {
"title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
"text": "Restaurer"
},
"$:/language/ControlPanel/Theme/Caption": {
"title": "$:/language/ControlPanel/Theme/Caption",
"text": "Thème"
},
"$:/language/ControlPanel/Theme/Prompt": {
"title": "$:/language/ControlPanel/Theme/Prompt",
"text": "Thème courant :"
},
"$:/language/ControlPanel/TiddlerFields/Caption": {
"title": "$:/language/ControlPanel/TiddlerFields/Caption",
"text": "Champs des tiddlers"
},
"$:/language/ControlPanel/TiddlerFields/Hint": {
"title": "$:/language/ControlPanel/TiddlerFields/Hint",
"text": "Il s'agit de la totalité des [[champs|TiddlerFields]] utilisés dans ce wiki (y compris les tiddlers système, mais non compris les tiddlers //shadow//)."
},
"$:/language/ControlPanel/Toolbars/Caption": {
"title": "$:/language/ControlPanel/Toolbars/Caption",
"text": "Barres d'outils"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
"text": "Barre d'outils du mode édition"
},
"$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
"text": "Choix des boutons à afficher pour les tiddlers en cours d'édition"
},
"$:/language/ControlPanel/Toolbars/Hint": {
"title": "$:/language/ControlPanel/Toolbars/Hint",
"text": "Choix des boutons à afficher dans les barres d'outils"
},
"$:/language/ControlPanel/Toolbars/PageControls/Caption": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
"text": "Barre d'outils de la page"
},
"$:/language/ControlPanel/Toolbars/PageControls/Hint": {
"title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
"text": "Choix des boutons à afficher sur la barre d'outils principale de la page"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
"text": "Barre d'outils de l'Éditeur"
},
"$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
"text": "Choix des boutons à afficher dans la barre d'outils de l'éditeur. À noter que la présence de certains boutons dépendra du type du tiddler édité"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
"text": "Barre d'outils du mode visualisation"
},
"$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
"title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
"text": "Choix des boutons à afficher pour les tiddlers en mode visualisation"
},
"$:/language/ControlPanel/Tools/Download/Full/Caption": {
"title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
"text": "Télécharger le wiki complet"
},
"$:/core/fr-FR/readme": {
"title": "$:/core/fr-FR/readme",
"text": "Ce plugin contient les principaux composants de TiddlyWiki, notamment :\n\n* Les modules du code JavaScript ;\n* Les icônes ;\n* Les //templates// nécessaires à l'élaboration de l'interface utilisateur de TiddlyWiki ;\n* Les traductions en anglais britannique (''en-GB'') des chaînes de caractères utilisées par le cœur de l'application et susceptibles d'être traduites dans d'autres langues.\n"
},
"$:/language/Date/DaySuffix/1": {
"title": "$:/language/Date/DaySuffix/1",
"text": "er"
},
"$:/language/Date/DaySuffix/2": {
"title": "$:/language/Date/DaySuffix/2",
"text": ""
},
"$:/language/Date/DaySuffix/3": {
"title": "$:/language/Date/DaySuffix/3",
"text": ""
},
"$:/language/Date/DaySuffix/4": {
"title": "$:/language/Date/DaySuffix/4",
"text": ""
},
"$:/language/Date/DaySuffix/5": {
"title": "$:/language/Date/DaySuffix/5",
"text": ""
},
"$:/language/Date/DaySuffix/6": {
"title": "$:/language/Date/DaySuffix/6",
"text": ""
},
"$:/language/Date/DaySuffix/7": {
"title": "$:/language/Date/DaySuffix/7",
"text": ""
},
"$:/language/Date/DaySuffix/8": {
"title": "$:/language/Date/DaySuffix/8",
"text": ""
},
"$:/language/Date/DaySuffix/9": {
"title": "$:/language/Date/DaySuffix/9",
"text": ""
},
"$:/language/Date/DaySuffix/10": {
"title": "$:/language/Date/DaySuffix/10",
"text": ""
},
"$:/language/Date/DaySuffix/11": {
"title": "$:/language/Date/DaySuffix/11",
"text": ""
},
"$:/language/Date/DaySuffix/12": {
"title": "$:/language/Date/DaySuffix/12",
"text": ""
},
"$:/language/Date/DaySuffix/13": {
"title": "$:/language/Date/DaySuffix/13",
"text": ""
},
"$:/language/Date/DaySuffix/14": {
"title": "$:/language/Date/DaySuffix/14",
"text": ""
},
"$:/language/Date/DaySuffix/15": {
"title": "$:/language/Date/DaySuffix/15",
"text": ""
},
"$:/language/Date/DaySuffix/16": {
"title": "$:/language/Date/DaySuffix/16",
"text": ""
},
"$:/language/Date/DaySuffix/17": {
"title": "$:/language/Date/DaySuffix/17",
"text": ""
},
"$:/language/Date/DaySuffix/18": {
"title": "$:/language/Date/DaySuffix/18",
"text": ""
},
"$:/language/Date/DaySuffix/19": {
"title": "$:/language/Date/DaySuffix/19",
"text": ""
},
"$:/language/Date/DaySuffix/20": {
"title": "$:/language/Date/DaySuffix/20",
"text": ""
},
"$:/language/Date/DaySuffix/21": {
"title": "$:/language/Date/DaySuffix/21",
"text": ""
},
"$:/language/Date/DaySuffix/22": {
"title": "$:/language/Date/DaySuffix/22",
"text": ""
},
"$:/language/Date/DaySuffix/23": {
"title": "$:/language/Date/DaySuffix/23",
"text": ""
},
"$:/language/Date/DaySuffix/24": {
"title": "$:/language/Date/DaySuffix/24",
"text": ""
},
"$:/language/Date/DaySuffix/25": {
"title": "$:/language/Date/DaySuffix/25",
"text": ""
},
"$:/language/Date/DaySuffix/26": {
"title": "$:/language/Date/DaySuffix/26",
"text": ""
},
"$:/language/Date/DaySuffix/27": {
"title": "$:/language/Date/DaySuffix/27",
"text": ""
},
"$:/language/Date/DaySuffix/28": {
"title": "$:/language/Date/DaySuffix/28",
"text": ""
},
"$:/language/Date/DaySuffix/29": {
"title": "$:/language/Date/DaySuffix/29",
"text": ""
},
"$:/language/Date/DaySuffix/30": {
"title": "$:/language/Date/DaySuffix/30",
"text": ""
},
"$:/language/Date/DaySuffix/31": {
"title": "$:/language/Date/DaySuffix/31",
"text": ""
},
"$:/language/Date/Long/Day/0": {
"title": "$:/language/Date/Long/Day/0",
"text": "Dimanche"
},
"$:/language/Date/Long/Day/1": {
"title": "$:/language/Date/Long/Day/1",
"text": "Lundi"
},
"$:/language/Date/Long/Day/2": {
"title": "$:/language/Date/Long/Day/2",
"text": "Mardi"
},
"$:/language/Date/Long/Day/3": {
"title": "$:/language/Date/Long/Day/3",
"text": "Mercredi"
},
"$:/language/Date/Long/Day/4": {
"title": "$:/language/Date/Long/Day/4",
"text": "Jeudi"
},
"$:/language/Date/Long/Day/5": {
"title": "$:/language/Date/Long/Day/5",
"text": "Vendredi"
},
"$:/language/Date/Long/Day/6": {
"title": "$:/language/Date/Long/Day/6",
"text": "Samedi"
},
"$:/language/Date/Long/Month/1": {
"title": "$:/language/Date/Long/Month/1",
"text": "janvier"
},
"$:/language/Date/Long/Month/2": {
"title": "$:/language/Date/Long/Month/2",
"text": "février"
},
"$:/language/Date/Long/Month/3": {
"title": "$:/language/Date/Long/Month/3",
"text": "mars"
},
"$:/language/Date/Long/Month/4": {
"title": "$:/language/Date/Long/Month/4",
"text": "avril"
},
"$:/language/Date/Long/Month/5": {
"title": "$:/language/Date/Long/Month/5",
"text": "mai"
},
"$:/language/Date/Long/Month/6": {
"title": "$:/language/Date/Long/Month/6",
"text": "juin"
},
"$:/language/Date/Long/Month/7": {
"title": "$:/language/Date/Long/Month/7",
"text": "juillet"
},
"$:/language/Date/Long/Month/8": {
"title": "$:/language/Date/Long/Month/8",
"text": "août"
},
"$:/language/Date/Long/Month/9": {
"title": "$:/language/Date/Long/Month/9",
"text": "septembre"
},
"$:/language/Date/Long/Month/10": {
"title": "$:/language/Date/Long/Month/10",
"text": "octobre"
},
"$:/language/Date/Long/Month/11": {
"title": "$:/language/Date/Long/Month/11",
"text": "novembre"
},
"$:/language/Date/Long/Month/12": {
"title": "$:/language/Date/Long/Month/12",
"text": "décembre"
},
"$:/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": "Di"
},
"$:/language/Date/Short/Day/1": {
"title": "$:/language/Date/Short/Day/1",
"text": "Lu"
},
"$:/language/Date/Short/Day/2": {
"title": "$:/language/Date/Short/Day/2",
"text": "Ma"
},
"$:/language/Date/Short/Day/3": {
"title": "$:/language/Date/Short/Day/3",
"text": "Me"
},
"$:/language/Date/Short/Day/4": {
"title": "$:/language/Date/Short/Day/4",
"text": "Je"
},
"$:/language/Date/Short/Day/5": {
"title": "$:/language/Date/Short/Day/5",
"text": "Ve"
},
"$:/language/Date/Short/Day/6": {
"title": "$:/language/Date/Short/Day/6",
"text": "Sa"
},
"$:/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": "Fév"
},
"$:/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": "Avr"
},
"$:/language/Date/Short/Month/5": {
"title": "$:/language/Date/Short/Month/5",
"text": "Mai"
},
"$:/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": "Aoû"
},
"$:/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": "Déc"
},
"$:/language/RelativeDate/Future/Days": {
"title": "$:/language/RelativeDate/Future/Days",
"text": "dans <<period>> jours"
},
"$:/language/RelativeDate/Future/Hours": {
"title": "$:/language/RelativeDate/Future/Hours",
"text": "dans <<period>> heures"
},
"$:/language/RelativeDate/Future/Minutes": {
"title": "$:/language/RelativeDate/Future/Minutes",
"text": "dans <<period>> minutes"
},
"$:/language/RelativeDate/Future/Months": {
"title": "$:/language/RelativeDate/Future/Months",
"text": "dans <<period>> mois"
},
"$:/language/RelativeDate/Future/Second": {
"title": "$:/language/RelativeDate/Future/Second",
"text": "dans 1 seconde"
},
"$:/language/RelativeDate/Future/Seconds": {
"title": "$:/language/RelativeDate/Future/Seconds",
"text": "dans <<period>> secondes"
},
"$:/language/RelativeDate/Future/Years": {
"title": "$:/language/RelativeDate/Future/Years",
"text": "dans <<period>> ans"
},
"$:/language/RelativeDate/Past/Days": {
"title": "$:/language/RelativeDate/Past/Days",
"text": "il y a <<period>> jours"
},
"$:/language/RelativeDate/Past/Hours": {
"title": "$:/language/RelativeDate/Past/Hours",
"text": "il y a <<period>> heures"
},
"$:/language/RelativeDate/Past/Minutes": {
"title": "$:/language/RelativeDate/Past/Minutes",
"text": "il y a <<period>> minutes"
},
"$:/language/RelativeDate/Past/Months": {
"title": "$:/language/RelativeDate/Past/Months",
"text": "il y a <<period>> mois"
},
"$:/language/RelativeDate/Past/Second": {
"title": "$:/language/RelativeDate/Past/Second",
"text": "il y a 1 seconde"
},
"$:/language/RelativeDate/Past/Seconds": {
"title": "$:/language/RelativeDate/Past/Seconds",
"text": "il y a <<period>> secondes"
},
"$:/language/RelativeDate/Past/Years": {
"title": "$:/language/RelativeDate/Past/Years",
"text": "il y a <<period>> ans"
},
"$:/language/Docs/ModuleTypes/allfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/allfilteroperator",
"text": "Un sous-opérateur pour l'opérateur de filtre ''all''."
},
"$:/language/Docs/ModuleTypes/animation": {
"title": "$:/language/Docs/ModuleTypes/animation",
"text": "Animations pouvant être utilisées par le RevealWidget."
},
"$:/language/Docs/ModuleTypes/authenticator": {
"title": "$:/language/Docs/ModuleTypes/authenticator",
"text": "Définit comment les requêtes sont authentifiées par le serveur HTTP intégré."
},
"$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
"title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
"text": "Une opération intégrée à la barre d'outils de l'éditeur de bitmap."
},
"$:/language/Docs/ModuleTypes/command": {
"title": "$:/language/Docs/ModuleTypes/command",
"text": "Commandes qui peuvent être exécutées en mode Node.js."
},
"$:/language/Docs/ModuleTypes/config": {
"title": "$:/language/Docs/ModuleTypes/config",
"text": "Données à inclure dans `$tw.config`."
},
"$:/language/Docs/ModuleTypes/filteroperator": {
"title": "$:/language/Docs/ModuleTypes/filteroperator",
"text": "Méthodes d'opérateurs pour les filtres."
},
"$:/language/Docs/ModuleTypes/global": {
"title": "$:/language/Docs/ModuleTypes/global",
"text": "Données globales à inclure dans `$tw`."
},
"$:/language/Docs/ModuleTypes/info": {
"title": "$:/language/Docs/ModuleTypes/info",
"text": "Publie des informations système via le pseudo-plugin [[$:/temp/info-plugin]]."
},
"$:/language/Docs/ModuleTypes/isfilteroperator": {
"title": "$:/language/Docs/ModuleTypes/isfilteroperator",
"text": "Opérandes pour l'opérateur de filtre ''is''."
},
"$:/language/Docs/ModuleTypes/library": {
"title": "$:/language/Docs/ModuleTypes/library",
"text": "Module générique pour les modules ~JavaScript de portée générale."
},
"$:/language/Docs/ModuleTypes/macro": {
"title": "$:/language/Docs/ModuleTypes/macro",
"text": "Définitions de macros ~JavaScript."
},
"$:/language/Docs/ModuleTypes/parser": {
"title": "$:/language/Docs/ModuleTypes/parser",
"text": "Parseurs pour divers types de contenu."
},
"$:/language/Docs/ModuleTypes/route": {
"title": "$:/language/Docs/ModuleTypes/route",
"text": "Définit comment chaque motif d'URL est géré par le serveur HTTP intégré."
},
"$:/language/Docs/ModuleTypes/saver": {
"title": "$:/language/Docs/ModuleTypes/saver",
"text": "Les tiddlers d'enregistrement contiennent les différentes méthodes pour enregistrer des fichiers à partir du navigateur."
},
"$:/language/Docs/ModuleTypes/startup": {
"title": "$:/language/Docs/ModuleTypes/startup",
"text": "Fonctions de démarrage."
},
"$:/language/Docs/ModuleTypes/storyview": {
"title": "$:/language/Docs/ModuleTypes/storyview",
"text": "Différents points de vue sur le déroulé, qui personnalisent l'animation et le comportement des widgets de liste."
},
"$:/language/Docs/ModuleTypes/texteditoroperation": {
"title": "$:/language/Docs/ModuleTypes/texteditoroperation",
"text": "Une opération intégrée à la barre d'outils de l'éditeur de texte."
},
"$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
"title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
"text": "Convertit différents types de contenu en tiddlers."
},
"$:/language/Docs/ModuleTypes/tiddlerfield": {
"title": "$:/language/Docs/ModuleTypes/tiddlerfield",
"text": "Définit le comportement d'un champ de tiddler."
},
"$:/language/Docs/ModuleTypes/tiddlermethod": {
"title": "$:/language/Docs/ModuleTypes/tiddlermethod",
"text": "Ajoute des méthodes au prototype `$tw.Tiddler`."
},
"$:/language/Docs/ModuleTypes/upgrader": {
"title": "$:/language/Docs/ModuleTypes/upgrader",
"text": "Applique une procédure de mise à jour aux tiddlers lors de l'opération de mise à jour/importation."
},
"$:/language/Docs/ModuleTypes/utils": {
"title": "$:/language/Docs/ModuleTypes/utils",
"text": "Ajoute des méthodes dans `$tw.utils`."
},
"$:/language/Docs/ModuleTypes/utils-node": {
"title": "$:/language/Docs/ModuleTypes/utils-node",
"text": "Ajoute des méthodes spécifiques à Node.js dans `$tw.utils`."
},
"$:/language/Docs/ModuleTypes/widget": {
"title": "$:/language/Docs/ModuleTypes/widget",
"text": "Les widgets encapsulent les méthodes de rendu et de rafraichissement du DOM."
},
"$:/language/Docs/ModuleTypes/wikimethod": {
"title": "$:/language/Docs/ModuleTypes/wikimethod",
"text": "Ajoute des méthodes à `$tw.Wiki`."
},
"$:/language/Docs/ModuleTypes/wikirule": {
"title": "$:/language/Docs/ModuleTypes/wikirule",
"text": "Règles d'analyse pour le parseur WikiText principal."
},
"$:/language/Docs/PaletteColours/alert-background": {
"title": "$:/language/Docs/PaletteColours/alert-background",
"text": "Fond pour les alertes"
},
"$:/language/Docs/PaletteColours/alert-border": {
"title": "$:/language/Docs/PaletteColours/alert-border",
"text": "Bordure pour les alertes"
},
"$:/language/Docs/PaletteColours/alert-highlight": {
"title": "$:/language/Docs/PaletteColours/alert-highlight",
"text": "Surlignage pour les alertes"
},
"$:/language/Docs/PaletteColours/alert-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
"text": "Fond atténué pour les alertes"
},
"$:/language/Docs/PaletteColours/background": {
"title": "$:/language/Docs/PaletteColours/background",
"text": "Couleur de fond générale"
},
"$:/language/Docs/PaletteColours/blockquote-bar": {
"title": "$:/language/Docs/PaletteColours/blockquote-bar",
"text": "Barre de citation"
},
"$:/language/Docs/PaletteColours/button-background": {
"title": "$:/language/Docs/PaletteColours/button-background",
"text": "Fond du bouton par défaut"
},
"$:/language/Docs/PaletteColours/button-border": {
"title": "$:/language/Docs/PaletteColours/button-border",
"text": "Bordure du bouton par défaut"
},
"$:/language/Docs/PaletteColours/button-foreground": {
"title": "$:/language/Docs/PaletteColours/button-foreground",
"text": "Premier plan du bouton par défaut"
},
"$:/language/Docs/PaletteColours/code-background": {
"title": "$:/language/Docs/PaletteColours/code-background",
"text": "Fond pour le code"
},
"$:/language/Docs/PaletteColours/code-border": {
"title": "$:/language/Docs/PaletteColours/code-border",
"text": "Bordure pour le code"
},
"$:/language/Docs/PaletteColours/code-foreground": {
"title": "$:/language/Docs/PaletteColours/code-foreground",
"text": "Premier plan pour le code"
},
"$:/language/Docs/PaletteColours/dirty-indicator": {
"title": "$:/language/Docs/PaletteColours/dirty-indicator",
"text": "Indicateur de modifications non sauvegardées"
},
"$:/language/Docs/PaletteColours/download-background": {
"title": "$:/language/Docs/PaletteColours/download-background",
"text": "Fond pour le bouton de téléchargement"
},
"$:/language/Docs/PaletteColours/download-foreground": {
"title": "$:/language/Docs/PaletteColours/download-foreground",
"text": "Premier plan pour le bouton de téléchargement"
},
"$:/language/Docs/PaletteColours/dragger-background": {
"title": "$:/language/Docs/PaletteColours/dragger-background",
"text": "Fond pour le glissé-déposé"
},
"$:/language/Docs/PaletteColours/dragger-foreground": {
"title": "$:/language/Docs/PaletteColours/dragger-foreground",
"text": "Premier plan pour le glissé-déposé"
},
"$:/language/Docs/PaletteColours/dropdown-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-background",
"text": "Fond des menus déroulants"
},
"$:/language/Docs/PaletteColours/dropdown-border": {
"title": "$:/language/Docs/PaletteColours/dropdown-border",
"text": "Bordure des menus déroulants"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
"text": "Fond pour les onglets à menu déroulant sélectionnés"
},
"$:/language/Docs/PaletteColours/dropdown-tab-background": {
"title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
"text": "Fond pour les onglets à menu déroulant"
},
"$:/language/Docs/PaletteColours/dropzone-background": {
"title": "$:/language/Docs/PaletteColours/dropzone-background",
"text": "Fond de la zone « déposé »"
},
"$:/language/Docs/PaletteColours/external-link-background-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-background-hover",
"text": "Fond lors du passage de la souris sur un lien externe"
},
"$:/language/Docs/PaletteColours/external-link-background-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-background-visited",
"text": "Fond pour un lien externe déjà visité"
},
"$:/language/Docs/PaletteColours/external-link-background": {
"title": "$:/language/Docs/PaletteColours/external-link-background",
"text": "Fond pour un lien externe"
},
"$:/language/Docs/PaletteColours/external-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
"text": "Premier plan lors du passage de la souris sur un lien externe"
},
"$:/language/Docs/PaletteColours/external-link-foreground-visited": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
"text": "Premier plan pour un lien externe déjà visité"
},
"$:/language/Docs/PaletteColours/external-link-foreground": {
"title": "$:/language/Docs/PaletteColours/external-link-foreground",
"text": "Premier plan pour un lien externe"
},
"$:/language/Docs/PaletteColours/foreground": {
"title": "$:/language/Docs/PaletteColours/foreground",
"text": "Premier plan"
},
"$:/language/Docs/PaletteColours/menubar-background": {
"title": "$:/language/Docs/PaletteColours/menubar-background",
"text": "Fond pour la barre de menu"
},
"$:/language/Docs/PaletteColours/menubar-foreground": {
"title": "$:/language/Docs/PaletteColours/menubar-foreground",
"text": "Premier plan pour la barre de menu"
},
"$:/language/Docs/PaletteColours/message-background": {
"title": "$:/language/Docs/PaletteColours/message-background",
"text": "Fond pour les messages"
},
"$:/language/Docs/PaletteColours/message-border": {
"title": "$:/language/Docs/PaletteColours/message-border",
"text": "Bordure pour les messages"
},
"$:/language/Docs/PaletteColours/message-foreground": {
"title": "$:/language/Docs/PaletteColours/message-foreground",
"text": "Premier plan pour les messages"
},
"$:/language/Docs/PaletteColours/modal-backdrop": {
"title": "$:/language/Docs/PaletteColours/modal-backdrop",
"text": "Arrière-plan pour les fenêtres modales"
},
"$:/language/Docs/PaletteColours/modal-background": {
"title": "$:/language/Docs/PaletteColours/modal-background",
"text": "Fond pour les fenêtres modales"
},
"$:/language/Docs/PaletteColours/modal-border": {
"title": "$:/language/Docs/PaletteColours/modal-border",
"text": "Bordure pour les fenêtres modales"
},
"$:/language/Docs/PaletteColours/modal-footer-background": {
"title": "$:/language/Docs/PaletteColours/modal-footer-background",
"text": "Fond pour les pieds de page des fenêtres modales"
},
"$:/language/Docs/PaletteColours/modal-footer-border": {
"title": "$:/language/Docs/PaletteColours/modal-footer-border",
"text": "Bordure pour les pieds de page des fenêtres modales"
},
"$:/language/Docs/PaletteColours/modal-header-border": {
"title": "$:/language/Docs/PaletteColours/modal-header-border",
"text": "Bordure pour les en-tête des fenêtres modales"
},
"$:/language/Docs/PaletteColours/muted-foreground": {
"title": "$:/language/Docs/PaletteColours/muted-foreground",
"text": "Premier plan atténué"
},
"$:/language/Docs/PaletteColours/notification-background": {
"title": "$:/language/Docs/PaletteColours/notification-background",
"text": "Fond pour les notifications"
},
"$:/language/Docs/PaletteColours/notification-border": {
"title": "$:/language/Docs/PaletteColours/notification-border",
"text": "Bordure pour les notifications"
},
"$:/language/Docs/PaletteColours/page-background": {
"title": "$:/language/Docs/PaletteColours/page-background",
"text": "Fond de page"
},
"$:/language/Docs/PaletteColours/pre-background": {
"title": "$:/language/Docs/PaletteColours/pre-background",
"text": "Fond pour le code préformaté"
},
"$:/language/Docs/PaletteColours/pre-border": {
"title": "$:/language/Docs/PaletteColours/pre-border",
"text": "Bordure pour le code préformaté"
},
"$:/language/Docs/PaletteColours/primary": {
"title": "$:/language/Docs/PaletteColours/primary",
"text": "Couleur principale"
},
"$:/language/Docs/PaletteColours/select-tag-background": {
"title": "$:/language/Docs/PaletteColours/select-tag-background",
"text": "Arrière-plan de l'élément `<select>`"
},
"$:/language/Docs/PaletteColours/select-tag-foreground": {
"title": "$:/language/Docs/PaletteColours/select-tag-foreground",
"text": "Texte de l'élément `<select>`"
},
"$:/language/Docs/PaletteColours/sidebar-button-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
"text": "Premier plan des boutons de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
"text": "Premier plan au passage de la souris sur les boutons de commande de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
"text": "Premier plan sur les boutons de commande de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
"text": "Ombre du premier plan de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-foreground",
"text": "Premier plan de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
"text": "Premier plan atténué au passage de la souris sur la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
"text": "Premier plan atténué de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
"text": "Fond pour les onglets sélectionnés de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-background": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
"text": "Fond pour les onglets de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
"text": "Bordure pour les onglets sélectionnés de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-border": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
"text": "Bordure pour les onglets de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-divider": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
"text": "Séparateur d'onglets pour la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
"text": "Premier plan pour les onglets sélectionnés de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
"text": "Premier plan pour les onglets de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
"text": "Premier plan au passage de la souris sur le lien d'un tiddler de la barre latérale"
},
"$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
"text": "Premier plan du lien d'un tiddler de la barre latérale"
},
"$:/language/Docs/PaletteColours/site-title-foreground": {
"title": "$:/language/Docs/PaletteColours/site-title-foreground",
"text": "Premier plan pour le titre du wiki (SiteTitle)"
},
"$:/language/Docs/PaletteColours/static-alert-foreground": {
"title": "$:/language/Docs/PaletteColours/static-alert-foreground",
"text": "Premier plan pour les alertes statiques"
},
"$:/language/Docs/PaletteColours/tab-background-selected": {
"title": "$:/language/Docs/PaletteColours/tab-background-selected",
"text": "Fond pour les onglets sélectionnés"
},
"$:/language/Docs/PaletteColours/tab-background": {
"title": "$:/language/Docs/PaletteColours/tab-background",
"text": "Fond pour les onglets"
},
"$:/language/Docs/PaletteColours/tab-border-selected": {
"title": "$:/language/Docs/PaletteColours/tab-border-selected",
"text": "Bordure pour les onglets sélectionnés"
},
"$:/language/Docs/PaletteColours/tab-border": {
"title": "$:/language/Docs/PaletteColours/tab-border",
"text": "Bordure pour les onglets"
},
"$:/language/Docs/PaletteColours/tab-divider": {
"title": "$:/language/Docs/PaletteColours/tab-divider",
"text": "Séparateur d'onglets"
},
"$:/language/Docs/PaletteColours/tab-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
"text": "Premier plan pour les onglets sélectionnés"
},
"$:/language/Docs/PaletteColours/tab-foreground": {
"title": "$:/language/Docs/PaletteColours/tab-foreground",
"text": "Premier plan pour les onglets"
},
"$:/language/Docs/PaletteColours/table-border": {
"title": "$:/language/Docs/PaletteColours/table-border",
"text": "Bordure des tableaux"
},
"$:/language/Docs/PaletteColours/table-footer-background": {
"title": "$:/language/Docs/PaletteColours/table-footer-background",
"text": "Fond pour les bas de tableau"
},
"$:/language/Docs/PaletteColours/table-header-background": {
"title": "$:/language/Docs/PaletteColours/table-header-background",
"text": "Fond pour les en-têtes de tableau"
},
"$:/language/Docs/PaletteColours/tag-background": {
"title": "$:/language/Docs/PaletteColours/tag-background",
"text": "Fond pour les tags"
},
"$:/language/Docs/PaletteColours/tag-foreground": {
"title": "$:/language/Docs/PaletteColours/tag-foreground",
"text": "Premier plan pour les tags"
},
"$:/language/Docs/PaletteColours/tiddler-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-background",
"text": "Fond pour les tiddlers"
},
"$:/language/Docs/PaletteColours/tiddler-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-border",
"text": "Bordure pour les tiddlers"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
"text": "Premier plan au passage de la souris sur les boutons de commande d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
"text": "Premier plan pour le bouton de commande sélectionné d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
"text": "Premier plan pour les boutons de commande d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-editor-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
"text": "Fond pour l'éditeur de tiddlers"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
"text": "Image de bordure pour l'éditeur de tiddlers"
},
"$:/language/Docs/PaletteColours/tiddler-editor-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
"text": "Bordure de l'éditeur de tiddlers"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
"text": "Fond de l'éditeur de tiddlers pour les champs pairs"
},
"$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
"title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
"text": "Fond de l'éditeur de tiddlers pour les champs impairs"
},
"$:/language/Docs/PaletteColours/tiddler-info-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-background",
"text": "Fond du panneau d'information d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-info-border": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-border",
"text": "Bordure du panneau d'information d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
"text": "Fond pour les onglets du panneau d'information d'un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-link-background": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-background",
"text": "Fond pour les liens vers un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-link-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
"text": "Premier plan pour les liens vers un tiddler"
},
"$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
"text": "Premier plan du sous-titre du wiki"
},
"$:/language/Docs/PaletteColours/tiddler-title-foreground": {
"title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
"text": "Premier plan du titre du wiki"
},
"$:/language/Docs/PaletteColours/toolbar-new-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-new-button",
"text": "Premier plan pour le bouton 'Nouveau tiddler' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-options-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-options-button",
"text": "Premier plan pour le bouton 'Options' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-save-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-save-button",
"text": "Premier plan pour le bouton 'Enregistrer' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-info-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-info-button",
"text": "Premier plan pour le bouton 'Info' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-edit-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
"text": "Premier plan pour le bouton 'Éditer' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-close-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-close-button",
"text": "Premier plan pour le bouton 'Fermer' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-delete-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
"text": "Premier plan pour le bouton 'Supprimer' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-cancel-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
"text": "Premier plan pour le bouton 'Annuler' de la barre latérale"
},
"$:/language/Docs/PaletteColours/toolbar-done-button": {
"title": "$:/language/Docs/PaletteColours/toolbar-done-button",
"text": "Premier plan pour le bouton 'Terminé' de la barre latérale"
},
"$:/language/Docs/PaletteColours/untagged-background": {
"title": "$:/language/Docs/PaletteColours/untagged-background",
"text": "Fond pour la pastille « sans-étiquette »"
},
"$:/language/Docs/PaletteColours/very-muted-foreground": {
"title": "$:/language/Docs/PaletteColours/very-muted-foreground",
"text": "Premier plan très atténué"
},
"$:/language/EditTemplate/Body/External/Hint": {
"title": "$:/language/EditTemplate/Body/External/Hint",
"text": "Ce tiddler affiche du contenu situé en dehors du fichier TiddlyWiki principal. Vous pouvez éditer les tags et les champs mais pas directement le contenu lui-même"
},
"$:/language/EditTemplate/Body/Placeholder": {
"title": "$:/language/EditTemplate/Body/Placeholder",
"text": "Entrez le texte ici"
},
"$:/language/EditTemplate/Body/Preview/Type/Output": {
"title": "$:/language/EditTemplate/Body/Preview/Type/Output",
"text": "sortie"
},
"$:/language/EditTemplate/Field/Remove/Caption": {
"title": "$:/language/EditTemplate/Field/Remove/Caption",
"text": "supprimer le champ"
},
"$:/language/EditTemplate/Field/Remove/Hint": {
"title": "$:/language/EditTemplate/Field/Remove/Hint",
"text": "Supprime le champ"
},
"$:/language/EditTemplate/Field/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Field/Dropdown/Caption",
"text": "liste des champs"
},
"$:/language/EditTemplate/Field/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Field/Dropdown/Hint",
"text": "Montre la liste des champs"
},
"$:/language/EditTemplate/Fields/Add/Button": {
"title": "$:/language/EditTemplate/Fields/Add/Button",
"text": "ajouter"
},
"$:/language/EditTemplate/Fields/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
"text": "Ajoute le nouveau champ au tiddler"
},
"$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
"text": "nom du champ"
},
"$:/language/EditTemplate/Fields/Add/Prompt": {
"title": "$:/language/EditTemplate/Fields/Add/Prompt",
"text": "Ajouter un nouveau champ :"
},
"$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
"title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
"text": "valeur du champ"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/System": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
"text": "Champs système"
},
"$:/language/EditTemplate/Fields/Add/Dropdown/User": {
"title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
"text": "Champs utilisateur"
},
"$:/language/EditTemplate/Shadow/OverriddenWarning": {
"title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
"text": "Ce tiddler est une version modifiée d'un tiddler « shadow ». Pour revenir à la version par défaut du plugin <<pluginLink>>, il vous suffit de supprimer ce tiddler."
},
"$:/language/EditTemplate/Shadow/Warning": {
"title": "$:/language/EditTemplate/Shadow/Warning",
"text": "Ceci est un tiddler « shadow ». Toute modification supplantera la version issue du plugin <<pluginLink>>"
},
"$:/language/EditTemplate/Tags/Add/Button": {
"title": "$:/language/EditTemplate/Tags/Add/Button",
"text": "ajouter"
},
"$:/language/EditTemplate/Tags/Add/Button/Hint": {
"title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
"text": "ajoute un tag"
},
"$:/language/EditTemplate/Tags/Add/Placeholder": {
"title": "$:/language/EditTemplate/Tags/Add/Placeholder",
"text": "nom du tag"
},
"$:/language/EditTemplate/Tags/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
"text": "liste des tags"
},
"$:/language/EditTemplate/Tags/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
"text": "Montre la liste des tags"
},
"$:/language/EditTemplate/Title/BadCharacterWarning": {
"title": "$:/language/EditTemplate/Title/BadCharacterWarning",
"text": "Attention : il est préférable d'éviter l'usage des caractères <<bad-chars>> dans les titres des tiddlers"
},
"$:/language/EditTemplate/Title/Exists/Prompt": {
"title": "$:/language/EditTemplate/Title/Exists/Prompt",
"text": "Le tiddler cible existe déjà"
},
"$:/language/EditTemplate/Title/Relink/Prompt": {
"title": "$:/language/EditTemplate/Title/Relink/Prompt",
"text": "Changer ''<$text text=<<fromTitle>>/>'' en ''<$text text=<<toTitle>>/>'' dans les //tags// et les champs //list// des autres tiddlers"
},
"$:/language/EditTemplate/Title/References/Prompt": {
"title": "$:/language/EditTemplate/Title/References/Prompt",
"text": "Les références suivantes à ce tiddler ne seront pas mises à jour automatiquement :"
},
"$:/language/EditTemplate/Type/Dropdown/Caption": {
"title": "$:/language/EditTemplate/Type/Dropdown/Caption",
"text": "liste des types de contenu"
},
"$:/language/EditTemplate/Type/Dropdown/Hint": {
"title": "$:/language/EditTemplate/Type/Dropdown/Hint",
"text": "Montre la liste des types de contenu"
},
"$:/language/EditTemplate/Type/Delete/Caption": {
"title": "$:/language/EditTemplate/Type/Delete/Caption",
"text": "supprimer le type de contenu"
},
"$:/language/EditTemplate/Type/Delete/Hint": {
"title": "$:/language/EditTemplate/Type/Delete/Hint",
"text": "Supprime le type de contenu"
},
"$:/language/EditTemplate/Type/Placeholder": {
"title": "$:/language/EditTemplate/Type/Placeholder",
"text": "type du contenu"
},
"$:/language/EditTemplate/Type/Prompt": {
"title": "$:/language/EditTemplate/Type/Prompt",
"text": "Type :"
},
"$:/language/Exporters/StaticRiver": {
"title": "$:/language/Exporters/StaticRiver",
"text": "HTML Statique"
},
"$:/language/Exporters/JsonFile": {
"title": "$:/language/Exporters/JsonFile",
"text": "Fichier JSON"
},
"$:/language/Exporters/CsvFile": {
"title": "$:/language/Exporters/CsvFile",
"text": "Fichier CSV"
},
"$:/language/Exporters/TidFile": {
"title": "$:/language/Exporters/TidFile",
"text": "Fichier \".tid\""
},
"$:/language/Docs/Fields/_canonical_uri": {
"title": "$:/language/Docs/Fields/_canonical_uri",
"text": "L'URI complet vers le contenu externe d'un tiddler image"
},
"$:/language/Docs/Fields/bag": {
"title": "$:/language/Docs/Fields/bag",
"text": "Nom du <q>bag</q> d'où provient le tiddler"
},
"$:/language/Docs/Fields/caption": {
"title": "$:/language/Docs/Fields/caption",
"text": "Texte à afficher sur un onglet ou un bouton"
},
"$:/language/Docs/Fields/color": {
"title": "$:/language/Docs/Fields/color",
"text": "Couleur CSS associée au tiddler"
},
"$:/language/Docs/Fields/component": {
"title": "$:/language/Docs/Fields/component",
"text": "Nom du composant responsable pour un [[tiddler d'alerte|AlertMechanism]]"
},
"$:/language/Docs/Fields/current-tiddler": {
"title": "$:/language/Docs/Fields/current-tiddler",
"text": "Sert à cacher le tiddler situé au début de l'[[historique|HistoryMechanism]]"
},
"$:/language/Docs/Fields/created": {
"title": "$:/language/Docs/Fields/created",
"text": "Date de création du tiddler"
},
"$:/language/Docs/Fields/creator": {
"title": "$:/language/Docs/Fields/creator",
"text": "Nom de l'utilisateur qui a créé le tiddler"
},
"$:/language/Docs/Fields/dependents": {
"title": "$:/language/Docs/Fields/dependents",
"text": "Quand le tiddler est un plugin, énumère les titres des plugins dépendants"
},
"$:/language/Docs/Fields/description": {
"title": "$:/language/Docs/Fields/description",
"text": "Texte de description d'un plugin, ou d'une boîte de dialogue"
},
"$:/language/Docs/Fields/draft.of": {
"title": "$:/language/Docs/Fields/draft.of",
"text": "Pour les tiddlers en cours d'édition, contient le titre du tiddler initial"
},
"$:/language/Docs/Fields/draft.title": {
"title": "$:/language/Docs/Fields/draft.title",
"text": "Pour les tiddlers en cours d'édition, contient le nouveau titre prévu pour le tiddler"
},
"$:/language/Docs/Fields/footer": {
"title": "$:/language/Docs/Fields/footer",
"text": "Texte de bas de page dans le cas d'un wizard"
},
"$:/language/Docs/Fields/icon": {
"title": "$:/language/Docs/Fields/icon",
"text": "Titre du tiddler contenant l'icone associée à un tiddler"
},
"$:/language/Docs/Fields/library": {
"title": "$:/language/Docs/Fields/library",
"text": "Avec une valeur à <q>yes</q>, indique qu'un tiddler doit être sauvegardé comme bibliothèque JavaScript"
},
"$:/language/Docs/Fields/list": {
"title": "$:/language/Docs/Fields/list",
"text": "Liste ordonnée de titres de tiddlers associée à un tiddler"
},
"$:/language/Docs/Fields/list-before": {
"title": "$:/language/Docs/Fields/list-before",
"text": "Si présent, contient le titre du tiddler avant lequel ce tiddler doit être ajouté dans la liste ordonnée des titres de tiddlers. Si ce champ est présent mais vide, le titre doit être ajouté au début de la liste."
},
"$:/language/Docs/Fields/list-after": {
"title": "$:/language/Docs/Fields/list-after",
"text": "Si présent, contient le titre du tiddler après lequel ce tiddler doit être ajouté dans la liste ordonnée des titres de tiddlers."
},
"$:/language/Docs/Fields/modified": {
"title": "$:/language/Docs/Fields/modified",
"text": "Date et heure à laquelle le tiddler a été modifié pour la dernière fois"
},
"$:/language/Docs/Fields/modifier": {
"title": "$:/language/Docs/Fields/modifier",
"text": "Titre du tiddler associé à l'utilisateur qui a modifié ce tiddler pour la dernière fois"
},
"$:/language/Docs/Fields/name": {
"title": "$:/language/Docs/Fields/name",
"text": "Dans le cas d'un tiddler provenant d'un plugin, le nom de la personne associée à ce tiddler"
},
"$:/language/Docs/Fields/plugin-priority": {
"title": "$:/language/Docs/Fields/plugin-priority",
"text": "Dans le cas d'un tiddler provenant d'un plugin, un nombre indiquant la priorité de ce tiddler"
},
"$:/language/Docs/Fields/plugin-type": {
"title": "$:/language/Docs/Fields/plugin-type",
"text": "Dans le cas d'un tiddler provenant d'un plugin, le type du plugin"
},
"$:/language/Docs/Fields/revision": {
"title": "$:/language/Docs/Fields/revision",
"text": "Numéro de révision du tiddler présent sur le serveur"
},
"$:/language/Docs/Fields/released": {
"title": "$:/language/Docs/Fields/released",
"text": "Date de version d'un TiddlyWiki"
},
"$:/language/Docs/Fields/source": {
"title": "$:/language/Docs/Fields/source",
"text": "URL source associée à ce tiddler"
},
"$:/language/Docs/Fields/subtitle": {
"title": "$:/language/Docs/Fields/subtitle",
"text": "Texte du sous-titre pour un wizard"
},
"$:/language/Docs/Fields/tags": {
"title": "$:/language/Docs/Fields/tags",
"text": "Liste des tags associés à un tiddler"
},
"$:/language/Docs/Fields/text": {
"title": "$:/language/Docs/Fields/text",
"text": "Texte du corps de ce tiddler"
},
"$:/language/Docs/Fields/throttle.refresh": {
"title": "$:/language/Docs/Fields/throttle.refresh",
"text": "Si présent, ralentit les rafraîchissements de ce tiddler"
},
"$:/language/Docs/Fields/title": {
"title": "$:/language/Docs/Fields/title",
"text": "Nom unique du tiddler"
},
"$:/language/Docs/Fields/toc-link": {
"title": "$:/language/Docs/Fields/toc-link",
"text": "Une valeur à ''no'' supprime le lien vers le tiddler dans l'arborescences des tables des matières"
},
"$:/language/Docs/Fields/type": {
"title": "$:/language/Docs/Fields/type",
"text": "Type de contenu du tiddler"
},
"$:/language/Docs/Fields/version": {
"title": "$:/language/Docs/Fields/version",
"text": "S'il s'agit d'un plugin, l'information de version"
},
"$:/language/Docs/Fields/_is_skinny": {
"title": "$:/language/Docs/Fields/_is_skinny",
"text": "Si présent, indique que le champ //text// du tiddler doit être chargé depuis le serveur"
},
"$:/language/Filters/AllTiddlers": {
"title": "$:/language/Filters/AllTiddlers",
"text": "Tous les tiddlers sauf les tiddlers système"
},
"$:/language/Filters/RecentSystemTiddlers": {
"title": "$:/language/Filters/RecentSystemTiddlers",
"text": "Les tiddlers modifiés récemment, y compris les tiddlers système"
},
"$:/language/Filters/RecentTiddlers": {
"title": "$:/language/Filters/RecentTiddlers",
"text": "Les tiddlers modifiés récemment"
},
"$:/language/Filters/AllTags": {
"title": "$:/language/Filters/AllTags",
"text": "Tous les tags sauf les tags système"
},
"$:/language/Filters/Missing": {
"title": "$:/language/Filters/Missing",
"text": "Les tiddlers manquants"
},
"$:/language/Filters/Drafts": {
"title": "$:/language/Filters/Drafts",
"text": "Les tiddlers en cours d'édition"
},
"$:/language/Filters/Orphans": {
"title": "$:/language/Filters/Orphans",
"text": "Les tiddlers orphelins"
},
"$:/language/Filters/SystemTiddlers": {
"title": "$:/language/Filters/SystemTiddlers",
"text": "Les tiddlers système"
},
"$:/language/Filters/ShadowTiddlers": {
"title": "$:/language/Filters/ShadowTiddlers",
"text": "Les tiddlers shadow"
},
"$:/language/Filters/StoryList": {
"title": "$:/language/Filters/StoryList",
"text": "Les tiddlers du déroulé, hormis $:/AdvancedSearch"
},
"$:/language/Filters/OverriddenShadowTiddlers": {
"title": "$:/language/Filters/OverriddenShadowTiddlers",
"text": "Les tiddlers shadow modifiés"
},
"$:/language/Filters/SystemTags": {
"title": "$:/language/Filters/SystemTags",
"text": "Les tags système"
},
"$:/language/Filters/TypedTiddlers": {
"title": "$:/language/Filters/TypedTiddlers",
"text": "Tiddlers ayant un contenu non wiki-text"
},
"GettingStarted": {
"title": "GettingStarted",
"text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nBienvenue sur ~TiddlyWiki et parmi la communauté ~TiddlyWiki.\n\nAvant de confier à TiddlyWiki des informations importantes, commencez par vérifier que vos modifications peuvent être sauvegardées\ncorrectement — reportez-vous aux [[instructions détaillées|https://tiddlywiki.com/languages/fr-FR/index.html#Saving]] sur https://tiddlywiki.com/.\n\n!! Personnalisez ce ~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-text tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\nRendez-vous dans le [[panneau de contrôle|$:/ControlPanel]] pour plus d'options.\n"
},
"$:/language/Help/build": {
"title": "$:/language/Help/build",
"description": "Lance automatiquement les commandes configurées",
"text": "Compile le wiki courant à partir des cibles spécifiées. Si aucune cible n'est spécifiée, toutes les cibles seront compilées.\n\n```\n--build <cible> [<cible> ...]\n```\n\nLes cibles de compilation sont définies dans le fichier `tiddlywiki.info` du [[dossier associé au wiki|TiddlyWikiFolders]].\n\n"
},
"$:/language/Help/clearpassword": {
"title": "$:/language/Help/clearpassword",
"description": "Efface un mot de passe pour les prochaines opérations de chiffrement",
"text": "Efface le mot de passe pour les prochaines opérations de chiffrement\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 [<dossierwiki>] [--<commande> [<arguments>...]...]\n```\n\nListe des commandes disponibles :\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\nPour obtenir de l'aide sur une commande précise :\n\n```\ntiddlywiki --help <commande>\n```\n"
},
"$:/language/Help/deletetiddlers": {
"title": "$:/language/Help/deletetiddlers",
"description": "Supprime un groupe de tiddlers",
"text": "<<.from-version \"5.1.20\">> Supprime un groupe de tiddlers identifiés par un filtre.\n\n```\n--deletetiddlers <filtre>\n```\n"
},
"$:/language/Help/editions": {
"title": "$:/language/Help/editions",
"description": "Liste les éditions TiddlyWiki disponibles",
"text": "Liste les noms et descriptions des éditions disponibles. La commande `--init` permet de créer un nouveau wiki à partir d'une édition particulière.\n\n```\n--editions\n```\n"
},
"$:/language/Help/fetch": {
"title": "$:/language/Help/fetch",
"description": "Télécharge des tiddlers depuis un wiki à partir de leurs URL",
"text": "Télécharge un ou plusieurs fichiers via HTTP/HTTPS, puis importe les tiddlers correspondant à un filtre, en transformant optionnellement les titres des tiddlers importés.\n\n```\n--fetch file <url> <filtre-import> <filtre-de-transformation>\n--fetch files <filtre-urls> <filtre-import> <filtre-de-transformation>\n```\n\nAvec la variante \"file\", un seul fichier est téléchargé et le premier paramètre est l'URL du fichier à lire.\n\nAvec la variante \"files\", plusieurs fichiers sont téléchargés et le premier paramètre est un filtre produisant une liste d'URLs pour les fichiers à lire. Par exemple, étant donné un ensemble de tiddlers tagués \"remote-server\" et disposant d'un champ \"url\", le filtre `[tag[remote-server]get[url]]` permet de récupérer toutes les URLs disponibles.\n\nLe paramètre `<filtre-import>` spécifie un filtre qui détermine quels tiddlers seront importés. Lorsqu'il n'est pas indiqué, il prend comme valeur par défaut `[all[tiddlers]]`.\n\nLe paramètre `<filtre de transformation>` spécifie un filtre optionnel qui transforme les titres des tiddlers importés. Par exemple, `[addprefix[$:/myimports/]]` permettrait d'ajouter le préfixe `$:/myimports/` à chaque titre.\n\nOn obtient des informations concernant la progression de l'importation en faisant précéder la commande `--fetch` de la commande `--verbose`.\n\nIl faut noter que TiddlyWiki ne téléchargera pas une version plus ancienne d'un plugin déjà chargé.\n\nL'exemple ci-dessous récupère tous les tiddlers non-système de https://tiddlywiki.com et les enregistre dans un fichier JSON :\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\n"
},
"$:/language/Help/help": {
"title": "$:/language/Help/help",
"description": "Affiche de l'aide sur les commandes TiddlyWiki",
"text": "Affiche un texte d'aide sur une commande particulière :\n\n```\n--help [<commande>]\n```\n\nSi aucun nom de commande n'est fourni, affiche la liste de toutes les commandes disponibles.\n"
},
"$:/language/Help/import": {
"title": "$:/language/Help/import",
"description": "Importe des tiddlers depuis un fichier",
"text": "Importe des tiddlers depuis des fichiers locaux TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` ou autres. Le désérialiseur doit être spécifié explicitement, à la différence de la commande `load` qui déduit le désérialiseur à utiliser à partir de l'extension du fichier.\n\n```\n--import <chemin-du-fichier> <désérialiseur> [<titre>] [<encodage>]\n```\n\nLes principaux désérialiseurs présents par défaut sont :\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\nS'il n'est pas spécifié, le titre du tiddler importé a pour valeur le nom du fichier.\n\nL'encodage par défaut est \"utf8\", mais peut valoir \"base64\" en cas d'importation des fichiers binaires.\n\nÀ noter que TiddlyWiki refusera d'importer pas une version plus ancienne d'un plugin déjà chargé.\n"
},
"$:/language/Help/init": {
"title": "$:/language/Help/init",
"description": "Initialise un nouveau dossier wiki",
"text": "Initialise un [[dossier wiki (WikiFolder)|WikiFolders]] vide en copiant l'une des éditions présentes dans le répertoire //editions//.\n\n```\n--init <édition> [<édition> ...]\n```\n\nPar exemple :\n\n```\ntiddlywiki ./MonDossierWiki --init empty\n```\n\nNote :\n\n* Le répertoire correspondant au dossier wiki est créé si nécessaire\n* L'édition par défaut est ''empty''\n* La commande //init// échoue si le dossier wiki n'est pas vide\n* La commande //init// supprime les éventuelles définitions `includeWikis` du fichier `tiddlywiki.info` de l'édition spécifiée\n* Lorsque plusieurs éditions sont spécifiées, chaque édition écrase les fichiers qu'elle a en commun avec les précédentes (par conséquent, le fichier `tiddlywiki.info` proviendra de la dernière édition spécifiée)\n* `--editions` renvoie une liste des éditions disponibles\n"
},
"$:/language/Help/listen": {
"title": "$:/language/Help/listen",
"description": "Fournit à TiddlyWiki une interface serveur HTTP",
"text": "Sert un wiki via HTTP.\n\nLa commande //listen// utilise des [[paramètres de commande nommés|NamedCommandParameters]] :\n\n```\n--listen [<nom>=<valeur>]...\n```\n\nTous les paramètres sont optionnels avec des valeurs par défaut sûres, et peuvent être spécifiés dans n'importe quel ordre. Les paramètres reconnus sont les suivants :\n\n* ''host'' - nom ou adresse de machine hôte à laquelle sera attaché le service (par défaut \"127.0.0.1\", autrement dit \"localhost\")\n* ''path-prefix'' - préfixe optionnel pour les noms de chemin\n* ''port'' - numéro de port sur lequel écouter ; une valeur non numérique est interprétée comme un nom de variable d'environnement dont sera extrait le numéro de port (par défaut à \"8080\")\n* ''credentials'' - chemin vers le fichier CSV d'autorisations (relativement au dossier du wiki)\n* ''anon-username'' - nom d'utilisateur qui servira à signer les modifications si l'utilisateur est anonyme\n* ''username'' - nom d'utilisateur optionnel pour l'authentification basique\n* ''password'' - mot de passe optionnel pour l'authentification basique\n* ''authenticated-user-header'' - nom d'en-tête optionnel à utiliser pour les authentifications de confiance\n* ''readers'' - liste de personnes de confiance autorisées à lire ce wiki, séparées par des virgules \n* ''writers'' - liste de personnes de confiance autorisées à modifier ce wiki, séparées par des virgules\n* ''csrf-disable'' - donner la valeur \"yes\" pour désactiver les vérifications CSRF (vaut \"no\" par défaut)\n* ''root-tiddler'' - le tiddler à servir à la racine (par défaut \"$:/core/save/all\")\n* ''root-render-type'' - le type de contenu avec lequel le tiddler racine doit être rendu (par défaut \"text/plain\")\n* ''root-serve-type'' - le type de contenu avec lequel le tiddler racine doit être servi (par défaut \"text/html\")\n* ''tls-cert'' - nom de chemin du fichier de certificat TLS (relativement au dossier du wiki)\n* ''tls-key'' - nom de chemin du fichier de clé TLS (relativement au dossier du wiki)\n* ''debug-level'' - niveau de débogage optionnel ; mettre à \"debug\" pour voir le détail des requêtes (par défaut à \"none\")\n* ''gzip'' - donner la valeur \"yes\" pour activer la compression gzip pour certaines interactions http (par défaut à \"no\")\n\nPour plus d'informations sur la manière de donner accès à votre instance de serveur à l'ensemble de votre réseau local, ainsi que sur les risques éventuels en matière de sécurité, voir le tiddler [[WebServer sur tiddlywiki.com|https://tiddlywiki.com/#WebServer]].\n\n"
},
"$:/language/Help/load": {
"title": "$:/language/Help/load",
"description": "Charge des tiddlers à partir d'un fichier",
"text": "Charge des tiddlers à partir de fichiers ~TiddlyWikiClassic 2.x.x\n(`.html`), `.tiddler`, `.tid`, `.json` ou d'autres types de\nfichiers. Le traitement appliqué aux fichiers entrants est déterminé par l'extension du fichier. Utilisez plutôt la commande `import` si vous devez spécifier explicitement le désérialiseur et l'encodage.\n\n\n```\n--load <chemindufichier> [noerror]\n--load <chemindurépertoire> [noerror]\n```\n\nPar défaut, la commande //load// provoque une erreur si aucun tiddler n'est trouvé. L'erreur peut être supprimée en spécifiant le paramètre optionnel \"noerror\".\n\nPour charger des tiddlers à partir d'un fichier ~TiddlyWiki chiffré, vous devrez d'abord spécifier le mot de passe à l'aide de la [[commande password|PasswordCommand]]. Par exemple :\n\n```\ntiddlywiki ./MonWiki --password pa55w0rd --load mon_wiki_secret.html\n```\n\nÀ noter : TiddlyWiki refusera de charger une version plus ancienne d'un plugin déjà chargé."
},
"$:/language/Help/makelibrary": {
"title": "$:/language/Help/makelibrary",
"description": "Construit le plugin bibliothèque requis par la procédure de mise à jour",
"text": "Construit le tiddler `$:/UpgradeLibrary` pour la procédure de mise à jour.\n\nLa bibliothèque de mise à jour est formatée comme un tiddler de plugin ordinaire avec le type `library`. Elle contient un exemplaire de chacun des packs de plugins, thèmes et languages disponibles dans le répertoire de TiddlyWiki5.\n\nCette commande est prévue pour un usage interne ; elle n'a d'intérêt que pour les utilisateurs qui construisent une variante de la procédure de mise à jour.\n\n```\n--makelibrary <titre>\n```\n\nL'argument //titre// a pour valeur par défaut `$:/UpgradeLibrary`.\n"
},
"$:/language/Help/notfound": {
"title": "$:/language/Help/notfound",
"text": "Il n'existe pas d'aide sur le sujet."
},
"$:/language/Help/output": {
"title": "$:/language/Help/output",
"description": "Change le répertoire de départ pour la sortie des prochaines commandes",
"text": "Change le répertoire de départ pour la sortie des prochaines commandes. Par défaut, le répertoire de sortie est le sous-répertoire `output` du répertoire de l'édition courante.\n\n```\n--output <nom de chemin>\n```\n\nSi le chemin spécifié est relatif, il est calculé relativement au répertoire de sortie courant. Par exemple, `--output .` indique le répertoire courant comme répertoire de sortie.\n"
},
"$:/language/Help/password": {
"title": "$:/language/Help/password",
"description": "Fournit un mot de passe pour les prochaines opérations de chiffrement",
"text": "Fournit un mot de passe pour les prochaines opérations de chiffrement.\n\n```\n--password <motdepasse>\n```\n\n''Note'' : Cette commande n'est pas appropriée pour servir un TiddlyWiki protégé par mot de passe. Pour cela, utilisez plutôt l'option //password// de la [[commande Server|ServerCommand]].\n"
},
"$:/language/Help/render": {
"title": "$:/language/Help/render",
"description": "Exécute le contenu de tiddlers individuels vers des fichiers",
"text": "Exécute le contenu des tiddlers individuels identifiés par un filtre et enregistre le résultat vers les fichiers spécifiés.\n\nOptionellement, on peut spécifier le titre d'un tiddler modèle (template). Dans ce cas, au lieu d'exécuter directement le contenu de chaque tiddler, le modèle est exécuté après avoir donné pour valeur à la variable \"currentTiddler\" le titre du tiddler dont le contenu est en cours d'exécution.\n\nOn peut spécifier le nom et la valeur d'une variable supplémentaire.\n\n```\n--render <filtre-sur-les-tiddlers> [<filtre-des-noms-de-fichier>] [<type-de-rendu>] [<modèle>] [<nom>] [<valeur>]\n```\n\n* ''filtre-sur-les-tiddlers'': Un filtre qui indentifie les tiddlers dont le contenu doit être exécuté\n* ''filtre-des-noms-de-fichier'': filtre optionnel pour transformer les titres de tiddlers en chemin de fichiers. À défaut, le filtre utilisé est `[is[tiddler]addsuffix[.html]]`, qui utilise le titre inchangé du tiddler comme nom de fichier\n* ''modèle'': Modèle optionnel via lequel chaque tiddler doit être rendu\n* ''type-de-rendu'': Type de rendu optionnel : la valeur `text/html` (par défaut) retourne le text HTML complet et `text/plain` se contente de retourner le contenu sous forme texte (autrement dit ignore les balises HTML et autres caractères non imprimables)\n* ''nom'': Nom de la variable optionnelle\n* ''valeur'': Valeur de la variable optionnelle\n\nPar défaut, le nom de fichier est résolu relativement au sous-répertoire `output` du réepertoire de l'édition. La commande `--output` peut servir à diriger les sorties vers un répertoire différent.\n\nNotes :\n\n* Les éventuels fichiers présents dans le répertoire de sortie ne sont pas supprimmés\n* Les répertoires absents dans le chemin de fichier sont créés automatiquement.\n* Lorsqu'un tiddler contient des espaces dans le titre, prendre garde à utiliser aussi bien les guillemets nécessaires au shell et les doubles crochets droits propres à TiddlyWiki : `--render \"[[Motovun Jack.jpg]]\"`\n* Le filtre des noms de fichier est évalué après avoir initialisé l'élément d'entrée avec le titre du tiddler en cours d'exécution, permettant ainsi d'utiliser le titre comme base de calcul pour le nom de fichier. Par exemple `[encodeuricomponent[]addprefix[static/]]` applique un encodage d'URI à chaque titre, puis ajoute le préfixe `static/`\n* La commande `--render` remplace de manière plus souple les deux commandes `--rendertiddler` et `--rendertiddlers`, qui sont du même coup obsolètes. \n\nExemples :\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- enregistre le contenu exécuté de tous les tiddlers non-système vers des fichiers du sous-répertoire \"tiddlers\" nommés par encodage URL des titres et ajout d'une extension html.\n\n"
},
"$:/language/Help/rendertiddler": {
"title": "$:/language/Help/rendertiddler",
"description": "Exécute le contenu d'un tiddler pour le type spécifié",
"text": "(À noter : la commande `--rendertiddler` est dépréciée. Il est préférable d'utiliser la nouvelle commande `--render`, plus souple)\n\nEnregistre vers le chemin indiqué le résultat de l'exécution d'un tiddler pour le type de contenu (ContentType) spécifié — par défaut `text/html`.\n\nUn tiddler modèle (template) peut être indiqué optionnellement. Dans ce cas, le tiddler modèle est exécuté après initialisation de la variable \"currentTiddler\" avec le tiddler dont le titre est donné en premier paramètre de la commande.\n\nLe nom et la valeur d'une variable supplémentaire peuvent être spécifiés optionnellement.\n\n```\n--rendertiddler <titre> <chemindufichier> [<type>] [<modèle>] [<nom>] [<valeur>]\n```\n\nPar défaut, le nom de fichier est résolu relativement au sous-répertoire `output` du répertoire de l'édition. La commande `--output` peut servir à rediriger la sortie vers un répertoire différent.\n\nLes répertoires présents dans le chemin du fichier et qui n'existent pas encore sont créés automatiquement.\n\nPar exemple, la commande ci-dessous enregistre tous les tiddlers correspondant au filtre `[tag[done]]` vers un fichier JSON de nom `output.json`, en faisant appel au template prédéfini `$:/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": "Exécute le contenu d'un ensemble de tiddlers sélectionnés par un filtre, pour le type de contenu (ContentType) spécifié",
"text": "(À noter : la commande `--rendertiddlers` est dépréciée. Il est préférable d'utiliser la nouvelle commande `--render`, plus souple)\n\nEnregistre vers le chemin indiqué et avec l'extension indiquée — par défaut `.html`, le résultat de l'exécution d'un ensemble de tiddlers (sélectionnés par un filtre). Le résultat de l'exécution est rendu selon le type de contenu (ContentType) spécifié — par défaut `text/html` :\n\n```\n--rendertiddlers '<filtre>' <modèle> <chemindurépertoire> [<type>] [<extension>] [\"noclean\"]\n```\n\nPar exemple :\n\n```\n--rendertiddlers '[!is[system]]' $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nPar défaut, le nom de fichier est résolu relativement au sous-répertoire `output` du répertoire de l'édition. La commande `--output` peut servir à rediriger la sortie vers un répertoire différent.\n\nTous les fichiers du répertoire cible sont supprimés, sauf si le drapeau ''noclean'' est spécifié. Le répertoire cible est créé récursivement s'il n'existe pas."
},
"$:/language/Help/save": {
"title": "$:/language/Help/save",
"description": "Enregistre des tiddlers individuels tels quels vers des fichiers",
"text": "Enregistre des tiddlers individuels identifiés par un filtre, soit tels quels, soit dans un format binaire dans les fichiers spécifiés.\n\n```\n--save <filtre-des-tiddlers> <filtre-des-noms-de-fichiers>\n```\n\n* ''filtre-des-tiddlers'': Un filtre identifiant les tiddlers à enregistrer\n* ''filtre-des-noms-de-fichiers'': Filtre optionnel pour transformer les titres de tiddlers en chemins de fichiers. À défaut, le filtre utilisé est `[is[tiddler]]`, qui utilise le titre inchangé du tiddler comme nom de fichier\n\nPar défaut, le nom de fichier est résolu relativement au sous-répertoire `output` du réepertoire de l'édition. La commande `--output` peut servir à diriger les sorties vers un répertoire différent.\n\nNotes :\n\n* Les éventuels fichiers présents dans le répertoire de sortie ne sont pas supprimmés\n* Les répertoires absents dans le chemin de fichier sont créés automatiquement.\n* Lorsqu'un tiddler contient des espaces dans le titre, prendre garde à utiliser aussi bien les guillemets nécessaires au shell et les doubles crochets droits propres à TiddlyWiki : `--render \"[[Motovun Jack.jpg]]\"`\n* Le filtre des noms de fichier est évalué après avoir initialisé l'élément d'entrée avec le titre du tiddler en cours d'exécution, permettant ainsi d'utiliser le titre comme base de calcul pour le nom de fichier. Par exemple `[encodeuricomponent[]addprefix[static/]]` applique un encodage d'URI à chaque titre, puis ajoute le préfixe `static/`\n* La commande `--save` remplace de manière plus souple les deux commandes `--savetiddler` et `--savetiddlers`, qui sont du même coup obsolètes. \n\nExemples :\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- enregistre tous les tiddlers images non-système comme des fichiers du sous-répertoire \"tiddlers\" nommés après encodage URL des titres.\n"
},
"$:/language/Help/savetiddler": {
"title": "$:/language/Help/savetiddler",
"description": "Enregistre un tiddler dans un fichier sous sa forme brute",
"text": "(À noter : la commande `--savetiddler` est dépréciée. Il est préférable d'utiliser la nouvelle commande `--save`, plus souple)\n\nEnregistre un tiddler texte ou binaire dans le fichier spécifié, sous sa forme brute. \n\n```\n--savetiddler <titre> <chemindufichier>\n```\n\nPar défaut, le nom de fichier est résolu relativement au sous-répertoire `output` du répertoire de l'édition. La commande `--output` peut servir à rediriger la sortie vers un répertoire différent.\n\nLes répertoires présents dans le chemin du fichier et qui n'existent pas encore sont créés automatiquement. "
},
"$:/language/Help/savetiddlers": {
"title": "$:/language/Help/savetiddlers",
"description": "Enregistre un groupe de tiddlers vers un répertoire",
"text": "(À noter : la commande `--savetiddlers` est dépréciée. Il est préférable d'utiliser la nouvelle commande `--save`, plus souple)\n\nEnregistre un groupe de tiddlers vers le chemin spécifié, sous leur forme brute, texte ou binaire. \n\n```\n--savetiddlers <filtre> <chemin-de-répertoire> [\"noclean\"]\n```\n\nPar défaut, le répertoire de sortie est calculé relativement au sous-répertoire `output` du répertoire de l'édition. La commande `--output` peut servir à diriger la sortie vers un répertoire différent.\n\nLes fichiers présents dans le répertoire de sortie sont supprimés avant que soient enregistrés les fichiers des tiddlers spécifiés par le filtre. Pour empêcher cette suppression, ajouter le drapeau ''noclean''.\n\nLes éventuels répertoires manquants dans le chemin spécifié sont créés automatiquement.\n"
},
"$:/language/Help/savewikifolder": {
"title": "$:/language/Help/savewikifolder",
"description": "Enregistre un wiki dans un nouveau dossier wiki",
"text": "<<.from-version \"5.1.20\">> Enregistre le wiki courant sous la forme d'un dossier wiki, comprenant les tiddlers, les plugins et les informations de configuration :\n\n```\n--savewikifolder <chemindudossierwiki> [<filtre>]\n```\n\n* Le dossier wiki cible doit être vide ou inexistant\n* Le filtre spécifie les tiddlers à inclure. Il est optionnel et vaut par défaut `[all[tiddlers]]`\n* Les plugins appartenant à la bibliothèque officielle de plugins sont remplacés par des références à ces plugins dans le fichier `tiddlywiki.info`\n* Les plugins sur mesure sont déballés dans leur propre dossier\n\nOn utilise typiquement cette commande avec la commande `--load` pour convertir un fichier TiddlyWiki HTML en un dossier wiki :\n\n```\ntiddlywiki --load ./monwiki.html --savewikifolder ./mondossierwiki\n```\n"
},
"$:/language/Help/server": {
"title": "$:/language/Help/server",
"description": "Fournit une interface serveur HTTP à TiddlyWiki (déprécié en faveur de la nouvelle commande listen)",
"text": "Ancienne commande pour servir un wiki sur HTTP.\n\n```\n--server <port> <tiddler-racine> <type-du-rendu> <type-du-service> <nom-d-utilisateur> <mot-de-passe> <machine> <préfixe-des-chemins> <niveau-débogage>\n```\n\nLes arguments sont :\n\n* ''port'' - numéro de port sur lequel servir le contenu ; une valeur non-numérique sera interprétée comme un nom de variable d'environnement du système dont la valeur est le numéro de port (défaut : \"8080\")\n* ''tiddler-racine'' - le titre du tiddler à afficher à la racine de l'URL (défaut : \"$:/core/save/all\") \n* ''type-du-rendu'' - le type avec lequel le contenu du tiddler racine doit être rendu (`text/plain` par défaut)\n* ''type-du-service'' - le type avec lequel le contenu du tiddler racine doit être servi (`text/html` par défaut)\n* ''nom-d-utilisateur'' - le nom d'utilisateur qui servira par défaut à signer les modifications\n* ''mot-de-passe'' - mot de passe optionnel permettant une authentification basique\n* ''machine'' - nom de machine optionnel d'où le contenu doit être servi (\"127.0.0.1\" par défaut, autrement dit \"localhost\")\n* ''préfixe-des-chemins'' - préfixe optionnel pour les chemins de fichiers\n* ''niveau-débogage'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n\nSi le mot de passe est spécifié en argument, le navigateur demandera à l'utilisateur d'entrer le nom d'utilisateur et le mot de passe. On notera que le mot de passe est transmis en clair, et que cette implémentation ne convient donc pas pour un usage général.\n\nPar exemple :\n\n```\n--server 8080 $:/core/save/all text/plain text/html MonNomUtilisateur m0tdepa55e\n```\n\nLe nom d'utilisateur et le mot de passe peuvent être spécifiés sous forme de chaînes vides si vous avez besoin d'indiquer le nom de machine ou le préfixe des chemins sans pour autant demander un mot de passe :\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nSi vous voulez faire tourner plusieurs serveurs TiddlyWiki en même temps sur la même machine, vous devrez leur assigner chacun un port différent. Il peut être utile d'utiliser une variable d'environnement pour passer le numéro de port au process Node.js. L'exemple suivant utilise une variable d'environnement appelée \"MY_PORT_NUMBER\" :\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MonNomUtilisateur m0tdepa55e\n```\n"
},
"$:/language/Help/setfield": {
"title": "$:/language/Help/setfield",
"description": "Prépare des tiddlers externes for use",
"text": "//Notez que cette commande est expérimentale et peut changer ou être remplacée avant d'être finalisée//\n\nInitialise le champ spécifié d'un groupe de tiddlers avec le résultat de la wikification d'un tiddler template, la variable `currentTiddler` prenant tour à tour la valeur de chaque tiddler.\n\n```\n--setfield <filtre> <nom-du-champ> <titre-du-template> <type-de-rendu>\n```\n\nLes paramètres sont les suivants :\n\n* ''filtre'' - filtre identifiant les tiddlers cibles\n* ''nom-du-champ'' - le champ à modifier (\"text\" par défaut)\n* ''titre-du-template'' - le tiddler à wikifier dans le champ spécifié. Si manquant ou blanc, le champ spécifié est supprimé\n* ''type-de-rendu'' - le type de texte à utiliser pour le rendu (\"text/plain\" par défaut ; \"text/html\" peut servir à inclure des éléments HTML)\n"
},
"$:/language/Help/unpackplugin": {
"title": "$:/language/Help/unpackplugin",
"description": "Déballe les tiddlers contenus dans un plugin",
"text": "Extrait les tiddlers utiles d'un plugin, en les créant sous forme de tiddlers ordinaires :\n\n```\n--unpackplugin <titre>\n```\n"
},
"$:/language/Help/verbose": {
"title": "$:/language/Help/verbose",
"description": "Bascule en mode verbeux",
"text": "Bascule les informations en mode verbeux, pratique pour le débogage.\n\n```\n--verbose\n```\n"
},
"$:/language/Help/version": {
"title": "$:/language/Help/version",
"description": "Affiche le numéro de version de TiddlyWiki",
"text": "Affiche le numéro de version de TiddlyWiki.\n\n```\n--version\n```\n"
},
"$:/language/Import/Imported/Hint": {
"title": "$:/language/Import/Imported/Hint",
"text": "Les tiddlers suivants ont été importés :"
},
"$:/language/Import/Listing/Cancel/Caption": {
"title": "$:/language/Import/Listing/Cancel/Caption",
"text": "Annuler"
},
"$:/language/Import/Listing/Hint": {
"title": "$:/language/Import/Listing/Hint",
"text": "Les tiddlers suivants sont prêts pour l'importation :"
},
"$:/language/Import/Listing/Import/Caption": {
"title": "$:/language/Import/Listing/Import/Caption",
"text": "Importer"
},
"$:/language/Import/Listing/Select/Caption": {
"title": "$:/language/Import/Listing/Select/Caption",
"text": "Sélectionner"
},
"$:/language/Import/Listing/Status/Caption": {
"title": "$:/language/Import/Listing/Status/Caption",
"text": "Statut"
},
"$:/language/Import/Listing/Title/Caption": {
"title": "$:/language/Import/Listing/Title/Caption",
"text": "Titre"
},
"$:/language/Import/Listing/Preview": {
"title": "$:/language/Import/Listing/Preview",
"text": "Prévisualisation :"
},
"$:/language/Import/Listing/Preview/Text": {
"title": "$:/language/Import/Listing/Preview/Text",
"text": "Texte"
},
"$:/language/Import/Listing/Preview/TextRaw": {
"title": "$:/language/Import/Listing/Preview/TextRaw",
"text": "Texte (brut)"
},
"$:/language/Import/Listing/Preview/Fields": {
"title": "$:/language/Import/Listing/Preview/Fields",
"text": "Champs"
},
"$:/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 (champs)"
},
"$:/language/Import/Listing/Rename/Tooltip": {
"title": "$:/language/Import/Listing/Rename/Tooltip",
"text": "Renommer le tiddler avant l'importation"
},
"$:/language/Import/Listing/Rename/Prompt": {
"title": "$:/language/Import/Listing/Rename/Prompt",
"text": "Renommer en :"
},
"$:/language/Import/Listing/Rename/ConfirmRename": {
"title": "$:/language/Import/Listing/Rename/ConfirmRename",
"text": "Renommer le tiddler"
},
"$:/language/Import/Listing/Rename/CancelRename": {
"title": "$:/language/Import/Listing/Rename/CancelRename",
"text": "Annuler"
},
"$:/language/Import/Listing/Rename/OverwriteWarning": {
"title": "$:/language/Import/Listing/Rename/OverwriteWarning",
"text": "Un tiddler avec le même titre existe déjà"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
"text": "Plugin bloqué : incompatible ou obsolète"
},
"$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
"title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
"text": "Plugin bloqué (la version <<incoming>> en cours d'importation est plus ancienne que la version <<existing>> actuelle)"
},
"$:/language/Import/Upgrader/Plugins/Upgraded": {
"title": "$:/language/Import/Upgrader/Plugins/Upgraded",
"text": "Plugin mis à jour depuis <<incoming>> vers <<upgraded>>"
},
"$:/language/Import/Upgrader/State/Suppressed": {
"title": "$:/language/Import/Upgrader/State/Suppressed",
"text": "Tiddler d'état temporaire bloqué"
},
"$:/language/Import/Upgrader/System/Suppressed": {
"title": "$:/language/Import/Upgrader/System/Suppressed",
"text": "Tiddler système bloqué"
},
"$:/language/Import/Upgrader/System/Warning": {
"title": "$:/language/Import/Upgrader/System/Warning",
"text": "Tiddler du module //core//"
},
"$:/language/Import/Upgrader/System/Alert": {
"title": "$:/language/Import/Upgrader/System/Alert",
"text": "Vous êtes sur le point d'importer un tiddler qui écrasera un tiddler du module //core//. Ceci est déconseillé car cela peut rendre le système instable"
},
"$:/language/Import/Upgrader/ThemeTweaks/Created": {
"title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
"text": "Thème modifié à partir de <$text text=<<from>>/>"
},
"$:/language/AboveStory/ClassicPlugin/Warning": {
"title": "$:/language/AboveStory/ClassicPlugin/Warning",
"text": "On dirait que vous essayez de charger un plugin conçu pour ~TiddlyWiki Classic. Merci de noter que [[ces plugins ne fonctionnent pas avec TiddlyWiki version 5.x.x|https://tiddlywiki.com/#TiddlyWikiClassic]]. Plugins ~TiddlyWiki Classic détectés :"
},
"$:/language/BinaryWarning/Prompt": {
"title": "$:/language/BinaryWarning/Prompt",
"text": "Ce tiddler contient des données binaires"
},
"$:/language/ClassicWarning/Hint": {
"title": "$:/language/ClassicWarning/Hint",
"text": "Ce tiddler est écrit au format TiddlyWiki Classic, qui n'est pas entièrement compatible avec TiddlyWiki version 5. Pour en savoir plus, rendez-vous à l'adresse https://tiddlywiki.com/static/Upgrading.html."
},
"$:/language/ClassicWarning/Upgrade/Caption": {
"title": "$:/language/ClassicWarning/Upgrade/Caption",
"text": "mettre à jour"
},
"$:/language/CloseAll/Button": {
"title": "$:/language/CloseAll/Button",
"text": "tout fermer"
},
"$:/language/ColourPicker/Recent": {
"title": "$:/language/ColourPicker/Recent",
"text": "Récent :"
},
"$:/language/ConfirmCancelTiddler": {
"title": "$:/language/ConfirmCancelTiddler",
"text": "Souhaitez-vous annuler les modifications apportées au tiddler « <$text text=<<title>>/> » ?"
},
"$:/language/ConfirmDeleteTiddler": {
"title": "$:/language/ConfirmDeleteTiddler",
"text": "Souhaitez-vous supprimer le tiddler « <$text text=<<title>>/> » ?"
},
"$:/language/ConfirmOverwriteTiddler": {
"title": "$:/language/ConfirmOverwriteTiddler",
"text": "Souhaitez-vous supplanter le tiddler « <$text text=<<title>>/> » ?"
},
"$:/language/ConfirmEditShadowTiddler": {
"title": "$:/language/ConfirmEditShadowTiddler",
"text": "Vous êtes sur le point d'éditer un ShadowTiddler. Toute modification supplantera la version par défaut du système, rendant les prochaines mises à jour non-triviales. Êtes-vous sûr(e) de vouloir éditer \"<$text text=<<title>>/>\"?"
},
"$:/language/Count": {
"title": "$:/language/Count",
"text": "total"
},
"$:/language/DefaultNewTiddlerTitle": {
"title": "$:/language/DefaultNewTiddlerTitle",
"text": "Nouveau tiddler"
},
"$:/language/Diffs/CountMessage": {
"title": "$:/language/Diffs/CountMessage",
"text": "<<diff-count>> différences"
},
"$:/language/DropMessage": {
"title": "$:/language/DropMessage",
"text": "Déposer ici (ou appuyer sur « escape » pour annuler)"
},
"$:/language/Encryption/Cancel": {
"title": "$:/language/Encryption/Cancel",
"text": "Annuler"
},
"$:/language/Encryption/ConfirmClearPassword": {
"title": "$:/language/Encryption/ConfirmClearPassword",
"text": "Souhaitez-vous supprimer ce mot de passe ? Si oui, ce wiki ne sera plus chiffré lors de la sauvegarde"
},
"$:/language/Encryption/PromptSetPassword": {
"title": "$:/language/Encryption/PromptSetPassword",
"text": "Choisir un nouveau mot de passe pour ce TiddlyWiki"
},
"$:/language/Encryption/Username": {
"title": "$:/language/Encryption/Username",
"text": "Nom d'utilisateur"
},
"$:/language/Encryption/Password": {
"title": "$:/language/Encryption/Password",
"text": "Mot de passe"
},
"$:/language/Encryption/RepeatPassword": {
"title": "$:/language/Encryption/RepeatPassword",
"text": "Répéter le mot de passe"
},
"$:/language/Encryption/PasswordNoMatch": {
"title": "$:/language/Encryption/PasswordNoMatch",
"text": "Les mots de passe ne correspondent pas"
},
"$:/language/Encryption/SetPassword": {
"title": "$:/language/Encryption/SetPassword",
"text": "Définir ce mot de passe"
},
"$:/language/Error/Caption": {
"title": "$:/language/Error/Caption",
"text": "Erreur"
},
"$:/language/Error/EditConflict": {
"title": "$:/language/Error/EditConflict",
"text": "Le fichier a changé sur le serveur"
},
"$:/language/Error/Filter": {
"title": "$:/language/Error/Filter",
"text": "Erreur de filtre"
},
"$:/language/Error/FilterSyntax": {
"title": "$:/language/Error/FilterSyntax",
"text": "Erreur de syntaxe dans l'expression du filtre"
},
"$:/language/Error/FilterRunPrefix": {
"title": "$:/language/Error/FilterRunPrefix",
"text": "Erreur de filtre : Préfixe de run inconnu pour le filtre"
},
"$:/language/Error/IsFilterOperator": {
"title": "$:/language/Error/IsFilterOperator",
"text": "Erreur de filtre : Opérande inconnu pour l'opérateur de filtre 'is'"
},
"$:/language/Error/FormatFilterOperator": {
"title": "$:/language/Error/FormatFilterOperator",
"text": "Erreur de filtre : Suffixe inconnu pour l'opérateur de filtre 'format'"
},
"$:/language/Error/LoadingPluginLibrary": {
"title": "$:/language/Error/LoadingPluginLibrary",
"text": "Erreur lors du chargement de la bibliothèque de plugins"
},
"$:/language/Error/NetworkErrorAlert": {
"title": "$:/language/Error/NetworkErrorAlert",
"text": "`<h2>''Erreur Réseau''</h2>Il semble que la connexion au serveur soit perdue. Cela peut indiquer un problème avec votre connexion réseau. Essayez de rétablir la connectivité du réseau avant de continuer.<br><br>''Toute modification non enregistrée sera automatiquement synchronisée lorsque la connectivité sera rétablie''.`"
},
"$:/language/Error/RecursiveTransclusion": {
"title": "$:/language/Error/RecursiveTransclusion",
"text": "Erreur dans le widget //transclude// : transclusion récursive"
},
"$:/language/Error/RetrievingSkinny": {
"title": "$:/language/Error/RetrievingSkinny",
"text": "Erreur pendant la récupération de la liste des tiddlers partiels"
},
"$:/language/Error/SavingToTWEdit": {
"title": "$:/language/Error/SavingToTWEdit",
"text": "Erreur lors de l'enregistrement vers TWEdit"
},
"$:/language/Error/WhileSaving": {
"title": "$:/language/Error/WhileSaving",
"text": "Erreur lors de l'enregistrement"
},
"$:/language/Error/XMLHttpRequest": {
"title": "$:/language/Error/XMLHttpRequest",
"text": "Code d'erreur XMLHttpRequest"
},
"$:/language/InternalJavaScriptError/Title": {
"title": "$:/language/InternalJavaScriptError/Title",
"text": "Erreur interne JavaScript"
},
"$:/language/InternalJavaScriptError/Hint": {
"title": "$:/language/InternalJavaScriptError/Hint",
"text": "C'est assez embarrassant. Il est recommandé de rafraîchir l'affichage de votre navigateur"
},
"$:/language/InvalidFieldName": {
"title": "$:/language/InvalidFieldName",
"text": "Caractères illicites dans le nom du champ « <$text text=<<fieldName>>/> ». Les champs ne peuvent contenir que des lettres minuscules non accentuées et les caractères souligné (`_`), tiret (`-`) et point (`.`)"
},
"$:/language/LazyLoadingWarning": {
"title": "$:/language/LazyLoadingWarning",
"text": "<p>Tentative de chargement d'un contenu externe ''<$text text={{!!_canonical_uri}}/>''</p><p>Si ce message ne disparaît pas, il est possible que vous deviez ajuster le type de contenu du tiddler en fonction du type de votre contenu externe, ou vous utilisez peut-être un navigateur qui n'accepte pas les contenus externes dans cette configuration. Voir https://tiddlywiki.com/#ExternalText</p>"
},
"$:/language/LoginToTiddlySpace": {
"title": "$:/language/LoginToTiddlySpace",
"text": "Identification sur TiddlySpace"
},
"$:/language/Manager/Controls/FilterByTag/None": {
"title": "$:/language/Manager/Controls/FilterByTag/None",
"text": "(aucun)"
},
"$:/language/Manager/Controls/FilterByTag/Prompt": {
"title": "$:/language/Manager/Controls/FilterByTag/Prompt",
"text": "Filtrer par tag :"
},
"$:/language/Manager/Controls/Order/Prompt": {
"title": "$:/language/Manager/Controls/Order/Prompt",
"text": "Ordre inverse"
},
"$:/language/Manager/Controls/Search/Placeholder": {
"title": "$:/language/Manager/Controls/Search/Placeholder",
"text": "Recherche"
},
"$:/language/Manager/Controls/Search/Prompt": {
"title": "$:/language/Manager/Controls/Search/Prompt",
"text": "Rechercher :"
},
"$:/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": "Afficher :"
},
"$:/language/Manager/Controls/Sort/Prompt": {
"title": "$:/language/Manager/Controls/Sort/Prompt",
"text": "Trier par :"
},
"$:/language/Manager/Item/Colour": {
"title": "$:/language/Manager/Item/Colour",
"text": "Couleur"
},
"$:/language/Manager/Item/Fields": {
"title": "$:/language/Manager/Item/Fields",
"text": "Champs"
},
"$:/language/Manager/Item/Icon/None": {
"title": "$:/language/Manager/Item/Icon/None",
"text": "(aucune)"
},
"$:/language/Manager/Item/Icon": {
"title": "$:/language/Manager/Item/Icon",
"text": "Icône"
},
"$:/language/Manager/Item/RawText": {
"title": "$:/language/Manager/Item/RawText",
"text": "Texte brut"
},
"$:/language/Manager/Item/Tags": {
"title": "$:/language/Manager/Item/Tags",
"text": "Tags"
},
"$:/language/Manager/Item/Tools": {
"title": "$:/language/Manager/Item/Tools",
"text": "Outils"
},
"$:/language/Manager/Item/WikifiedText": {
"title": "$:/language/Manager/Item/WikifiedText",
"text": "Texte wikifié"
},
"$:/language/MissingTiddler/Hint": {
"title": "$:/language/MissingTiddler/Hint",
"text": "Le tiddler « <$text text=<<currentTiddler>>/> » est manquant -- cliquez sur {{||$:/core/ui/Buttons/edit}} pour le créer"
},
"$:/language/No": {
"title": "$:/language/No",
"text": "Non"
},
"$:/language/OfficialPluginLibrary": {
"title": "$:/language/OfficialPluginLibrary",
"text": "Bibliothèque officielle des plugins ~TiddlyWiki"
},
"$:/language/OfficialPluginLibrary/Hint": {
"title": "$:/language/OfficialPluginLibrary/Hint",
"text": "La bibliothèque officielle des plugins ~TiddlyWiki sur tiddlywiki.com. Plugins, thèmes et packs pour les différentes langues sont maintenus par l'équipe responsable du noyau."
},
"$:/language/PluginReloadWarning": {
"title": "$:/language/PluginReloadWarning",
"text": "Merci d'enregistrer {{$:/core/ui/Buttons/save-wiki}} et de recharger {{$:/core/ui/Buttons/refresh}} pour que les changements apportés aux plugins ~JavaScript prennent effet"
},
"$:/language/RecentChanges/DateFormat": {
"title": "$:/language/RecentChanges/DateFormat",
"text": "DD MMM YYYY"
},
"$:/language/Shortcuts/Input/AdvancedSearch/Hint": {
"title": "$:/language/Shortcuts/Input/AdvancedSearch/Hint",
"text": "Ouvre le panneau Recherche Avancée depuis le champ de recherche de la barre latérale"
},
"$:/language/Shortcuts/Input/Accept/Hint": {
"title": "$:/language/Shortcuts/Input/Accept/Hint",
"text": "Accepte l'élément sélectionné"
},
"$:/language/Shortcuts/Input/AcceptVariant/Hint": {
"title": "$:/language/Shortcuts/Input/AcceptVariant/Hint",
"text": "Accepte l'élément sélectionné (variante)"
},
"$:/language/Shortcuts/Input/Cancel/Hint": {
"title": "$:/language/Shortcuts/Input/Cancel/Hint",
"text": "Efface le champ d'entrée"
},
"$:/language/Shortcuts/Input/Down/Hint": {
"title": "$:/language/Shortcuts/Input/Down/Hint",
"text": "Sélectionne l'élément suivant"
},
"$:/language/Shortcuts/Input/Tab-Left/Hint": {
"title": "$:/language/Shortcuts/Input/Tab-Left/Hint",
"text": "Sélectionne l'onglet précédent"
},
"$:/language/Shortcuts/Input/Tab-Right/Hint": {
"title": "$:/language/Shortcuts/Input/Tab-Right/Hint",
"text": "Sélectionne l'onglet suivant"
},
"$:/language/Shortcuts/Input/Up/Hint": {
"title": "$:/language/Shortcuts/Input/Up/Hint",
"text": "Sélectionne l'élément précédent"
},
"$:/language/Shortcuts/SidebarLayout/Hint": {
"title": "$:/language/Shortcuts/SidebarLayout/Hint",
"text": "Change la mise en forme de la barre latérale"
},
"$:/language/SystemTiddler/Tooltip": {
"title": "$:/language/SystemTiddler/Tooltip",
"text": "Ceci est un tiddler système"
},
"$:/language/SystemTiddlers/Include/Prompt": {
"title": "$:/language/SystemTiddlers/Include/Prompt",
"text": "Inclure les tiddlers système"
},
"$:/language/TagManager/Colour/Heading": {
"title": "$:/language/TagManager/Colour/Heading",
"text": "Couleur"
},
"$:/language/TagManager/Count/Heading": {
"title": "$:/language/TagManager/Count/Heading",
"text": "Total"
},
"$:/language/TagManager/Icon/Heading": {
"title": "$:/language/TagManager/Icon/Heading",
"text": "Icône"
},
"$:/language/TagManager/Icons/None": {
"title": "$:/language/TagManager/Icons/None",
"text": "Aucune"
},
"$:/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": "DD MMM YYYY à hhh0mm"
},
"$:/language/UnsavedChangesWarning": {
"title": "$:/language/UnsavedChangesWarning",
"text": "Vos dernières modifications n'ont pas été sauvegardées dans votre TiddlyWiki"
},
"$:/language/Yes": {
"title": "$:/language/Yes",
"text": "Oui"
},
"$:/language/Modals/Download": {
"title": "$:/language/Modals/Download",
"type": "text/vnd.tiddlywiki",
"subtitle": "Télécharger vos modifications",
"footer": "<$button message=\"tm-close-tiddler\">Fermer</$button>",
"help": "https://tiddlywiki.com/static/DownloadingChanges.html",
"text": "Votre navigateur ne supporte que l'enregistrement manuel.\n\nPour enregistrer les modifications de votre wiki, faites un clic droit sur le lien de téléchargement ci-dessous et choisissez \"Enregistrer...\" ou \"Télécharger...\", puis choisissez le répertoire et le nom de fichier.\n\n//Il est possible d'accélérer un peu les choses en cliquant sur le lien tout en appuyant sur la touche contrôle (sous Windows) ou la touche option/alt (sous MacOS X). On ne vous demandera pas un nom de fichier ou de répertoire, mais votre navigateur proposera probablement un nom difficile à identifier — il vous faudra sans doute le renommer pour lui ajouter une extension .html avant qu'il soit effectivement utilisable.//\n\nSur les smartphones qui n'autorisent pas le téléchargement de fichiers, vous pouvez ajouter le lien à vos favoris/signets, puis synchroniser vos signets vers un ordinateur de bureau, d'où le wiki pourra être enregistré normalement.\n"
},
"$:/language/Modals/SaveInstructions": {
"title": "$:/language/Modals/SaveInstructions",
"type": "text/vnd.tiddlywiki",
"subtitle": "Enregistrez votre travail",
"footer": "<$button message=\"tm-close-tiddler\">Fermer</$button>",
"help": "https://tiddlywiki.com/static/SavingChanges.html",
"text": "Les modifications effectuées dans ce wiki doivent être sauvegardées sous forme de fichier ~TiddlyWiki HTML.\n\n!!! Navigateurs de bureau\n\n# Sélectionnez ''Enregistrer sous'' depuis le menu ''Fichier''\n# Choisissez un nom de fichier et un dossier\n#* Certains navigateurs demandent aussi de spécifier explicitement le format d'enregistrement, à savoir ''Page Web, HTML uniquement'' ou quelque chose d'approchant\n# Fermez cet onglet\n\n!!! Navigateurs sur smartphone\n\n# Créez un favori/signet pour cette page\n#* Si vous utilisez iCloud ou Google Sync, le signet sera automatiquement synchronisé avec le navigateur de votre ordinateur de bureau, d'où vous pourrez l'ouvrir et enregistrer le fichier comme indiqué ci-dessus\n# Fermez cet onglet\n\n//Si vous ouvrez à nouveau le signet dans Safari pour mobile, vous verrez ce message une nouvelle fois. Si vous voulez continuer et utiliser le fichier, cliquez simplement sur le bouton ''Fermer'' ci-dessous//\n"
},
"$:/config/NewJournal/Title": {
"title": "$:/config/NewJournal/Title",
"text": "DD MMM YYYY"
},
"$:/config/NewJournal/Tags": {
"title": "$:/config/NewJournal/Tags",
"text": "Journal\n"
},
"$:/language/Notifications/Save/Done": {
"title": "$:/language/Notifications/Save/Done",
"text": "Wiki enregistré"
},
"$:/language/Notifications/Save/Starting": {
"title": "$:/language/Notifications/Save/Starting",
"text": "Enregistrement du wiki en cours"
},
"$:/language/Notifications/CopiedToClipboard/Succeeded": {
"title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
"text": "Copié dans le presse-papier !"
},
"$:/language/Notifications/CopiedToClipboard/Failed": {
"title": "$:/language/Notifications/CopiedToClipboard/Failed",
"text": "La copie dans le presse-papier a échoué !"
},
"$:/language/Search/DefaultResults/Caption": {
"title": "$:/language/Search/DefaultResults/Caption",
"text": "Liste"
},
"$:/language/Search/Filter/Caption": {
"title": "$:/language/Search/Filter/Caption",
"text": "Filtrer"
},
"$:/language/Search/Filter/Hint": {
"title": "$:/language/Search/Filter/Hint",
"text": "Recherche via une combinaison de [[filtres|https://tiddlywiki.com/static/Filters.html]]"
},
"$:/language/Search/Filter/Matches": {
"title": "$:/language/Search/Filter/Matches",
"text": "//<small><<resultCount>> correspondances</small>//"
},
"$:/language/Search/Matches": {
"title": "$:/language/Search/Matches",
"text": "//<small><<resultCount>> correspondances</small>//"
},
"$:/language/Search/Matches/All": {
"title": "$:/language/Search/Matches/All",
"text": "Toutes les correspondances :"
},
"$:/language/Search/Matches/Title": {
"title": "$:/language/Search/Matches/Title",
"text": "Correspondances sur les titres :"
},
"$:/language/Search/Search": {
"title": "$:/language/Search/Search",
"text": "Recherche"
},
"$:/language/Search/Search/TooShort": {
"title": "$:/language/Search/Search/TooShort",
"text": "Texte de recherche trop court"
},
"$:/language/Search/Shadows/Caption": {
"title": "$:/language/Search/Shadows/Caption",
"text": "Shadows"
},
"$:/language/Search/Shadows/Hint": {
"title": "$:/language/Search/Shadows/Hint",
"text": "Recherche parmi les tiddlers //shadow//"
},
"$:/language/Search/Shadows/Matches": {
"title": "$:/language/Search/Shadows/Matches",
"text": "//<small><<resultCount>> correspondances</small>//"
},
"$:/language/Search/Standard/Caption": {
"title": "$:/language/Search/Standard/Caption",
"text": "Standard"
},
"$:/language/Search/Standard/Hint": {
"title": "$:/language/Search/Standard/Hint",
"text": "Recherche parmi les tiddlers standard"
},
"$:/language/Search/Standard/Matches": {
"title": "$:/language/Search/Standard/Matches",
"text": "//<small><<resultCount>> correspondances</small>//"
},
"$:/language/Search/System/Caption": {
"title": "$:/language/Search/System/Caption",
"text": "Système"
},
"$:/language/Search/System/Hint": {
"title": "$:/language/Search/System/Hint",
"text": "Recherche parmi les tiddlers //système//"
},
"$:/language/Search/System/Matches": {
"title": "$:/language/Search/System/Matches",
"text": "//<small><<resultCount>> correspondances</small>//"
},
"$:/language/SideBar/All/Caption": {
"title": "$:/language/SideBar/All/Caption",
"text": "Tout"
},
"$:/language/SideBar/Contents/Caption": {
"title": "$:/language/SideBar/Contents/Caption",
"text": "Sommaire"
},
"$:/language/SideBar/Drafts/Caption": {
"title": "$:/language/SideBar/Drafts/Caption",
"text": "Brouillons"
},
"$:/language/SideBar/Explorer/Caption": {
"title": "$:/language/SideBar/Explorer/Caption",
"text": "Explorateur"
},
"$:/language/SideBar/Missing/Caption": {
"title": "$:/language/SideBar/Missing/Caption",
"text": "Manquants"
},
"$:/language/SideBar/More/Caption": {
"title": "$:/language/SideBar/More/Caption",
"text": "Plus"
},
"$:/language/SideBar/Open/Caption": {
"title": "$:/language/SideBar/Open/Caption",
"text": "Ouverts"
},
"$:/language/SideBar/Orphans/Caption": {
"title": "$:/language/SideBar/Orphans/Caption",
"text": "Orphelins"
},
"$:/language/SideBar/Recent/Caption": {
"title": "$:/language/SideBar/Recent/Caption",
"text": "Récents"
},
"$:/language/SideBar/Shadows/Caption": {
"title": "$:/language/SideBar/Shadows/Caption",
"text": "Shadows"
},
"$:/language/SideBar/System/Caption": {
"title": "$:/language/SideBar/System/Caption",
"text": "Système"
},
"$:/language/SideBar/Tags/Caption": {
"title": "$:/language/SideBar/Tags/Caption",
"text": "Tags"
},
"$:/language/SideBar/Tags/Untagged/Caption": {
"title": "$:/language/SideBar/Tags/Untagged/Caption",
"text": "sans tag"
},
"$:/language/SideBar/Tools/Caption": {
"title": "$:/language/SideBar/Tools/Caption",
"text": "Outils"
},
"$:/language/SideBar/Types/Caption": {
"title": "$:/language/SideBar/Types/Caption",
"text": "Types"
},
"$:/SiteSubtitle": {
"title": "$:/SiteSubtitle",
"text": "un carnet de notes web personnel et non linéaire"
},
"$:/SiteTitle": {
"title": "$:/SiteTitle",
"text": "Mon ~TiddlyWiki"
},
"$:/language/Snippets/ListByTag": {
"title": "$:/language/Snippets/ListByTag",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Liste de tiddlers par tag",
"text": "<<list-links \"[tag[task]sort[title]]\">>\n"
},
"$:/language/Snippets/MacroDefinition": {
"title": "$:/language/Snippets/MacroDefinition",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Définition de macro",
"text": "\\define Nomdemacro(param1:\"valeur par défaut\",param2)\nTexte de la macro\n\\end\n"
},
"$:/language/Snippets/Table4x3": {
"title": "$:/language/Snippets/Table4x3",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Tableau avec 4 colonnes par trois lignes",
"text": "|! |!Alpha |!Beta |!Gamma |!Delta |\n|!Un | | | | |\n|!Deux | | | | |\n|!Trois | | | | |\n"
},
"$:/language/Snippets/TableOfContents": {
"title": "$:/language/Snippets/TableOfContents",
"tags": "$:/tags/TextEditor/Snippet",
"caption": "Table des matières",
"text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
},
"$:/language/ThemeTweaks/ThemeTweaks": {
"title": "$:/language/ThemeTweaks/ThemeTweaks",
"text": "Réglages du thème"
},
"$:/language/ThemeTweaks/ThemeTweaks/Hint": {
"title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
"text": "Vous pouvez ajuster certains aspects du thème ''Vanilla''."
},
"$:/language/ThemeTweaks/Options": {
"title": "$:/language/ThemeTweaks/Options",
"text": "Options"
},
"$:/language/ThemeTweaks/Options/SidebarLayout": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout",
"text": "Agencement de la barre latérale"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
"text": "Déroulé fixe, barre latérale extensible"
},
"$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
"title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
"text": "Déroulé extensible, barre latérale fixe"
},
"$:/language/ThemeTweaks/Options/StickyTitles": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles",
"text": "Titres accrochés"
},
"$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
"title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
"text": "Lorsqu'on fait défiler le déroulé, les titres des tiddlers s'accrochent en haut de la fenêtre du navigateur tant que le contenu de leur tiddler est visible. Attention : ne fonctionne pas du tout avec Chrome, et peut causer quelques problèmes de mise en page dans Firefox"
},
"$:/language/ThemeTweaks/Options/CodeWrapping": {
"title": "$:/language/ThemeTweaks/Options/CodeWrapping",
"text": "Enroule les lignes trop longues à l'intérieur des blocs de code"
},
"$:/language/ThemeTweaks/Settings": {
"title": "$:/language/ThemeTweaks/Settings",
"text": "Réglages"
},
"$:/language/ThemeTweaks/Settings/FontFamily": {
"title": "$:/language/ThemeTweaks/Settings/FontFamily",
"text": "Famille de polices"
},
"$:/language/ThemeTweaks/Settings/CodeFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
"text": "Famille de polices pour le code"
},
"$:/language/ThemeTweaks/Settings/EditorFontFamily": {
"title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
"text": "Famille de polices pour l'éditeur"
},
"$:/language/ThemeTweaks/Settings/BackgroundImage": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
"text": "Image de fond de page"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
"text": "Arrimage de l'image de fond de page"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
"text": "Défile avec les tiddlers"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
"text": "Arrimée à la fenêtre"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
"text": "Taille de l'image de fond de page"
},
"$:/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": "Élargie"
},
"$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
"title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
"text": "Contenue"
},
"$:/language/ThemeTweaks/Metrics": {
"title": "$:/language/ThemeTweaks/Metrics",
"text": "Tailles"
},
"$:/language/ThemeTweaks/Metrics/FontSize": {
"title": "$:/language/ThemeTweaks/Metrics/FontSize",
"text": "Taille police"
},
"$:/language/ThemeTweaks/Metrics/LineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/LineHeight",
"text": "Hauteur ligne"
},
"$:/language/ThemeTweaks/Metrics/BodyFontSize": {
"title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
"text": "Taille de la police dans le corps des tiddlers"
},
"$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
"title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
"text": "Hauteur de ligne dans le corps des tiddlers"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
"text": "Gauche du déroulé"
},
"$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
"text": "marge gauche entre le déroulé principal<br>(zone des tiddlers) et le bord gauche de la page"
},
"$:/language/ThemeTweaks/Metrics/StoryTop": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop",
"text": "Haut du déroulé"
},
"$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
"text": "marge supérieure entre le déroulé pincipal<br>et le bord supérieur de la page"
},
"$:/language/ThemeTweaks/Metrics/StoryRight": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight",
"text": "Droite du déroulé"
},
"$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
"text": "marge de gauche entre la barre latérale<br>et le bord gauche de la page"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
"text": "Largeur du déroulé"
},
"$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
"text": "largeur hors tout du déroulé"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
"text": "Largeur des tiddlers"
},
"$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
"text": "largeur des tiddlers dans le déroulé"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
"text": "Décroché de la barre latérale"
},
"$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
"text": "largeur minimum de la page à partir de laquelle déroulé principal et barre latérale apparaissent côte à côte"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
"text": "Largeur de la barre latérale"
},
"$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
"title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
"text": "largeur de la barre latérale dans l'agencement //déroulé extensible—barre latérale fixe//"
},
"$:/language/TiddlerInfo/Advanced/Caption": {
"title": "$:/language/TiddlerInfo/Advanced/Caption",
"text": "Avancé"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
"text": "aucune information"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
"text": "Détails sur le plugin"
},
"$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
"text": "Ce plugin contient les tiddlers <q>shadow</q> suivants :"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
"text": "Statut <q>shadow</q>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
"text": "Le tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> n'est pas un tiddler <q>shadow</q>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
"text": "Le tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> est un tiddler <q>shadow</q>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
"text": "Il est défini dans le plugin <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
},
"$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
"title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
"text": "Il est modifié par un tiddler normal"
},
"$:/language/TiddlerInfo/Fields/Caption": {
"title": "$:/language/TiddlerInfo/Fields/Caption",
"text": "Champs"
},
"$:/language/TiddlerInfo/List/Caption": {
"title": "$:/language/TiddlerInfo/List/Caption",
"text": "Liste"
},
"$:/language/TiddlerInfo/List/Empty": {
"title": "$:/language/TiddlerInfo/List/Empty",
"text": "Ce tiddler ne contient pas de champ //list//"
},
"$:/language/TiddlerInfo/Listed/Caption": {
"title": "$:/language/TiddlerInfo/Listed/Caption",
"text": "Listé"
},
"$:/language/TiddlerInfo/Listed/Empty": {
"title": "$:/language/TiddlerInfo/Listed/Empty",
"text": "Ce tiddler ne figure dans le champ //list// d'aucun autre tiddler"
},
"$:/language/TiddlerInfo/References/Caption": {
"title": "$:/language/TiddlerInfo/References/Caption",
"text": "Références"
},
"$:/language/TiddlerInfo/References/Empty": {
"title": "$:/language/TiddlerInfo/References/Empty",
"text": "Aucun tiddler ne comporte de lien vers celui-ci"
},
"$:/language/TiddlerInfo/Tagging/Caption": {
"title": "$:/language/TiddlerInfo/Tagging/Caption",
"text": "Étiquetage"
},
"$:/language/TiddlerInfo/Tagging/Empty": {
"title": "$:/language/TiddlerInfo/Tagging/Empty",
"text": "Le titre de ce tiddler ne sert de tag à aucun tiddler"
},
"$:/language/TiddlerInfo/Tools/Caption": {
"title": "$:/language/TiddlerInfo/Tools/Caption",
"text": "Outils"
},
"$:/language/Docs/Types/application/javascript": {
"title": "$:/language/Docs/Types/application/javascript",
"description": "Code JavaScript",
"name": "application/javascript",
"group": "Développeur",
"group-sort": "2"
},
"$:/language/Docs/Types/application/json": {
"title": "$:/language/Docs/Types/application/json",
"description": "Données au format JSON",
"name": "application/json",
"group": "Développeur",
"group-sort": "2"
},
"$:/language/Docs/Types/application/x-tiddler-dictionary": {
"title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
"description": "Dictionnaire de données",
"name": "application/x-tiddler-dictionary",
"group": "Développeur",
"group-sort": "2"
},
"$:/language/Docs/Types/image/gif": {
"title": "$:/language/Docs/Types/image/gif",
"description": "Image au format GIF",
"name": "image/gif",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/jpeg": {
"title": "$:/language/Docs/Types/image/jpeg",
"description": "Image au format JPEG",
"name": "image/jpeg",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/png": {
"title": "$:/language/Docs/Types/image/png",
"description": "Image au format PNG",
"name": "image/png",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/svg+xml": {
"title": "$:/language/Docs/Types/image/svg+xml",
"description": "Image au format SVG",
"name": "image/svg+xml",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/image/x-icon": {
"title": "$:/language/Docs/Types/image/x-icon",
"description": "Fichier icone au format ICO",
"name": "image/x-icon",
"group": "Image",
"group-sort": "1"
},
"$:/language/Docs/Types/text/css": {
"title": "$:/language/Docs/Types/text/css",
"description": "Feuille de style CSS statique",
"name": "text/css",
"group": "Développeur",
"group-sort": "2"
},
"$:/language/Docs/Types/text/html": {
"title": "$:/language/Docs/Types/text/html",
"description": "Marquage HTML",
"name": "text/html",
"group": "Texte",
"group-sort": "0"
},
"$:/language/Docs/Types/text/plain": {
"title": "$:/language/Docs/Types/text/plain",
"description": "Format texte",
"name": "text/plain",
"group": "Texte",
"group-sort": "0"
},
"$:/language/Docs/Types/text/vnd.tiddlywiki": {
"title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
"description": "TiddlyWiki version 5",
"name": "text/vnd.tiddlywiki",
"group": "Texte",
"group-sort": "0"
},
"$:/language/Docs/Types/text/x-tiddlywiki": {
"title": "$:/language/Docs/Types/text/x-tiddlywiki",
"description": "TiddlyWiki Classic",
"name": "text/x-tiddlywiki",
"group": "Texte",
"group-sort": "0"
},
"$:/languages/fr-FR/icon": {
"title": "$:/languages/fr-FR/icon",
"type": "image/svg+xml",
"text": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"900\" height=\"600\"><rect width=\"900\" height=\"600\" fill=\"#ED2939\"/><rect width=\"600\" height=\"600\" fill=\"#fff\"/><rect width=\"300\" height=\"600\" fill=\"#002395\"/></svg>\n"
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/hotzone/config.js": {
"title": "$:/plugins/felixhayashi/hotzone/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/hotzone/focusOffset\",focussedTiddlerStore:\"$:/temp/focussedTiddler\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/hotzone/hotzone.js": {
"title": "$:/plugins/felixhayashi/hotzone/hotzone.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/hotzone.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.name=\"hotzone\";exports.platforms=[\"browser\"];exports.after=[\"story\"];exports.synchronous=true;exports.startup=function(){var t=require(\"$:/plugins/felixhayashi/hotzone/config.js\").config;var e=null;var i=document.getElementsByClassName(t.classNames.storyRiver)[0];var r=$tw.wiki.getTiddlerData(t.references.userConfig,{});var s=isNaN(parseInt(r.focusOffset))?150:parseInt(r.focusOffset);var a=function(e,i,r){if(!(e instanceof Element))return;if(!$tw.utils.hasClass(e,t.classNames.tiddlerFrame))return;var s=e.getElementsByClassName(t.classNames.tiddlerTitle)[0];if(s){var a=s.innerText||s.textContent;return a.trim()}};var n=function(e,i){$tw.wiki.addTiddler(new $tw.Tiddler({title:t.references.focussedTiddlerStore,text:e},$tw.wiki.getModificationFields()));if(i){var r=document.getElementsByClassName(\"hzone-focus\")[0];if(r){$tw.utils.removeClass(r,\"hzone-focus\")}$tw.utils.addClass(i,\"hzone-focus\")}};var l=function(){var r=$tw.wiki.getTiddler(\"$:/StoryList\");if(r&&r.fields.list.length){var l=null;var o=Number.MAX_VALUE;var f=i.children;var u=t.classNames.tiddlerFrame;for(var d=f.length;d--;){if($tw.utils.hasClass(f[d],u)){var c=f[d].getBoundingClientRect();var v=Math.min(Math.abs(s-c.top),Math.abs(s-c.bottom));if(v<o){l=f[d];o=v}}}var w=a(l);if(w!==e&&$tw.wiki.getTiddler(w)){e=w;n(e,l);return}}else if(e){e=\"\";n(e)}};var o=function(t){var e;var i=false;return function(r,s){var a=this;if(i&&!s){}else{i=s;if(e!=null){clearTimeout(e)}e=setTimeout((function(){e=null;i=false;t.apply(a)}),r)}}};var f=o(l);var u=function(t){if(t[\"$:/HistoryList\"]){if(!$tw.wiki.tiddlerExists(\"$:/HistoryList\"))return;var e=$tw.wiki.getTiddler(\"$:/HistoryList\").fields[\"current-tiddler\"];var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");var r=i.indexOf(e)>=0;if(!r)return;f($tw.utils.getAnimationDuration()+10,true)}else if(t[\"$:/StoryList\"]){f($tw.utils.getAnimationDuration()+10,true)}};var d=function(t){f(300,false)};$tw.wiki.addEventListener(\"change\",u);window.addEventListener(\"scroll\",d,false);d()}})();",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/hotzone/Configuration": {
"title": "$:/plugins/felixhayashi/hotzone/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n <tr>\n <th align=\"left\">Focus offset:</th>\n <td><$edit-text tiddler=\"$:/config/hotzone/focusOffset\" tag=\"input\" default=\"71px\" /></td>\n </tr>\n</table>"
},
"$:/temp/focussedTiddler": {
"title": "$:/temp/focussedTiddler"
},
"$:/plugins/felixhayashi/hotzone/License": {
"title": "$:/plugins/felixhayashi/hotzone/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-HotZone/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/hotzone/Readme": {
"title": "$:/plugins/felixhayashi/hotzone/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information."
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/tiddlymap/layout": {
"text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \n\nbody .tc-page-container-wrapper.tc-modal-displayed{-webkit-filter:inherit;-moz-filter:inherit;filter:inherit}body .tc-modal-wrapper{z-index:1010}body .tc-modal-wrapper .tc-modal-header svg{vertical-align:sub}body .tc-modal-wrapper .tc-modal-header h3{line-height:10px}body .tc-modal-wrapper .tc-modal-body{min-height:250px;max-height:70vh;padding-top:0px;padding-bottom:0px;overflow:auto}body .tc-modal-wrapper .tc-modal-footer{padding:8px}body .tc-modal-wrapper .tc-modal-footer .tmap-dialog-button{font-weight:bold}body .tc-modal-wrapper .tc-modal-footer .tmap-hidden-close-button{display:none}table.tmap-table tr:nth-child(odd),.tc-modal-body table.tmap-config-table tr:nth-child(odd){background-color:#F0F0F0}table.tmap-table tr:nth-child(even),.tc-modal-body table.tmap-config-table tr:nth-child(even){background-color:#FFFFFF}.tmap-save-canvas-preview{text-align:center;background:lightgray}.tmap-save-canvas-preview img{background-color:white;max-width:100%;max-height:100px;border:1px solid red}.tmap-list-separator{display:block;background-color:#efefef;margin:10px 0 5px 0;cursor:default;border-bottom:1px dotted gray;font-weight:bold;font-size:0.8em}.tmap-unicode-icon{width:1em;display:inline-block;text-align:center;color:black}html .tmap-link{color:#5778D8}html .tmap-link:hover{color:white;background:#5778D8}html .tmap-small-list,html .tmap-smaller-list,html .tmap-very-small-list{overflow:auto;min-height:2em;max-height:9em;display:block}html .tmap-smaller-list{max-height:7em}html .tmap-very-small-list{max-height:5empx}html .tc-tiddler-controls button.tmap-active-button svg{fill:#888888}html #tmap-node-filter-dialog #tmap-filter-tips{font-size:0.8em}html #tmap-node-filter-dialog textarea{height:100px;max-height:300px;overflow:auto;width:100%;font-size:11px;font-family:\"Courier New\", Courier, monospace}@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-desktop-editor .tmap-widget:not(.tmap-fullscreen){display:none}}@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-mobile-editor{display:none}.tc-modal-wrapper{z-index:1010}.tc-modal-wrapper .tc-modal{boder:1px solid #999999;left:calc(50% - 400px);width:802px}.tc-modal-wrapper .tc-modal-body{left:calc(50% - 400px);width:800px}}@-o-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@keyframes flash fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@keyframes flash fadeout-keyframes{0%{opacity:1}100%{opacity:0}}.tmap-config-widget{background:#F0F0F0;padding:5px;margin:5px 0;box-sizing:border-box;display:block}.tmap-config-widget .vis-network{display:none}.tmap-config-widget .vis-configuration-wrapper{width:100%}.tmap-config-widget .vis-configuration-wrapper .vis-config-rangeinput{height:inherit;margin-left:4px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item{width:100%;height:inherit;background:none;padding-left:0px;left:0}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item.tmap-vis-config-item-active .vis-config-label::after{content:\"(inherited)\";position:absolute;display:inline-block;margin-left:10px;-o-animation:fadein-keyframes 1s;-moz-animation:fadein-keyframes 1s;-webkit-animation:fadein-keyframes 1s;animation:fadein-keyframes 1s;content:\"✔\";color:green;font-weight:bold;font-size:15px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item button.tmap-config-item-reset{vertical-align:top;margin-left:5px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range{width:150px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range::-moz-range-track{width:150px !important}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-label{width:150px}.tmap-config-widget::after{clear:both;content:\"\";display:block}.tmap-flash-message{border:1px solid lightgray;padding:5px;margin:6px 0;display:block;color:#333333}.tmap-flash-message.tmap-info,.tmap-flash-message.tmap-plain,.tmap-flash-message.tmap-neutral{background:#F0F0F0}.tmap-flash-message.tmap-info::before,.tmap-flash-message.tmap-plain::before,.tmap-flash-message.tmap-neutral::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-valid,.tmap-flash-message.tmap-success{background:#D1EED4}.tmap-flash-message.tmap-valid::before,.tmap-flash-message.tmap-success::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-warning{background:#FFF6D1}.tmap-flash-message.tmap-warning::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-malformed,.tmap-flash-message.tmap-invalid,.tmap-flash-message.tmap-danger{background:#EED5D1}.tmap-flash-message.tmap-malformed::before,.tmap-flash-message.tmap-invalid::before,.tmap-flash-message.tmap-danger::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-widget{background:#FFFFFF;width:auto;position:relative;border:1px dotted lightgray;padding:2px;color:#666;display:block}.tmap-widget .tmap-download-canvas{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active){cursor:pointer}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active) .vis-navigation{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active):hover:before{color:gray;background:white;content:\"Click to use\";font-size:14px;font-weight:bold;right:calc(50% - 65px - 5px);position:absolute;text-align:center;top:calc(50% - 14px - 5px);width:130px;z-index:2000;padding:5px;pointer-events:none;background-color:rgba(255,255,255,0.3)}.tmap-widget .tmap-loading-bar{display:none;position:absolute;text-align:center;font-size:2em;padding:10px;top:50%;background:rgba(245,245,245,0.5);z-index:1;width:250px;margin:auto;left:0px;right:0px}.tmap-widget .tmap-vis-graph{height:calc(100% - 35px)}.tmap-widget.tmap-no-buttons .vis-navigation{display:none}.tmap-widget.tmap-advanced-editor .tmap-topbar{background:#d6d9d8}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button{color:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button svg{fill:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button{font-size:1.5em;vertical-align:bottom;height:28px;fill:#555555}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button svg{vertical-align:baseline}.tmap-widget .tmap-menu-bar{width:100%}.tmap-widget .tmap-topbar{background:#F5F5F5;border-bottom:1px solid lightgray;padding:3px 5px;height:35px;position:relative}.tmap-widget .tmap-topbar .tmap-view-label{width:100%;text-align:center;font-weight:bold;padding-top:3px}.tmap-widget .tmap-topbar .tmap-focus-button{position:absolute;right:10px;top:6px}.tmap-widget .tmap-topbar .tmap-focus-button input{width:140px}.tmap-widget .tmap-topbar .tmap-search-dropdown{position:relative}.tmap-widget .tmap-topbar .tmap-search-dropdown .tc-drop-down{position:absolute;z-index:999;right:0px}.tmap-widget .tmap-topbar [hidden]{display:none}.tmap-widget .tmap-topbar select{width:30%;max-width:200px;word-wrap:initial;padding:0px;height:28px}.tmap-widget .tmap-topbar button{line-height:inherit;color:#666}.tmap-widget .tmap-topbar>*{display:inline-block}.tmap-widget .tmap-topbar .tmap-separator:after{color:#bdbdbd;margin:3px;content:\" | \"}.tmap-widget .tmap-topbar .tc-edit-add-tag .tc-add-tag-name input{width:70%}.tmap-widget .tmap-topbar .tc-sidebar-header{text-shadow:none}.tmap-widget .tmap-topbar .tc-edit-tags{border:none;padding:inherit;box-shadow:none}.tmap-widget.tmap-static-mode .tmap-topbar{height:initial}.tmap-widget.tmap-static-mode .tmap-vis-graph{text-align:center;cursor:not-allowed}.tmap-widget.tmap-static-mode .tmap-vis-graph:not(.tmap-graph-placeholder):hover::before{box-shadow:10px 10px 5px lightgray;color:gray;background:white;content:\"Static\";font-size:18px;font-weight:bold;left:50%;margin-left:-100px;position:absolute;text-align:center;top:50px;width:200px;z-index:2000;padding:5px;pointer-events:none}.tmap-widget.tmap-static-mode .tmap-vis-graph.tmap-graph-placeholder::before{content:\"No Preview\";display:block;text-align:center;padding:20px}.tmap-widget .tc-drop-down{min-width:170px;padding:5px;margin:5px 0}.tmap-widget .tc-drop-down button,.tmap-widget .tc-drop-down a{padding:0 2px;text-decoration:none}.tmap-widget .tc-drop-down button:hover,.tmap-widget .tc-drop-down a:hover{color:#ffffff}.tmap-widget .tc-drop-down button svg,.tmap-widget .tc-drop-down a svg{vertical-align:middle}.tmap-widget .tc-block-dropdown{width:370px;min-width:370px;padding:5px;margin:15px 0 0 -370px}.tmap-widget .tc-block-dropdown a{display:inline;padding:0px}.tmap-widget.tmap-plain-design{border:none;padding:0px}.tmap-widget.tmap-plain-design .tmap-topbar{display:none}.tc-sidebar-scrollable .tmap-widget{position:absolute;min-height:350px}.tmap-widget div.vis-network .vis-edit-mode{height:26px}.tmap-widget div.vis-network .vis-manipulation{height:34px;border-top:1px solid #d6d9d8;background:rgba(245,245,245,0.7)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled{right:15px}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-fullscreen-button{bottom:90px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-halfscreen-button{bottom:130px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover{box-shadow:0 0 3px 3px rgba(75,75,75,0.3)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover:before{background:beige;display:block;color:black;padding:3px;position:relative;border:1px solid lightgray;width:80px;left:-100px;top:-50px;z-index:1000;text-align:center}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-up:before{left:30px;content:\"Scroll up\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-down:before{left:30px;content:\"Scroll down\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-right:before{left:30px;content:\"Scroll right\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-left:before{left:30px;content:\"Scroll left\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomOut:before{content:\"Zoom out\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomIn:before{content:\"Zoom in\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomExtends:before{content:\"Fit whole graph\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-fullscreen-button:before{content:\"Toggle Fullscreen\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-halfscreen-button:before{content:\"Toggle Halfscreen\"}.tc-dropzone>.tc-story-river .tmap-widget .vis-navigation .tmap-halfscreen-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:not(.tmap-fullscreen) .vis-navigation .vis-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.tmap-fullscreen-button{display:block}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.vis-zoomExtends{display:block}body.tmap-has-fullscreen-widget{overflow:hidden}body.tmap-has-fullscreen-widget .tmap-widget.tmap-fullscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*.tmap-has-fullscreen-widget{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*:not(.tmap-has-fullscreen-widget){display:none}body.tmap-has-halfscreen-widget .tmap-widget.tmap-halfscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important;position:absolute !important;border-left:1px solid lightgray !important}.tc-modal-footer .tmap-hidden-close-button{display:none}.tmap-modal-content{position:relative;padding:1em 0;padding-top:0}.tmap-modal-content table tr td{vertical-align:top}.tmap-modal-content :not(pre)>code{padding:1px;font-size:0.9em;position:relative;top:-1px}.tmap-modal-content :not(pre)>code{color:#666}.tmap-modal-content .tc-tab-set .tc-tab-content{margin-top:0.5em}.tmap-modal-content .tc-image-button{font-size:14px}.tmap-modal-content fieldset{margin:0px}.tmap-modal-content fieldset legend{font-weight:bold}.tc-modal-body .tmap-modal-editor>p{margin:0px}.tc-modal-body .tmap-modal-editor .tmap-template-select select{width:50%}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame{margin:auto;width:auto}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-controls{display:none}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-title{display:none}.tc-modal-body table{margin:6px 0;border:none;width:100%}.tc-modal-body table td,.tc-modal-body table th{border:1px solid lightgray}.tc-modal-body table.tmap-key-value-table th{width:30%;background-color:#F0F0F0}.tc-modal-body table.tmap-config-table.tmap-large-input tr td:last-child{width:20%}.tc-modal-body table.tmap-config-table.tmap-small-input tr td:last-child{width:60%}.tc-modal-body table.tmap-config-table tr td{border:none;vertical-align:top;padding:5px}.tc-modal-body table.tmap-config-table tr td:first-child{width:15%}.tc-modal-body table.tmap-config-table tr td:last-child{width:40%}.tc-modal-body table.tmap-config-table tr td input:not([type=radio]),.tc-modal-body table.tmap-config-table tr td textarea,.tc-modal-body table.tmap-config-table tr td select{width:100%;word-wrap:normal}.tc-modal-body table.tmap-config-table tr td textarea{height:100%}.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch input,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch textarea,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch select{width:auto}.tc-modal-body table.tmap-config-table tr td div.tmap-button-wrapper{text-align:center}.tc-modal-body table.tmap-config-table tr td .tmap-note{margin-top:0.5em}.tc-modal-body table.tmap-config-table tr td .tmap-description{font-style:italic}#tmap-element-type-manager>div:first-child{height:50vh;float:left;width:21%;background:linear-gradient(90deg, #f5f5f5 0%, #fff 50%)}#tmap-element-type-manager>div:first-child .tmap-searchbar{padding:1em 0 0 0}#tmap-element-type-manager>div:first-child .tmap-searchbar input{width:calc(100% - 36px)}#tmap-element-type-manager>div:first-child .tmap-searchbar button{width:30px;float:right}#tmap-element-type-manager>div:first-child ul{height:calc(100% - 65px);overflow:auto;margin-top:1em;padding:0}#tmap-element-type-manager>div:first-child ul.no-bullets li{list-style:none}#tmap-element-type-manager>div:first-child ul li{white-space:nowrap}#tmap-element-type-manager>div:first-child ul li .tmap-ranking{width:30px;display:inline-block}#tmap-element-type-manager>div:last-child{height:100%;width:calc(79% - 15px);float:right}#tmap-element-type-manager>div:last-child .tc-tab-set .tc-tab-content{overflow:auto;height:50vh}.tmap-manage-node-types .tmap-edge-type-specific{display:none !important}.tmap-manage-edge-types .tmap-node-type-specific{display:none !important}.tmap-modal-fullscreen-editor .tc-tab-content p{margin:1em 0}.tmap-has-pending-template{background-color:#C1EDC4}#tmap-search-table td{border:none;padding-left:0px}#tmap-search-table td:first-child{width:30px}#tmap-search-table b{display:inline-block;width:40px;text-align:right}#tmap-search-table ul{padding-left:20px;margin:1em 0 0 0}#tmap-search-table ul li{list-style:inherit}#tmap-search-table ul button{text-align:left}button.tmap-go-back{margin-bottom:1em;font-weight:bold}.tmap-badges>span,.tmap-badge{background:gray;font-size:11px;color:white;padding:3px 4px;display:inline-block;font-weight:bold;border-radius:2px;line-height:1em;cursor:help}.tmap-badges>span.tmap-red-flag,.tmap-badge.tmap-red-flag{background:red}.tmap-popup{display:none;position:absolute;opacity:0;transition:opacity 0.3s ease}.tmap-popup.tmap-popup-active{opacity:1}.tmap-tooltip{box-shadow:3px 3px 10px rgba(0,0,0,0.2);min-width:100px;min-height:50px;max-width:<<tmap option config.sys.popups.width>>;max-height:<<tmap option config.sys.popups.height>>;padding:5px;resize:both;overflow:auto;cursor:auto;font-family:verdana;font-size:14px;background-color:#f5f4ed;border:1px solid #808074;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tmap-tooltip[style*=\"height\"]{max-height:none !important}.tmap-tooltip[style*=\"width\"]{max-width:none !important}.tmap-quick-connect{font-size:0.7em}.tmap-quick-connect p{padding-left:0;padding-right:0}.tmap-quick-connect .tc-drop-down{padding:5px;width:250px;white-space:normal;line-height:1em;position:absolute;z-index:1000;right:50px;background:linear-gradient(45deg, #f5f5f5 0%, #fff 50%, #f5f5f5 100%)}.tmap-quick-connect .tc-drop-down:first-child{padding-top:0;margin-top:0}.tmap-quick-connect .tc-drop-down .title{margin:1.5em 0 0.5em 0;font-weight:bold;color:gray}.tmap-quick-connect .tc-drop-down select{width:80px;word-wrap:initial}.tmap-quick-connect .tc-drop-down table{width:100%;border:none;margin:0.5em 0}.tmap-quick-connect .tc-drop-down table td,.tmap-quick-connect .tc-drop-down table th{padding:3px 3px 3px 0;vertical-align:middle;font-weight:normal;border:none}.tmap-quick-connect .tc-drop-down table td table,.tmap-quick-connect .tc-drop-down table th table{margin:0}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-search-bar,.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{background:#F1F1F1;margin-top:0;border-bottom:1px solid #D5D5D5;border-top:1px solid #D5D5D5}.tmap-quick-connect .tc-drop-down table.tmap-quick-connect-search-bar td,.tmap-quick-connect .tc-drop-down th{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-connection-table th,.tmap-quick-connect .tc-drop-down .tmap-connection-table td{text-align:left;padding:1px 1px 1px 0}.tmap-quick-connect .tc-drop-down .tmap-connection-table button{width:20px;padding:0px}.tmap-quick-connect .tc-drop-down .tmap-scroll-table{height:120px;overflow:auto;display:block}.tmap-quick-connect .tc-drop-down hr{border:0;height:0;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(255,255,255,0.3)}.tmap-quick-connect .tc-drop-down a{display:inline;padding:0;color:#5778d8;background:transparent}.tmap-quick-connect .tc-drop-down a:hover{background:transparent;color:#5778d8;text-decoration:underline}.tmap-quick-connect .tc-drop-down button{display:inline-block;padding:0px 3px;text-align:center;color:#333333;line-height:1.0}.tmap-quick-connect .tc-drop-down button:hover{color:#ffffff}.tmap-quick-connect .tc-drop-down button svg{fill:inherit}.tmap-quick-connect .tc-drop-down button svg:hover{fill:#ffffff}\n",
"title": "$:/plugins/felixhayashi/tiddlymap/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();/* @preserve TW-Guard */ /* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var AbstractEdgeTypeSubscriber=function(){function e(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},i=t.priority,n=i===undefined?0:i,a=t.skipOthers,s=a===undefined?true:a,u=t.ignore,l=u===undefined?false:u;_classCallCheck(this,e);this.allEdgeTypes=r;this.priority=n;this.skipOthers=s;this.ignore=l}_createClass(e,[{key:\"setTracker\",value:function e(r){this.tracker=r}},{key:\"loadEdges\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"loadEdges\")}},{key:\"canHandle\",value:function e(r){throw new _exception.MissingOverrideError(this,\"canHandle\")}},{key:\"insertEdge\",value:function e(r,t,i){}},{key:\"deleteEdge\",value:function e(r,t,i){}}]);return e}();exports.default=AbstractEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractMagicEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e,t){_classCallCheck(this,r);var i=_possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,t));i.edgeTypesByFieldName=_utils2.default.makeHashMap();for(var a in e){var n=e[a];if(i.canHandle(n)){i.edgeTypesByFieldName[n.name]=n}}return i}_createClass(r,[{key:\"getReferencesFromField\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"getReferencesFromField\")}},{key:\"getReferences\",value:function e(r,t,i){var a=_utils2.default.makeHashMap();var n=r.fields;for(var s in n){var u=this.edgeTypesByFieldName[s];if(!u||i&&!i[u.id])continue;var o=this.getReferencesFromField(r,s,t);if(o&&o.length){a[u.id]=o}}return a}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.default=AbstractMagicEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractMagicEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractRefEdgeTypeSubscriber=function(e){_inherits(t,e);function t(){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=this.getReferences(t,r,i);if(!a||!_utils2.default.hasElements(a))return;var s=t.fields[\"tmap.id\"];var n=$tm.tracker.getIdsByTiddlers();var u=this.allEdgeTypes;var l=_utils2.default.getTiddlerRef(t);var o=_utils2.default.makeHashMap();for(var f in a){var c=a[f];if(!c){continue}var p=u[f];for(var d=c.length;d--;){var _=c[d];if(!_||!$tw.wiki.tiddlerExists(_)||_utils2.default.isSystemOrDraft(_)||r&&!r[_]){continue}var b=p.id+$tw.utils.hashString(l+_);o[b]=new _Edge2.default(s,n[_],p.id,b)}}return o}},{key:\"getReferences\",value:function e(t,r,i){throw new _exception.MissingOverrideError(this,\"getReferences\")}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.default=AbstractRefEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractRefEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var s=r[t];s.enumerable=s.enumerable||false;s.configurable=true;if(\"value\"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}return function(r,t,s){if(t)e(r.prototype,t);if(s)e(r,s);return r}}();function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeTypeSubscriberRegistry=function(){function e(r,t,s){_classCallCheck(this,e);this.subscriberClasses=r;this.tracker=s;this.updateIndex(t)}_createClass(e,[{key:\"getAllForType\",value:function e(r){var t=this.allSubscribers;var s=[];for(var i=0,a=t.length;i<a;i++){if(t[i].canHandle(r)){s.push(t[i]);if(t[i].skipOthers){break}}}return s}},{key:\"getAll\",value:function e(){return this.allSubscribers}},{key:\"updateIndex\",value:function e(r){var t=[];var s=this.subscriberClasses;for(var i in s){var a=new s[i](r);a.setTracker(this.tracker);if(a.ignore===true){continue}t.push(a)}t.sort(function(e,r){return r.priority-e.priority});this.allSubscribers=t}}]);return e}();exports.default=EdgeTypeSubscriberRegistry;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/EdgeTypeSubscriberRegistry.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TmapEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TmapEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:0},r)))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\");if(!a){return}var n=this.tracker.getTiddlersByIds();var u=t.fields[\"tmap.id\"];var s=_utils2.default.makeHashMap();for(var l in a){var o=a[l];var d=n[o.to];if(d&&(!r||r[d])&&(!i||i[o.type])){s[l]=new _Edge2.default(u,o.to,o.type,l)}}return s}},{key:\"insertEdge\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});r.id=r.id||_utils2.default.genUUID();a[r.id]={to:r.to,type:i.id};_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"deleteEdge\",value:function e(t,r,i){if(!r.id)return;var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});delete a[r.id];_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"canHandle\",value:function e(t){return true}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.TmapEdgeTypeSubscriber=TmapEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/TmapEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FieldEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FieldEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-field\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return[t.fields[r]]}},{key:\"insertEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,n);return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,undefined);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FieldEdgeTypeSubscriber=FieldEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FieldEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FilterEdgeTypeSubstriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _widget2=_interopRequireDefault(_widget);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FilterEdgeTypeSubstriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-filter\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){var n=t.fields[r];var a=new _widget2.default.widget({});a.setVariable(\"currentTiddler\",t.fields.title);var u=new _widget2.default.widget({},{parentWidget:a});var s=_utils2.default.getMatches(n,i,u);return s}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var a=t.fields[n]||\"\";var u=this.tracker.getTiddlerById(r.to);var s=$tw.utils.stringifyList([u]);if(a.length>0){s=\" \"+s}_utils2.default.setField(t,n,a+s);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FilterEdgeTypeSubstriber=FilterEdgeTypeSubstriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FilterEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.ListEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var ListEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-list\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return $tw.utils.parseStringArray(t.fields[r])}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var s=$tw.utils.parseStringArray(t.fields[n]);s=(s||[]).slice();var a=this.tracker.getTiddlerById(r.to);s.push(a);_utils2.default.setField(t,n,$tw.utils.stringifyList(s));return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=$tw.utils.parseStringArray(t.fields[i.name]);n=(n||[]).slice();var s=this.tracker.getTiddlerById(r.to);var a=n.indexOf(s);if(a>-1){n.splice(a,1)}var u=void 0;if(n.length>0){u=$tw.utils.stringifyList(n)}_utils2.default.setField(t,i.name,u);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.ListEdgeTypeSubscriber=ListEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/ListEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.LinkEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var LinkEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:20},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.id===\"tw-body:link\"}},{key:\"getReferences\",value:function e(t,r,n){if(n&&!n[\"tw-body:link\"]){return}var i=$tw.wiki.getTiddlerLinks(t.fields.title);if(!i||!i.length){return}return{\"tw-body:link\":i}}}]);return t}(_AbstractRefEdgeTypeSubscriber2.default);exports.LinkEdgeTypeSubscriber=LinkEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/LinkEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TranscludeEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t){if(Object.prototype.hasOwnProperty.call(t,n)){e[n]=t[n]}}}return e};var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(r,t,n){if(t)e(r.prototype,t);if(n)e(r,n);return r}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TranscludeEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,r);return _possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,_extends({priority:20,ignore:typeof $tw.wiki.getTiddlerTranscludes!==\"function\"},t)))}_createClass(r,[{key:\"canHandle\",value:function e(r){return r.id===\"tw-body:transclude\"}},{key:\"getReferences\",value:function e(r,t,n){if(n&&!n[\"tw-body:transclude\"]){return}var i=$tw.wiki.getTiddlerTranscludes(r.fields.title);if(!i||!i.length){return}return{\"tw-body:transclude\":i}}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.TranscludeEdgeTypeSubscriber=TranscludeEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/TranscludeEdgeTypeSubscriber.js.map\n",
"type": "application/javascript",
"module-type": "tmap.edgetypehandler"
},
"$:/plugins/felixhayashi/tiddlymap/js/Edge": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Edge",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Edge\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var Edge=function e(t,i,s,l){_classCallCheck(this,e);this.from=t;this.to=i;this.type=s;this.id=l||_utils2.default.genUUID()};exports.default=Edge;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/Edge.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/EdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var n=t.getIdParts(e),o=n.marker,a=n.namespace,i=n.name;e=t.getId(o,a,i);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,env.path.edgeTypes,t.fieldMeta,r));l.id=e;l.marker=o;l.name=i;l.namespace=a;var u=(l.style||{}).arrows;if(u){l.invertedArrow=isArrowEnabled(u,\"from\");l.toArrow=isArrowEnabled(u,\"to\")||isArrowEnabled(u,\"middle\");l.biArrow=l.invertedArrow===l.toArrow;if(l.biArrow){l.toArrow=true;l.invertedArrow=true}}else{l.toArrow=true}Object.freeze(l);return l}_createClass(t,[{key:\"getLabel\",value:function e(){return this.label||this.name}}],[{key:\"getIdParts\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";t=_utils2.default.getWithoutPrefix(t,env.path.edgeTypes+\"/\");var r=t.match(edgeTypeRegex)||[];return{marker:r[1]||\"\",namespace:r[3]&&r[2]||\"\",name:r[3]||r[2]||\"\"}}},{key:\"getId\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];return n?t+(r&&r+\":\")+n:\"tmap:unknown\"}}]);return t}(_MapElementType3.default);EdgeType.getInstance=function(e){return e instanceof EdgeType?e:new EdgeType(e)};EdgeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{label:{},\"show-label\":{}});var isArrowEnabled=function e(t,r){var n=t[r];if(n==null&&r===\"to\"){return true}return(typeof n===\"undefined\"?\"undefined\":_typeof(n))===\"object\"?n.enabled!==false:n===true};var edgeTypeRegex=new RegExp(\"^(_?)([^:_][^:]*):?([^:]*)\");exports.default=EdgeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/EdgeType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/MapElementType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/MapElementType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(t){return typeof t}:function(t){return t&&typeof Symbol===\"function\"&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var l=e[i];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(t,l.key,l)}}return function(e,i,l){if(i)t(e.prototype,i);if(l)t(e,l);return e}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/MapElementType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}var MapElementType=function(){function t(e,i,l,s){_classCallCheck(this,t);this.id=e;this.root=i;this._fieldMeta=l;this.fullPath=this.root+\"/\"+this.id;this.isShipped=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath);this._load(s||this.fullPath)}_createClass(t,[{key:\"_load\",value:function t(e){if(!e){return}if(typeof e===\"string\"){var i=_utils2.default.startsWith(e,this.root);var l=i?e:this.root+\"/\"+e;this._loadFromTiddler(l)}else if(e instanceof $tw.Tiddler){this._loadFromTiddler(e)}else if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){for(var s in this._fieldMeta){this[s]=e[s]}}}},{key:\"_loadFromTiddler\",value:function t(e){var i=_utils2.default.getTiddler(e);if(!i){return}var l=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath)||{};var s=$tw.utils.extend({},l.fields,i.fields);for(var r in this._fieldMeta){var a=this._fieldMeta[r].parse;var f=s[r];this[r]=a?a.call(this,f):f}}},{key:\"exists\",value:function t(){return _utils2.default.tiddlerExists(this.fullPath)}},{key:\"setStyle\",value:function t(e,i){if(typeof e===\"string\"){e=_utils2.default.parseJSON(e)}if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){if(i){_utils2.default.merge(this.style,e)}else{this.style=e}}}},{key:\"save\",value:function t(e,i){if(!e){e=this.fullPath}else if(typeof e!==\"string\"){return}var l={title:e,text:\"\"};if(!_utils2.default.startsWith(e,this.root)){l.id=this.id}for(var s in this._fieldMeta){var r=this._fieldMeta[s].stringify;l[s]=r?r.call(this,this[s]):this[s]}if(!this.exists()){Object.assign(l,$tw.wiki.getCreationFields())}if(i!==true){Object.assign(l,$tw.wiki.getModificationFields())}$tw.wiki.addTiddler(new $tw.Tiddler(l))}}]);return t}();MapElementType.fieldMeta={description:{},style:{parse:_utils2.default.parseJSON,stringify:JSON.stringify},modified:{},created:{}};exports.default=MapElementType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/MapElementType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/NodeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/NodeType",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/NodeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var NodeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);e=typeof e===\"string\"?_utils2.default.getWithoutPrefix(e,$tm.path.nodeTypes+\"/\"):\"tmap:unknown\";var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,$tm.path.nodeTypes,t.fieldMeta,r));Object.freeze(n);return n}_createClass(t,[{key:\"getInheritors\",value:function e(t){return this.scope?_utils2.default.getMatches(this.scope,t||$tw.wiki.allTitles()):[]}}]);return t}(_MapElementType3.default);NodeType.getInstance=function(e){return e instanceof NodeType?e:new NodeType(e)};NodeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{view:{},priority:{parse:function e(t){return isNaN(t)?1:parseInt(t)},stringify:function e(t){return _utils2.default.isInteger(t)?t.toString():\"1\"}},scope:{stringify:_utils2.default.getWithoutNewLines},\"fa-icon\":{},\"tw-icon\":{}});exports.default=NodeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/NodeType.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var r in i){if(Object.prototype.hasOwnProperty.call(i,r)){e[r]=i[r]}}}return e};var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var ViewAbstraction=function(){function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);if(t instanceof e){return t}this._registerPaths(t);if(i.isCreate){if(!this.configTRef){var r=_utils2.default.getRandomLabel({plural:true});this.configTRef=$tw.wiki.generateNewTitle($tm.path.views+\"/\"+r)}this._createView(i)}else if(!e.exists(this.getRoot())){throw new ResourceNotFoundException(\"ViewAbstraction\",t)}}_createClass(e,[{key:\"isLocked\",value:function e(){return $tw.wiki.isShadowTiddler(this.configTRef)}},{key:\"update\",value:function e(t){var i=t.changedTiddlers;if(t[env.path.edgeTypes]||_utils2.default.hasKeyWithPrefix(i,this.getRoot())){this._clearCaches();return true}return false}},{key:\"addPlaceholder\",value:function e(t){_utils2.default.cp(_utils2.default.getTiddlerRef(t),this.snapshotTRef,true)}},{key:\"exists\",value:function t(){return e.exists(this)}},{key:\"getRoot\",value:function e(){return this.configTRef}},{key:\"getCreationDate\",value:function e(t){var i=$tw.wiki.getTiddler(this.configTRef).fields[\"created\"];if(t){return i instanceof Date?$tw.utils.formatDateString(i,\"DDth MMM YYYY\"):\"\"}return i}},{key:\"getLabel\",value:function e(){return _utils2.default.getBasename(this.configTRef)}},{key:\"destroy\",value:function e(){_utils2.default.deleteTiddlers(_utils2.default.getMatches(\"[prefix[\"+this.configTRef+\"]]\"))}},{key:\"getOccurrences\",value:function e(){var t=\"[regexp:text[<\\\\$(tiddlymap|tmap).*?view=.\"+this.getLabel()+\"..*?>]]\";return _utils2.default.getMatches(t)}},{key:\"rename\",value:function t(i){if(typeof i!==\"string\"){return false}if(_utils2.default.inArray(\"/\",i)){$tm.notify('A view name must not contain any \"/\"');return false}var r=this.getLabel();var a=env.path.views+\"/\"+i;var n=this.getRoot();_utils2.default.mv(n,a,true);if($tm.config.sys.defaultView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"defaultView\",i)}if($tm.config.sys.liveTab.fallbackView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"liveTab.fallbackView\",i)}$tw.wiki.each(function(t,a){if(t.fields[\"tmap.open-view\"]===r){_utils2.default.setField(a,\"tmap.open-view\",i);return}if(e.exists(a)){var n=new e(a);var l=n.getNodeData();for(var s in l){if(l[s][\"open-view\"]===r){l[s][\"open-view\"]=i}}n.saveNodeData(l)}});this._clearCaches();this._registerPaths(i)}},{key:\"isEnabled\",value:function e(t){return _utils2.default.isTrue(this.getConfig(t),false)}},{key:\"getConfig\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.configTRef,\"tmap-config\",function(){var e=_utils2.default.getTiddler(i.configTRef).fields;return _utils2.default.getPropertiesByPrefix(e,\"config.\")});var a=t&&_utils2.default.startsWith(t,\"config.\")?t:\"config.\"+t;return t?r[a]:r}},{key:\"setConfig\",value:function e(){for(var t=arguments.length,i=Array(t),r=0;r<t;r++){i[r]=arguments[r]}if(i[0]==null){return}if(i.length===1&&_typeof(i[0])===\"object\"){for(var a in i[0]){this.setConfig(a,i[0][a])}}else if(i.length===2&&typeof i[0]===\"string\"){var n=_utils2.default.getWithoutPrefix(i[0],\"config.\");var l=i[1];if(l===undefined){return}var s=this.getConfig();if(l===null){$tm.logger(\"debug\",\"Removing config\",n);delete s[\"config.\"+n]}else{if(n===\"edge_type_namespace\"){var o=l.match(/[^:]+/);l=o?o[0]:\"\"}}$tm.logger(\"log\",\"Setting config\",n,l);s[\"config.\"+n]=l;$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),s))}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(i)))}}},{key:\"isNodeIncludedById\",value:function t(i){var r=$tw.utils.escapeRegExp(e._getNodeIdFilterPart(i));return this.getNodeFilter(\"raw\").match(r)}},{key:\"setNodeFilter\",value:function e(t,i){t=t.replace(/[\\n\\r]/g,\" \");if(this.getNodeFilter(\"raw\")===t){return}_utils2.default.setField(this.nodeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Node filter set to\",t)}},{key:\"setEdgeTypeFilter\",value:function e(t){t=t.replace(/[\\n\\r]/g,\" \");if(this.getEdgeTypeFilter(\"raw\")===t){return}_utils2.default.setField(this.edgeTypeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Edge filter set to\",t)}},{key:\"addNode\",value:function t(i){if(!this.isNodeIncludedById(i)){if(_utils2.default.isTrue($tm.config.sys.alwaysAddNodeIdToViewFilter)||!_utils2.default.isMatch(i.tRef,this.getNodeFilter(\"compiled\"))){var r=e._getNodeIdFilterPart(i);var a=\" \";this.setNodeFilter(this.getNodeFilter(\"raw\")+a+r)}this.saveNodePosition(i)}}},{key:\"removeNode\",value:function t(i){if(!this.isNodeIncludedById(i)){return false}var r=e._getNodeIdFilterPart(i);var a=this.getNodeFilter(\"raw\").replace(r,\"\");this.setNodeFilter(a);return true}},{key:\"getEdgeTypeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.edgeTypeFilterTRef,\"tmap-edgeTypeFilter\",function(){var e=$tm.indeces.allETy;var t=Object.keys(e);var r=$tw.wiki.getTiddler(i.edgeTypeFilterTRef);var a={};a.raw=r&&r.fields.filter||\"\";a.pretty=_utils2.default.getPrettyFilter(a.raw);a.matches=_utils2.default.getEdgeTypeMatches(a.raw,e);a.whitelist=_utils2.default.getLookupTable(a.matches);return a});return t?r[t]:r}},{key:\"isEdgeTypeVisible\",value:function e(t){return _utils2.default.isEdgeTypeMatch(_EdgeType2.default.getInstance(t).id,this.getEdgeTypeFilter(\"raw\"))}},{key:\"getNodeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.nodeFilterTRef,\"tmap-nodeFilter\",function(){var e=_utils2.default.makeHashMap();var t=$tw.wiki.getTiddler(i.nodeFilterTRef);e.raw=t&&t.fields.filter||\"\";e.pretty=_utils2.default.getPrettyFilter(e.raw);e.compiled=$tw.wiki.compileFilter(e.raw);return e});return t?r[t]:r}},{key:\"getNodeData\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.mapTRef,\"tmap-map\",function(){return _utils2.default.parseFieldData(i.mapTRef,\"text\",{})});return t?r[t]:r}},{key:\"equals\",value:function t(i){return i===this||e.exists(i)&&new e(i).getRoot()===this.getRoot()}},{key:\"saveNodeData\",value:function e(){var t=this.getNodeData();for(var i=arguments.length,r=Array(i),a=0;a<i;a++){r[a]=arguments[a]}if(r.length===2){if(_typeof(r[1])===\"object\"){if(r[1]===null){delete t[r[0]]}else{t[r[0]]=Object.assign(t[r[0]]||{},r[1])}}}else if(r.length===1&&_typeof(r[0])===\"object\"){$tm.logger(\"log\",\"Storing data in\",this.mapTRef);Object.assign(t,r[0])}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(r)))}_utils2.default.writeFieldData(this.mapTRef,\"text\",t,$tm.config.sys.jsonIndentation)}},{key:\"saveNodePosition\",value:function e(t){if(t.id&&t.x!=null&&t.y!=null){this.saveNodeData(t.id,{x:t.x,y:t.y})}}},{key:\"saveNodePositions\",value:function e(t){var i=this.getNodeData();for(var r in t){i[r]=i[r]||{};i[r].x=t[r].x;i[r].y=t[r].y}this.saveNodeData(i)}},{key:\"setCentralTopic\",value:function e(t){this.setConfig(\"central-topic\",t)}},{key:\"saveNodeStyle\",value:function e(t,i){var r=this.getNodeData(t)||{};var a={x:r.x,y:r.y};for(var n in r){delete r[n]}this.saveNodeData(t,_extends({},i,a))}},{key:\"_registerPaths\",value:function t(i,r){this.configTRef=e._getRootPath(i);this.mapTRef=this.configTRef+\"/map\";this.nodeFilterTRef=this.configTRef+\"/filter/nodes\";this.edgeTypeFilterTRef=this.configTRef+\"/filter/edges\";this.snapshotTRef=this.getRoot()+\"/snapshot\"}},{key:\"_clearCaches\",value:function e(){_utils2.default.getMatches(\"[prefix[\"+this.getRoot()+\"]]\").forEach(function(e){$tw.wiki.clearCache(e)})}},{key:\"_createView\",value:function t(){var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},r=i.isForce,a=i.protoView,n=i.isHidden;if(e.exists(this)){if(!r){return}this.destroy()}if(e.exists(a)){_utils2.default.cp(new e(a).getRoot(),this.configTRef,true)}var l={title:this.configTRef,id:_utils2.default.genUUID()};if(!n){l[$tm.field.viewMarker]=true}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),l));this.setEdgeTypeFilter(env.filter.defaultEdgeTypeFilter)}}],[{key:\"_getNodeIdFilterPart\",value:function e(t){var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;return\"[field:tmap.id[\"+i+\"]]\"}},{key:\"_getRootPath\",value:function t(i){if(i instanceof e){return i.configTRef}if(i instanceof $tw.Tiddler){i=i.fields.title}if(typeof i===\"string\"){var r=_utils2.default.getWithoutPrefix(i,$tm.path.views+\"/\");if(r&&!_utils2.default.hasSubString(r,\"/\")){return $tm.path.views+\"/\"+r}}}},{key:\"exists\",value:function t(i){if(!i){return false}if(i instanceof e){i=i.configTRef}else{i=e._getRootPath(i)}return _utils2.default.tiddlerExists(i)}}]);return e}();exports.default=ViewAbstraction;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/ViewAbstraction.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Popup": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Popup",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function Popup(e,t){t=t||{};this._parentDomNode=e;this._domNode=document.createElement(\"div\");this._domNode.style.display=\"none\";this._domNode.className=\"tmap-popup\";this._parentDomNode.appendChild(this._domNode);$tw.utils.addClass(this._domNode,t.className);this._isEnabled=true;this._isPreventShowOrHide=false;this._isHideOnClick=!!t.hideOnClick;this._timeoutShow=null;this._timeoutHide=null;this._isDisplayNoneAfterAnimation=true;var i=parseInt(t.leavingDelay);this._hideDelayLeavingPopup=_utils2.default.isInteger(i)?i:200;i=parseInt(t.hideDelay);this._hideDelay=_utils2.default.isInteger(i)?i:200;i=parseInt(t.showDelay);this._showDelay=_utils2.default.isInteger(i)?i:200;_utils2.default.bindTo(this,[\"_show\",\"_hide\",\"_handleEnter\",\"_handleLeave\",\"_handleAnimationEnd\",\"_handleClick\"]);this._listeners={mouseenter:this._handleEnter,mouseleave:this._handleLeave,click:[this._handleClick,true]};var s=this._handleAnimationEnd;this._listeners[$tw.utils.convertEventName(\"animationEnd\")]=s;this._listeners[$tw.utils.convertEventName(\"transitionEnd\")]=s;_utils2.default.setDomListeners(\"add\",this._domNode,this._listeners,false)}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Popup\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */Popup.prototype._handleEnter=function(e){this._isPreventShowOrHide=true};Popup.prototype._handleLeave=function(e){this._isPreventShowOrHide=false;this.hide(this._hideDelayLeavingPopup)};Popup.prototype._handleClick=function(e){if(this._isHideOnClick){this._hide(true)}};Popup.prototype._handleAnimationEnd=function(){if(this._isDisplayNoneAfterAnimation){this._domNode.style.display=\"none\"}};Popup.prototype._hide=function(e){if(!e&&this._isPreventShowOrHide)return;this._isDisplayNoneAfterAnimation=true;this._isPreventShowOrHide=false;$tw.utils.removeClass(this._domNode,\"tmap-popup-active\")};Popup.prototype._show=function(e,t){if(this._isPreventShowOrHide||$tm.mouse.ctrlKey||!this._isEnabled){return}this._domNode.style.display=\"none\";$tw.utils.removeClass(this._domNode,\"tmap-popup-active\");this._domNode.removeAttribute(\"style\");_utils2.default.removeDOMChildNodes(this._domNode);var i=this._domNode.appendChild(document.createElement(\"div\"));if(typeof t===\"function\"){t(e,i)}else{i.innerHTML=t}if(!i.childNodes.length)return;var s=this._parentDomNode.getBoundingClientRect();var o=$tm.mouse.clientX;var n=$tm.mouse.clientY;this._domNode.style.display=\"block\";var d=this._domNode.getBoundingClientRect();var l=s.right-(o+d.width);var h=o-d.width-s.left;var a=l>h;var u=s.bottom-(n+d.height);var r=n-d.height-s.top;var p=u>r;var _=a?-15:d.width+15;var m=p?-15:d.height+15;this._domNode.style.left=o-s.left-_+\"px\";this._domNode.style.top=n-s.top-m+\"px\";this._isDisplayNoneAfterAnimation=false;$tw.utils.addClass(this._domNode,\"tmap-popup-active\")};Popup.prototype.show=function(e,t,i){this._clearTimeouts();i=_utils2.default.isInteger(i)?i:this._showDelay;this._timeoutShow=setTimeout(this._show,i,e,t)};Popup.prototype.hide=function(e,t){this._clearTimeouts();e=_utils2.default.isInteger(e)?e:this._hideDelay;if(t||e===0){this._hide(t)}else{this._timeoutHide=setTimeout(this._hide,e,t)}};Popup.prototype.setEnabled=function(e){this._isEnabled=e};Popup.prototype.isShown=function(){return this._domNode.style.display===\"block\"};Popup.prototype._clearTimeouts=function(){clearTimeout(this._timeoutShow);clearTimeout(this._timeoutHide);this._timeoutShow=undefined;this._timeoutHide=undefined};exports.default=Popup;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/Popup.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(t,n.key,n)}}return function(e,i,n){if(i)t(e.prototype,i);if(n)t(e,n);return e}}();function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\ntype: application/SelectionRectangle\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var SelectionRectangle=function(){function t(e,i){_classCallCheck(this,t);this.x1=e;this.x2=e;this.y1=i;this.y2=i}_createClass(t,[{key:\"span\",value:function t(e,i){this.x2=e;this.y2=i}},{key:\"getWidth\",value:function t(){return this.x2-this.x1}},{key:\"getHeight\",value:function t(){return this.y2-this.y1}},{key:\"getRect\",value:function t(){return[this.x1,this.y1,this.getWidth(),this.getHeight()]}},{key:\"isPointWithin\",value:function t(e){var i=e.x,n=e.y;var a=this.x1,r=this.x2,s=this.y1,u=this.y2;var h=Math.min(a,r);var c=Math.max(a,r);var l=Math.min(s,u);var o=Math.max(s,u);return h<i&&i<c&&l<n&&n<o}}]);return t}();exports.default=SelectionRectangle;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/SelectionRectangle.js.map\n",
"type": "application/SelectionRectangle",
"module-type": "library"
},
"/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js": {
"title": "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js",
"text": "\"use strict\";\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/TypeDefs.js.map\n"
},
"$:/plugins/felixhayashi/tiddlymap/js/config/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/config/vis",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/config/vis\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var visConfig={locale:\"en_EN\",clickToUse:false,autoResize:false,height:\"100%\",width:\"100%\",configure:{enabled:false},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:true,navigationButtons:true,multiselect:true,selectable:true,selectConnectedEdges:true,tooltipDelay:600,zoomView:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:false}},manipulation:{initiallyActive:true},nodes:{shape:\"box\",widthConstraint:{maximum:160},heightConstraint:{valign:\"center\"},shadow:{enabled:false},color:{border:\"#2B7CE9\",background:\"#97C2FC\"}},edges:{smooth:{enabled:true},color:{color:\"#848484\",inherit:false},arrows:{to:{enabled:true}}},layout:{hierarchical:{enabled:false,levelSeparation:200,nodeSpacing:170,treeSpacing:230,sortMethod:\"directed\",parentCentralization:true,edgeMinimization:true,blockShifting:true,direction:\"UD\"}},physics:{forceAtlas2Based:{gravitationalConstant:-300,springLength:0,springConstant:.2,centralGravity:.015,damping:.4},hierarchicalRepulsion:{nodeDistance:120,centralGravity:0,springLength:100,springConstant:.01,damping:.09},solver:\"forceAtlas2Based\",stabilization:{enabled:true,iterations:1e3,updateInterval:10,onlyDynamicEdges:false,fit:false}}};exports.default=visConfig;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/VisConfig.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/environment": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/environment",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var l in a){if(Object.prototype.hasOwnProperty.call(a,l)){e[l]=a[l]}}}return e};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/environment\ntype: application/javascript\n module-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var path=exports.path={pluginRoot:\"$:/plugins/felixhayashi/tiddlymap\",edgeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes\",nodeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes\",views:\"$:/plugins/felixhayashi/tiddlymap/graph/views\",options:\"$:/plugins/felixhayashi/tiddlymap/config\",dialogs:\"$:/plugins/felixhayashi/tiddlymap/dialog\",footers:\"$:/plugins/felixhayashi/tiddlymap/dialogFooter\",tempRoot:\"$:/temp/tmap\",tempStates:\"$:/temp/tmap/state\",tempPopups:\"$:/temp/tmap/state/popup\",localHolders:\"$:/temp/tmap/holders\"};var ref=exports.ref={defaultViewHolder:\"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder\",graphBar:\"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar\",sysUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\",visUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/vis/user\",welcomeFlag:\"$:/plugins/felixhayashi/tiddlymap/flag/welcome\",focusButton:\"$:/plugins/felixhayashi/tiddlymap/misc/focusButton\",sysMeta:\"$:/plugins/felixhayashi/tiddlymap/misc/meta\",liveTab:\"$:/plugins/felixhayashi/tiddlymap/hook/liveTab\",mainEditor:\"$:/plugins/felixhayashi/tiddlymap/hook/editor\",sidebarBreakpoint:\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"};var misc=exports.misc={unknownEdgeLabel:\"tmap:undefined\",liveViewLabel:\"Live View\",defaultViewLabel:\"Default\",mainEditorId:\"main_editor\",arrows:{in:\"⇦\",out:\"➡\",bi:\"⇄\"}};var config=exports.config={sys:{field:{nodeLabel:\"caption\",nodeIcon:\"icon\",nodeInfo:\"description\",viewMarker:\"isview\"},liveTab:{fallbackView:misc.liveViewLabel},suppressedDialogs:{},edgeClickBehaviour:\"manager\",debug:\"false\",notifications:\"true\",popups:{enabled:\"true\",delay:\"600\",width:\"240px\",height:\"140px\"},jsonIndentation:\"1\",alwaysAddNodeIdToViewFilter:\"true\",editNodeOnCreate:\"false\",singleClickMode:\"false\",nodeFilterNeighbours:\"false\",editorMenuBar:{showNeighScopeButton:\"true\",showRasterMenuButton:\"true\",showScreenshotButton:\"true\"}}};var filter=exports.filter={nodeTypes:\"[prefix[\"+path.nodeTypes+\"]]\",edgeTypes:\"[prefix[\"+path.edgeTypes+\"]]\",views:\"[\"+config.sys.field.viewMarker+\"[true]]\",defaultEdgeTypeFilter:\"-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]\"};var allSelector=\"[all[tiddlers+shadows]!has[draft.of]]\";var s={allEdgeTypes:allSelector+\" +\"+filter.edgeTypes,allNodeTypes:allSelector+\" +\"+filter.nodeTypes,allViews:allSelector+\" +\"+filter.views,allPotentialNodes:\"[all[tiddlers]!is[system]!has[draft.of]]\"};var selector=exports.selector=_extends({},s,{allEdgeTypesById:s.allEdgeTypes+\" +[removeprefix[\"+path.edgeTypes+\"/]]\",allNodeTypesById:s.allNodeTypes+\" +[removeprefix[\"+path.nodeTypes+\"/]]\",allViewsByLabel:s.allViews+\" +[removeprefix[\"+path.views+\"/]]\"});\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/environment.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/exception": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/exception",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function r(r,t){for(var e=0;e<t.length;e++){var o=t[e];o.enumerable=o.enumerable||false;o.configurable=true;if(\"value\"in o)o.writable=true;Object.defineProperty(r,o.key,o)}}return function(t,e,o){if(e)r(t.prototype,e);if(o)r(t,o);return t}}();function _classCallCheck(r,t){if(!(r instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(r,t){if(!r){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:r}function _inherits(r,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(r,t):r.__proto__=t}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/exception\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TiddlyMapError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);var o=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r));o.payload=e;return o}_createClass(t,[{key:\"getPayload\",value:function r(){return this.payload}}]);return t}(Error);var EnvironmentError=exports.EnvironmentError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Critical parts of the underlying system changed: \"+r))}return t}(TiddlyMapError);var DependencyError=exports.DependencyError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"TiddlyMap cannot run without: : \"+r))}return t}(TiddlyMapError);var MissingOverrideError=exports.MissingOverrideError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r.constructor.name+' does not override method \"'+e+'\"'))}return t}(TiddlyMapError);var ResourceNotFoundException=exports.ResourceNotFoundException=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);for(var e=arguments.length,o=Array(e>1?e-1:0),n=1;n<e;n++){o[n-1]=arguments[n]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Cannot resolve \"+r,o))}return t}(TiddlyMapError);var InvalidArgumentException=exports.InvalidArgumentException=function(r){_inherits(t,r);function t(){_classCallCheck(this,t);for(var r=arguments.length,e=Array(r),o=0;o<r;o++){e[o]=arguments[o]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Invalid or missing argument provided\",e))}return t}(TiddlyMapError);\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/exceptions.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/URL": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/URL",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/URL\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/**\n * <<<\n * Lightweight URL manipulation with JavaScript. This library is\n * independent of any other libraries and has pretty simple interface\n * and lightweight code-base. Some ideas of query string parsing\n * had been taken from Jan Wolter.\"\n *\n * @see http://unixpapa.com/js/querystring.html\n * @license MIT\n * @author Mykhailo Stadnyk <mikhus@gmail.com>\n * <<< https://github.com/Mikhus/jsurl\n *\n * @class\n * @param {string} url\n */function Url(t){this.paths=function(t){var e=\"\",r=0,o;if(t&&t.length&&t+\"\"!==t){if(this.isAbsolute()){e=\"/\"}for(o=t.length;r<o;r++){t[r]=encode(t[r])}this.path=e+t.join(\"/\")}t=(this.path.charAt(0)===\"/\"?this.path.slice(1):this.path).split(\"/\");for(r=0,o=t.length;r<o;r++){t[r]=decode(t[r])}return t};this.encode=encode;this.decode=decode;this.isAbsolute=function(){return this.protocol||this.path.charAt(0)===\"/\"};this.toString=function(){return(this.protocol&&this.protocol+\"://\")+(this.user&&encode(this.user)+(this.pass&&\":\"+encode(this.pass))+\"@\")+(this.host&&this.host)+(this.port&&\":\"+this.port)+(this.path&&this.path)+(this.query.toString()&&\"?\"+this.query)+(this.hash&&\"#\"+encode(this.hash))};parse(this,t)}var map={protocol:\"protocol\",host:\"hostname\",port:\"port\",path:\"pathname\",query:\"search\",hash:\"hash\"},defaultPorts={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},parse=function t(e,r){var o=document,s=o.createElement(\"a\"),r=r||o.location.href,i=r.match(/\\/\\/(.*?)(?::(.*?))?@/)||[],n;s.href=r;for(n in map){e[n]=s[map[n]]||\"\"}e.protocol=e.protocol.replace(/:$/,\"\");e.query=e.query.replace(/^\\?/,\"\");e.hash=decode(e.hash.replace(/^#/,\"\"));e.user=decode(i[1]||\"\");e.pass=decode(i[2]||\"\");e.port=defaultPorts[e.protocol]==e.port||e.port==0?\"\":e.port;if(!e.protocol&&!/^([a-z]+:)?\\/\\//.test(r)){var h=new Url(o.location.href.match(/(.*\\/)/)[0]),a=h.path.split(\"/\"),p=e.path.split(\"/\"),c=[\"protocol\",\"user\",\"pass\",\"host\",\"port\"],f=c.length;a.pop();for(n=0;n<f;n++){e[c[n]]=h[c[n]]}while(p[0]==\"..\"){a.pop();p.shift()}e.path=(r.charAt(0)!=\"/\"?a.join(\"/\"):\"\")+\"/\"+p.join(\"/\")}else{e.path=e.path.replace(/^\\/?/,\"/\")}e.paths((e.path.charAt(0)==\"/\"?e.path.slice(1):e.path).split(\"/\"));parseQs(e)},encode=function t(e){return encodeURIComponent(e).replace(/'/g,\"%27\")},decode=function t(e){e=e.replace(/\\+/g,\" \");e=e.replace(/%([ef][0-9a-f])%([89ab][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r,o){var s=parseInt(e,16)-224,i=parseInt(r,16)-128;if(s==0&&i<32){return t}var n=parseInt(o,16)-128,h=(s<<12)+(i<<6)+n;if(h>65535){return t}return String.fromCharCode(h)});e=e.replace(/%([cd][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r){var o=parseInt(e,16)-192;if(o<2){return t}var s=parseInt(r,16)-128;return String.fromCharCode((o<<6)+s)});e=e.replace(/%([0-7][0-9a-f])/gi,function(t,e){return String.fromCharCode(parseInt(e,16))});return e},parseQs=function t(e){var r=e.query;e.query=new function(t){var e=/([^=&]+)(=([^&]*))?/g,r;while(r=e.exec(t)){var o=decodeURIComponent(r[1].replace(/\\+/g,\" \")),s=r[3]?decode(r[3]):\"\";if(this[o]!=null){if(!(this[o]instanceof Array)){this[o]=[this[o]]}this[o].push(s)}else{this[o]=s}}this.clear=function(){for(var t in this){if(!(this[t]instanceof Function)){delete this[t]}}};this.count=function(){var t=0,e;for(e in this){if(!(this[e]instanceof Function)){t++}}return t};this.isEmpty=function(){return this.count()===0};this.toString=function(){var t=\"\",e=encode,r,o;for(r in this){if(this[r]instanceof Function){continue}if(this[r]instanceof Array){var s=this[r].length;if(s){for(o=0;o<s;o++){t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r][o])}}else{t+=(t?\"&\":\"\")+e(r)+\"=\"}}else{t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r])}}return t}}(r)};exports.default=Url;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/url.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.bindTo=exports.getNearestRasterPosition=exports.mod=exports.removeDOMChildNodes=exports.setDomListeners=exports.merge=exports.getRandomLabel=exports.getFirstElementByClassName=exports.pickRandom=exports.hasKeyWithPrefix=exports.getWithoutPrefix=exports.getPropertiesByPrefix=exports.removeArrayElement=exports.isTrue=exports.replaceAll=exports.isInteger=exports.findAndRemoveClassNames=exports.getAncestorWithClass=exports.makeHashMap=exports.getWithoutNewLines=exports.joinAndWrap=exports.parseJSON=exports.hasSubString=exports.inArray=exports.getRandomInt=exports.isEqual=exports.identity=exports.base64=exports.startsWith=exports.getBasename=exports.escapeRegex=exports.hasElements=exports.ucFirst=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var ucFirst=exports.ucFirst=function e(t){return t&&t[0].toUpperCase()+t.slice(1)};var hasElements=exports.hasElements=function e(t){return Object.keys(t).length>0};var escapeRegex=exports.escapeRegex=function e(t){return t.replace(/[-$^?.+*[\\]\\\\(){}|]/g,\"\\\\$&\")};var getBasename=exports.getBasename=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"/\";return t.substring(t.lastIndexOf(r)+1)};var startsWith=exports.startsWith=function e(t,r){return t.substring(0,r.length)===r};var base64=exports.base64=typeof window===\"undefined\"?function(e){return new Buffer(e).toString(\"base64\")}:window.btoa.bind(window);var identity=exports.identity=function e(t){return(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"&&t!==null?JSON.stringify(Object.keys(t).sort().map(function(e){return[e,t[e]]})):null};var isEqual=exports.isEqual=function e(t,r){return identity(t)===identity(r)};var getRandomInt=exports.getRandomInt=function e(t,r){return Math.floor(Math.random()*(r-t)+t)};var inArray=exports.inArray=function e(t,r){return r.indexOf(t)!==-1};var hasSubString=exports.hasSubString=function e(t,r){return t.indexOf(r)!==-1};var parseJSON=exports.parseJSON=function e(t,r){try{return JSON.parse(t)}catch(e){return r}};var joinAndWrap=exports.joinAndWrap=function e(t,r,n){var o=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\" \";return r+t.join(n+o+r)+n};var getWithoutNewLines=exports.getWithoutNewLines=function e(t){return typeof t===\"string\"?t.replace(/[\\n\\r]/g,\" \"):t};var makeHashMap=exports.makeHashMap=function e(t){var r=Object.create(null);Object.defineProperty(r,\"hasOwnProperty\",{enumerable:false,configurable:false,writable:false,value:Object.prototype.hasOwnProperty.bind(r)});if(t){for(var n in t){if(t.hasOwnProperty(n)){r[n]=t[n]}}}return r};var getAncestorWithClass=exports.getAncestorWithClass=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"||typeof r!==\"string\"){return}while(t.parentNode&&t.parentNode!==document){t=t.parentNode;if(t.classList.contains(r)){return t}}};var findAndRemoveClassNames=exports.findAndRemoveClassNames=function e(t){for(var r=t.length;r--;){var n=document.getElementsByClassName(t[r]);for(var o=n.length;o--;){n[o].classList.remove(t[r])}}};var isInteger=exports.isInteger=Number.isInteger||function(e){return typeof e===\"number\"&&isFinite(e)&&Math.floor(e)===e};var replaceAll=exports.replaceAll=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];for(var o=n.length;o--;){var s=n[o];var i=r;if(Array.isArray(s)){i=s[1];s=s[0]}t=t.replace(s,i)}return t};var isTrue=exports.isTrue=function e(t,r){if(t==null){return!!r}else if(typeof t===\"string\"){var n=parseInt(t);return isNaN(n)?t===\"true\":n!==0}else if(typeof t===\"boolean\"){return t}else if(typeof t===\"number\"){return n!==0}return false};var removeArrayElement=exports.removeArrayElement=function e(t,r){var n=t.indexOf(r);if(n>-1){return t.splice(n,1)[0]}};var getPropertiesByPrefix=exports.getPropertiesByPrefix=function e(t,r,n){var o=makeHashMap();for(var s in t){if(startsWith(s,r)){o[n?s.substr(r.length):s]=t[s]}}return o};var getWithoutPrefix=exports.getWithoutPrefix=function e(t,r){return startsWith(t,r)?t.substr(r.length):t};var hasKeyWithPrefix=exports.hasKeyWithPrefix=function e(t,r){for(var n in t){if(startsWith(n,r)){return true}}return false};var pickRandom=exports.pickRandom=function e(t){return t[getRandomInt(0,t.length-1)]};var getFirstElementByClassName=exports.getFirstElementByClassName=function e(t,r,n){var o=(r||document).getElementsByClassName(t)[0];if(!o&&(typeof n===\"boolean\"?n:true)){var s='Missing element with class \"'+t+'\" inside '+r;throw new _exception.EnvironmentError(s)}return o};var getRandomLabel=exports.getRandomLabel=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r=pickRandom([\"exciting\",\"notable\",\"epic\",\"new\",\"fancy\",\"great\",\"cool\",\"fresh\",\"funky\",\"clever\"]);var n=(t.object||pickRandom([\"concept\",\"idea\",\"thought\",\"topic\",\"subject\"]))+(t.plural?\"s\":\"\");return\"My \"+r+\" \"+n};var _merge=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){t={}}for(var n in r){if(r.hasOwnProperty(n)){if(r[n]!=null){t[n]=_typeof(r[n])===\"object\"?e(t[n],r[n]):r[n]}}}return t};var merge=exports.merge=function e(t){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o<r;o++){n[o-1]=arguments[o]}for(var s=0,i=n.length;s<i;s++){var a=n[s];if(a!=null&&(typeof a===\"undefined\"?\"undefined\":_typeof(a))===\"object\"){t=_merge(t,a)}}return t};var setDomListeners=exports.setDomListeners=function e(t,r,n,o){o=typeof o===\"boolean\"?o:false;t=t+\"EventListener\";for(var s in n){var i=n[s];if(typeof i===\"function\"){r[t](s,i,o)}else{r[t](s,i[0],typeof i[1]===\"boolean\"?i[1]:o)}}};var removeDOMChildNodes=exports.removeDOMChildNodes=function e(t){for(var r=t.childNodes.length;r--;){t.removeChild(t.childNodes[r])}};var mod=exports.mod=function e(t,r){var n=t%r;return Math.floor(n>=0?n:n+r)};var getNearestRasterPosition=exports.getNearestRasterPosition=function e(t,r){var n=t.x,o=t.y;var s=r/2;var i=mod(n,r);var a=mod(o,r);return{x:i<s?n-i:n-i+r,y:a<s?o-a:o-a+r}};var bindTo=exports.bindTo=function e(t,r){for(var n=r.length;n--;){var o=t[r[n]];t[r[n]]=o.bind(t)}};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/basic.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var generateDraftTitle=exports.generateDraftTitle=function e(n){var r=0,t=void 0;do{t=\"Draft \"+(r?r+1+\" \":\"\")+\"of '\"+n+\"'\";r++}while($tw.wiki.tiddlerExists(t));return t};var makeDraftTiddler=exports.makeDraftTiddler=function e(n){var r=$tw.wiki.findDraft(n);if(r){return $tw.wiki.getTiddler(r)}var t=$tw.wiki.getTiddler(n);r=generateDraftTitle(n);var l=new $tw.Tiddler(t,{title:r,\"draft.title\":n,\"draft.of\":n},$tw.wiki.getModificationFields());$tw.wiki.addTiddler(l);return l};var getFullScreenApis=exports.getFullScreenApis=function e(){var n=document,r=n.body,t={_requestFullscreen:r.webkitRequestFullscreen!==undefined?\"webkitRequestFullscreen\":r.mozRequestFullScreen!==undefined?\"mozRequestFullScreen\":r.msRequestFullscreen!==undefined?\"msRequestFullscreen\":r.requestFullscreen!==undefined?\"requestFullscreen\":\"\",_exitFullscreen:n.webkitExitFullscreen!==undefined?\"webkitExitFullscreen\":n.mozCancelFullScreen!==undefined?\"mozCancelFullScreen\":n.msExitFullscreen!==undefined?\"msExitFullscreen\":n.exitFullscreen!==undefined?\"exitFullscreen\":\"\",_fullscreenElement:n.webkitFullscreenElement!==undefined?\"webkitFullscreenElement\":n.mozFullScreenElement!==undefined?\"mozFullScreenElement\":n.msFullscreenElement!==undefined?\"msFullscreenElement\":n.fullscreenElement!==undefined?\"fullscreenElement\":\"\",_fullscreenChange:n.webkitFullscreenElement!==undefined?\"webkitfullscreenchange\":n.mozFullScreenElement!==undefined?\"mozfullscreenchange\":n.msFullscreenElement!==undefined?\"MSFullscreenChange\":n.fullscreenElement!==undefined?\"fullscreenchange\":\"\"};if(!t._requestFullscreen||!t._exitFullscreen||!t._fullscreenElement){return null}else{return t}};var flatten=exports.flatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l=r.prefix||\"\";var i={};function u(e,n){Object.keys(e).forEach(function(f){var s=e[f];var c=r.safe&&Array.isArray(s);var a=Object.prototype.toString.call(s);var d=a===\"[object Object]\"||a===\"[object Array]\";var o=n?n+t+f:l+f;if(!c&&d){return u(s,o)}i[o]=s})}u(n);return i};var unflatten=exports.unflatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l={};if(Object.prototype.toString.call(n)!==\"[object Object]\"){return n}function i(e){var n=Number(e);return isNaN(n)||e.indexOf(\".\")!==-1?e:n}Object.keys(n).forEach(function(u){var f=u.split(t);var s=i(f.shift());var c=i(f[0]);var a=l;while(c!==undefined){if(a[s]===undefined){a[s]=typeof c===\"number\"&&!r.object?[]:{}}a=a[s];if(f.length>0){s=i(f.shift());c=i(f[0])}}a[s]=e(n[u],r)});return l};var genUUID=exports.genUUID=function(){var e=\"0123456789abcdefghijklmnopqrstuvwxyz\".split(\"\");return function(){var n=e,r=new Array(36);var t=0,l;for(var i=0;i<36;i++){if(i==8||i==13||i==18||i==23){r[i]=\"-\"}else if(i==14){r[i]=\"4\"}else{if(t<=2)t=33554432+Math.random()*16777216|0;l=t&15;t=t>>4;r[i]=n[i==19?l&3|8:l]}}return r.join(\"\")}}();\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/thirdParty.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.getArrayValuesAsHashmapKeys=exports.getLookupTable=exports.keyOfItemWithProperty=exports.keysOfItemsWithProperty=exports.getDublicates=exports.getId=exports.refreshDataSet=exports.drawRaster=exports.getPrettyFilter=exports.groupByProperty=exports.isEdgeTypeMatch=exports.getEdgeTypeMatches=exports.getDataUri=exports.convert=exports.getValues=exports.getIterableCollection=exports.getLabel=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getLabel=exports.getLabel=function e(t,r){var i=wikiUtils.getTiddler(t);return(i&&i.fields[r]?i.fields[r]:i.fields.title).replace(\"\\\\n\",\"\\n\")};var getIterableCollection=exports.getIterableCollection=function e(t){return t instanceof _vis2.default.DataSet?t.get():t};var getValues=exports.getValues=function e(t){if(Array.isArray(t)){return t}else if(t instanceof _vis2.default.DataSet){return t.get({returnType:\"Array\"})}var r=[];var i=Object.keys(t);for(var a=i.length;a--;){r.push(t[i[a]])}return r};var convert=exports.convert=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){throw new _exception.InvalidArgumentException(t,r)}if(r===\"object\"){r=\"hashmap\"}var i={array:function e(t){return getValues(t)},hashmap:function e(t){return t instanceof _vis2.default.DataSet?t.get({returnType:\"Object\"}):t},dataset:function e(t){return t instanceof _vis2.default.DataSet?t:!Array.isArray(t)?getValues(t):new _vis2.default.DataSet(t)}};return i[r](t)};var getDataUri=exports.getDataUri=function e(t,r,i){var a=wikiUtils.getTiddler(t);r=r||a.fields.type||\"image/svg+xml\";var s=a.fields.text;var o=$tw.config.contentTypeInfo[r].encoding;if(r===\"image/svg+xml\"){s=s.replace(/\\r?\\n|\\r/g,\" \");if(!basicUtils.hasSubString(\"xmlns\",s)){s=s.replace(/<svg/,'<svg xmlns=\"http://www.w3.org/2000/svg\"')}}if(i&&o!==\"base64\"){o=\"base64\";s=basicUtils.base64(s)}return\"data:\"+r+\";\"+o+\",\"+s};var eTyFiltAutoPrefix=\"[all[]] \";var getEdgeTypeMatches=exports.getEdgeTypeMatches=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments[1];if(!r){r=wikiUtils.getTiddlersByPrefix($tm.path.edgeTypes+\"/\",{iterator:\"eachTiddlerPlusShadows\",removePrefix:true})}if(r!=null&&!Array.isArray(r)){r=Object.keys(r)}return wikiUtils.getMatches(eTyFiltAutoPrefix+t,r)};var isEdgeTypeMatch=exports.isEdgeTypeMatch=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";return wikiUtils.isMatch(t,eTyFiltAutoPrefix+r)};var groupByProperty=exports.groupByProperty=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s in a){var o=t[a[s]];var n=o[r];if(n==null){throw\"Cannot group by property \"+r}else{if(!Array.isArray(i[n])){i[n]=[]}i[n].push(o)}}return i};var getPrettyFilter=exports.getPrettyFilter=function e(t){t=t.trim().replace(\"][\",\"] [\");var r=/[+-]?\\[.+?[\\]\\}\\>]\\]/g;var i=t.match(r);t=t.replace(r,\" [] \").trim();var a=t.split(/\\s+/);var s=0;var o=[];for(var n=0,l=a.length;n<l;n++){o[n]=a[n]===\"[]\"?i[s++]:a[n]}return o.join(\"\\n\")};var drawRaster=exports.drawRaster=function e(t,r,i,a){var s=arguments.length>4&&arguments[4]!==undefined?arguments[4]:\"#D9D9D9\";var o=basicUtils.getNearestRasterPosition(i,a),n=o.x,l=o.y;var u=t.canvas.width/r;var p=t.canvas.height/r;var f=a*2;var v=Math.ceil(u/a/2)*a+f;var c=Math.ceil(p/a/2)*a+f;var y=n-v;var d=n+v;var g=l-c;var h=l+c;t.beginPath();for(var b=y;b<d;b+=a){t.moveTo(b,g);t.lineTo(b,h)}for(var x=g;x<=h;x+=a){t.moveTo(y,x);t.lineTo(d,x)}t.strokeStyle=s;t.fillStyle=s;t.stroke()};var refreshDataSet=exports.refreshDataSet=function e(t,r){var i=t.get({returnType:\"Object\"});var a=[];var s=[];var o=[];var n=[];for(var l in r){if(i[l]){if(basicUtils.isEqual(i[l],r[l])){continue}s.push(l);t.remove(l)}else{a.push(l)}if(r[l].x===undefined){o.push(l)}t.add(r[l])}for(var u in i){if(!r[u]){n.push(u);t.remove(u)}}return{withoutPosition:o,inserted:a,updated:s,removed:n}};var getId=exports.getId=function e(t){return wikiUtils.getTiddler(t).fields[\"tmap.id\"]};var getDublicates=exports.getDublicates=function e(t){var r=getId(t);if(!r){return[]}var i=wikiUtils.getTiddlersWithField(\"tmap.id\",r,{limit:2});delete i[wikiUtils.getTiddlerRef(t)];return Object.keys(i)};var keysOfItemsWithProperty=exports.keysOfItemsWithProperty=function e(t,r,i,a){t=getIterableCollection(t);var s=Object.keys(t);var o=[];a=typeof a===\"number\"?a:s.length;for(var n=0,l=s.length;n<l;n++){var u=s[n];if(_typeof(t[u])===\"object\"&&t[u][r]){if(!i||t[u][r]===i){o.push(u);if(o.length===a){break}}}}return o};var keyOfItemWithProperty=exports.keyOfItemWithProperty=function e(t,r,i){return keysOfItemsWithProperty(t,r,i,1)[0]};var getLookupTable=exports.getLookupTable=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s=0,o=a.length;s<o;s++){var n=a[s];var l=r?t[n][r]:t[n];var u=typeof l===\"undefined\"?\"undefined\":_typeof(l);if(u===\"string\"&&l!==\"\"||u===\"number\"){if(!i[l]){i[l]=r?t[n]:true;continue}}if(r){throw new Error('Cannot use \"'+l+'\" as lookup table index')}}return i};var getArrayValuesAsHashmapKeys=exports.getArrayValuesAsHashmapKeys=getLookupTable;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/tmap.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/utils": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/utils",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.utils=undefined;var _extends=Object.assign||function(i){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var e in t){if(Object.prototype.hasOwnProperty.call(t,e)){i[e]=t[e]}}}return i};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/utils\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _thirdParty=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\");var thirdPartyUtils=_interopRequireWildcard(_thirdParty);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);var _tmap=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\");var tMapUtils=_interopRequireWildcard(_tmap);function _interopRequireWildcard(i){if(i&&i.__esModule){return i}else{var r={};if(i!=null){for(var t in i){if(Object.prototype.hasOwnProperty.call(i,t))r[t]=i[t]}}r.default=i;return r}}var utils=exports.utils=_extends({},basicUtils,thirdPartyUtils,wikiUtils,tMapUtils);exports.default=utils;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/utils.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.touch=exports.addTiddler=exports.getTiddlersByPrefix=exports.getTiddlerWithField=exports.getTiddlersWithField=exports.deleteByPrefix=exports.cp=exports.mv=exports.addTWlisteners=exports.getChildWidgetByProperty=exports.getMergedTiddlers=exports.isSystemOrDraft=exports.isDraft=exports.setText=exports.getText=exports.isLeftVersionGreater=exports.getEntry=exports.setEntry=exports.clone=exports.writeFieldData=exports.parseFieldData=exports.isPreviewed=exports.notify=exports.registerTransclude=exports.getElementNode=exports.getTiddlerNode=exports.getTranscludeNode=exports.isMatch=exports.getMatches=exports.moveFieldValues=exports.deleteTiddlers=exports.setField=exports.setSidebarTab=exports.tiddlerExists=exports.getField=exports.getTiddler=exports.getTiddlerRef=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var getTiddlerRef=exports.getTiddlerRef=function e(t){if(t instanceof $tw.Tiddler){return t.fields.title}else if(typeof t===\"string\"){return t}else{throw new _exception.InvalidArgumentException(t)}};var getTiddler=exports.getTiddler=function e(t){return $tw.wiki.getTiddler(t instanceof $tw.Tiddler?t.fields.title:t)};var getField=exports.getField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"\";var d=getTiddler(t);return!d?i:d.fields[r]||i};var tiddlerExists=exports.tiddlerExists=function e(t){if(!t){return false}var r=getTiddlerRef(t);return Boolean(r&&($tw.wiki.tiddlerExists(r)||$tw.wiki.isShadowTiddler(r)))};var setSidebarTab=exports.setSidebarTab=function e(t){setText(getTiddlersByPrefix(\"$:/state/tab/sidebar-\")[0],t)};var setField=exports.setField=function e(t,r,i){if(!t||!r){return}var d=getTiddlerRef(t);var s=_defineProperty({title:d},r,i);var n=$tw.wiki.getTiddler(d,true);if(r!==\"text\"&&n&&!n.fields.text){s.text=\"\"}n=new $tw.Tiddler(n,s);$tw.wiki.addTiddler(n);return n};var deleteTiddlers=exports.deleteTiddlers=function e(t){var r=Object.keys(t);var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");for(var d=r.length;d--;){var s=getTiddlerRef(t[r[d]]);if(!$tw.wiki.tiddlerExists(t[r[d]])){continue}var n=i.indexOf(s);if(n!==-1){i.splice(n,1);setField(\"$:/StoryList\",\"list\",i)}$tw.wiki.deleteTiddler(s)}};var moveFieldValues=exports.moveFieldValues=function e(t,r,i,d,s){if(t===r)return;var n=s||$tw.wiki.allTitles();for(var l=n.length;l--;){var a=getTiddler(n[l]);if(a.isDraft()||!a.fields[t]){continue}if(!d&&$tw.wiki.isSystemTiddler(n[l])){continue}var o=_defineProperty({},r,a.fields[t]);if(i){o[t]=undefined}$tw.wiki.addTiddler(new $tw.Tiddler(a,o))}};var getMatches=exports.getMatches=function e(t,r,i){var d=undefined;var s=$tw.wiki;if(typeof t===\"string\"){t=s.compileFilter(t)}if(r!=null&&(typeof r===\"undefined\"?\"undefined\":_typeof(r))===\"object\"){if(!Array.isArray(r)){r=Object.keys(r)}d=function e(t){for(var i=r.length;i--;){var d=s.getTiddler(r[i]);t(d,r[i])}}}return t.call(s,d,i)};var isMatch=exports.isMatch=function e(t,r){return getTiddlerRef(t)===getMatches(r,[getTiddlerRef(t)])[0]};var getTranscludeNode=exports.getTranscludeNode=function e(t,r){return{type:\"transclude\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[],isBlock:!!r}};var getTiddlerNode=exports.getTiddlerNode=function e(t){return{type:\"tiddler\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[]}};var getElementNode=exports.getElementNode=function e(t,r,i){return{type:\"element\",tag:t,attributes:{class:{type:\"string\",value:r}},children:i?[{type:\"text\",text:i}]:[]}};var registerTransclude=exports.registerTransclude=function e(t,r,i){basicUtils.removeArrayElement(t.children,t[r]);t[r]=t.makeChildWidget(getTranscludeNode(i,true));t.children.push(t[r]);return t[r]};var notify=exports.notify=function e(t){var r=\"$:/temp/tiddlymap/notify\";$tw.wiki.addTiddler(new $tw.Tiddler({title:r,text:t}));$tw.notifier.display(r)};var isPreviewed=exports.isPreviewed=function e(t){if(!t){return false}if(t.domNode.isTiddlyWikiFakeDom){return true}if(t.getVariable(\"tv-tiddler-preview\")){return true}else{var r=\"tc-tiddler-preview-preview\";return!!basicUtils.getAncestorWithClass(t.parentDomNode,r)}};var parseFieldData=exports.parseFieldData=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"text\";var i=arguments[2];var d=getTiddler(t);if(!d){return i}return basicUtils.parseJSON(d.fields[r],i)};var writeFieldData=exports.writeFieldData=function e(t,r,i,d){if((typeof i===\"undefined\"?\"undefined\":_typeof(i))!==\"object\"){return}d=parseInt(d);d=d>0&&r===\"text\"?d:0;setField(t,r,JSON.stringify(i,null,d))};var clone=exports.clone=function e(t,r){setField(t,\"title\",r)};var setEntry=exports.setEntry=function e(t,r,i){$tw.wiki.setText(getTiddlerRef(t),null,r,i)};var getEntry=exports.getEntry=function e(t,r,i){var d=$tw.wiki.getTiddlerData(getTiddlerRef(t),{});return d[r]==null?i:d[r]};var isLeftVersionGreater=exports.isLeftVersionGreater=function e(t,r){return t!==r&&$tw.utils.checkVersions(t,r)};var getText=exports.getText=function e(t,r){return getField(t,\"text\",r)};var setText=exports.setText=function e(t,r){setField(t,\"text\",r)};var isDraft=exports.isDraft=function e(t){var r=getTiddler(t);return r&&r.isDraft()};var isSystemOrDraft=exports.isSystemOrDraft=function e(t){return $tw.wiki.isSystemTiddler(getTiddlerRef(t))||isDraft(t)};var getMergedTiddlers=exports.getMergedTiddlers=function e(t,r){if(!Array.isArray(t)){return}for(var i=t.length;i--;){t[i]=getTiddler(t[i])}if(!t.length){return}t.push({title:r||t[0].fields.title},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());t.unshift(null);return new(Function.prototype.bind.apply($tw.Tiddler,t))};var getChildWidgetByProperty=exports.getChildWidgetByProperty=function e(t,r,i){var d=t.children;for(var s=d.length;s--;){var n=d[s];if(n[r]===i){return n}else{n=e(n,r,i);if(n){return n}}}};var addTWlisteners=exports.addTWlisteners=function e(t,r,i){for(var d in t){r.addEventListener(d,t[d].bind(i))}};var mv=exports.mv=function e(t,r,i,d){if(t===r||!t||!r){return}i=typeof i===\"boolean\"?i:false;d=typeof d===\"boolean\"?d:true;var s=getTiddlersByPrefix(t);var n=basicUtils.makeHashMap();for(var l=s.length;l--;){var a=s[l];var o=a.replace(t,r);if($tw.wiki.tiddlerExists(o)&&!i){return}n[a]=o}for(var f in n){setField(f,\"title\",n[f]);if(d){$tw.wiki.deleteTiddler(f)}}return n};var cp=exports.cp=function e(t,r,i){return mv(t,r,i,false)};var deleteByPrefix=exports.deleteByPrefix=function e(t,r){if(!t){return}r=r||$tw.wiki.allTitles();var i=[];for(var d=r.length;d--;){if(basicUtils.startsWith(r[d],t)){$tw.wiki.deleteTiddler(r[d]);i.push(i[d])}}return i};var getTiddlersWithField=exports.getTiddlersWithField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var d=i.tiddlers||$tw.wiki.allTitles();var s=i.isIncludeDrafts===true;var n=basicUtils.makeHashMap();var l=Object.keys(d);var a=$tw.utils.hop;var o=i.limit||0;for(var f=l.length;f--;){var u=getTiddler(d[l[f]]);var p=u.fields;if(a(p,t)&&(!a(p,\"draft.of\")||s)){if(!r||p[t]===r){n[p.title]=u;if(--o===0){break}}}}return n};var getTiddlerWithField=exports.getTiddlerWithField=function e(t,r){return Object.keys(getTiddlersWithField(t,r,{limit:1}))[0]};var getTiddlersByPrefix=exports.getTiddlersByPrefix=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=r.removePrefix===true;var d=[];var s=$tw.wiki[r.iterator||\"each\"];s(function(e,r){if(basicUtils.startsWith(r,t)){d.push(i?basicUtils.getWithoutPrefix(r,t):r)}});return d};var addTiddler=exports.addTiddler=function e(t,r){var i=getTiddler(t);if(!r&&i){return i}i=new $tw.Tiddler({title:t,text:\"\"},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());$tw.wiki.addTiddler(i);return i};var touch=exports.touch=function e(t){if(!t){return}var r=new $tw.Tiddler(getTiddler(t),$tw.wiki.getModificationFields());$tw.wiki.addTiddler(r)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/wiki.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/macro/tmap": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.params=exports.name=exports.run=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\ntitle: $:/plugins/felixhayashi/tiddlymap/js/macro/tmap\ntype: application/javascript\nmodule-type: macro\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var name=\"tmap\";var params=getParamSlots(5);function run(){this.substVarRefs=this.substituteVariableReferences;var e=command[arguments[0]];var t=null;if(typeof e===\"function\"){var r=Array.prototype.slice.call(arguments,1);t=e.apply(this,r)}return typeof t===\"string\"?t:\"\"}function getParamSlots(e){var t=[];for(var r=0;r<e;r++){t.push({name:\"arg\"+r})}return t}var command=_utils2.default.makeHashMap();command.basename=function(e){var t=this.getVariable(\"currentTiddler\");return _utils2.default.getBasename(t,e)};command.datauri=function(e,t){return _utils2.default.getDataUri(e,t,true)};command.testJSON=function(e){var t=$tw.wiki.getTiddler(this.getVariable(\"currentTiddler\"));try{JSON.parse(t.fields[e]);return\"valid\"}catch(e){return\"malformed\"}};command.splitAndSelect=function(e,t){var r=this.getVariable(\"currentTiddler\");var a=r.split(e)[t];return a!=null?a:r};command.concat=function(){var e=\"\";for(var t=1,r=arguments.length;t<r;t++){e+=arguments[t]}return e};command.uuid=function(){return _utils2.default.genUUID()};command.regRepl=function(){var e=this.substVarRefs(arguments[0]);var t=arguments[1];var r=this.substVarRefs(arguments[2]);var a=this.substVarRefs(arguments[4]);return e.replace(new RegExp(t,a),r)};command.halfOfString=function(){var e=this.substVarRefs(arguments[0]);if(!e){return\"\"}return e.substr(0,Math.ceil(e.length/2))};command.isETyVisible=function(e,t){e=new _ViewAbstraction2.default(e);var r=command.getETyId.call(this,e,t);return\"\"+e.isEdgeTypeVisible(r)};command.getETyId=function(e,t){e=new _ViewAbstraction2.default(e);var r=_EdgeType2.default.getInstance(t||this.getVariable(\"currentTiddler\"));if(!r.namespace){var a=_EdgeType2.default.getIdParts(r.id),n=a.marker,i=a.name;var u=e.getConfig(\"edge_type_namespace\");r=_EdgeType2.default.getInstance(_EdgeType2.default.getId(n,u,i))}return r.id};command.scale=function(){var e=\"\";for(var t=1,r=parseInt(arguments[0]);t<r;t++){e+=\"[[\"+t+\"]]\"}return e};command.mergeFields=function(){var e=_utils2.default.getTiddler(arguments[0]);var t=arguments[1];var r=arguments[2]||\" \";if(!e)return;var a=_utils2.default.getPropertiesByPrefix(e.fields,t);var n=\"\";for(var i in a){if(typeof a[i]===\"string\"){n+=a[i]+r}}return n};command.option=function(e,t){if(typeof $tm==\"undefined\"){return\"\"}var r=$tm;var a=e.split(\".\");for(var n=0;n<a.length;n++){if((typeof r===\"undefined\"?\"undefined\":_typeof(r))==\"object\"&&r[a[n]]){r=r[a[n]]}}if(t&&typeof r===\"string\"&&_utils2.default.hasSubString(t)&&r.lastIndexOf(t)+t.length===r.length){r=r+t}return r};exports.run=run;exports.name=name;exports.params=params;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/macro/MapMacro.js.map\n",
"type": "application/javascript",
"module-type": "macro"
},
"$:/plugins/felixhayashi/tiddlymap/js/Adapter": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Adapter",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Adapter\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _contrastcolour=require(\"$:/core/modules/macros/contrastcolour.js\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Adapter=function(){function e(t,i){_classCallCheck(this,e);this.getTiddlerById=t.getTiddlerById.bind(t);this.getId=t.getIdByTiddler.bind(t);this.assignId=t.assignId.bind(t);this.edgeTypeSubscriberRegistry=i;this.indeces=$tm.indeces;this.wiki=$tw.wiki;this.visShapesWithTextInside=_utils2.default.getLookupTable([\"ellipse\",\"circle\",\"database\",\"box\",\"text\"])}_createClass(e,[{key:\"deleteEdge\",value:function e(t){return this._processEdge(t,\"delete\")}},{key:\"insertEdge\",value:function e(t){return this._processEdge(t,\"insert\")}},{key:\"deleteEdges\",value:function e(t){t=_utils2.default.convert(t,\"array\");for(var i=t.length;i--;){this.deleteEdge(t[i])}}},{key:\"_processEdge\",value:function e(t,i){$tm.logger(\"debug\",\"Edge\",i,t);var r=this.getTiddlerById(t.from);if(!r||!_utils2.default.tiddlerExists(r)){return}var a=_utils2.default.getTiddler(r);var s=this.indeces.allETy[t.type]||_EdgeType2.default.getInstance(t.type);var l=this.edgeTypeSubscriberRegistry.getAllForType(s);var n=i+\"Edge\";for(var d=l.length;d--;){l[d][n](a,t,s)}if(i===\"insert\"&&!s.exists()){s.save()}return t}},{key:\"getAdjacencyList\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Creating adjacency list\");if(!i.edges){var r=_utils2.default.getMatches(env.selector.allPotentialNodes);i.edges=this.getEdgesForSet(r,i.toWL,i.typeWL)}var a=_utils2.default.groupByProperty(i.edges,t||\"to\");$tm.stop(\"Creating adjacency list\");return a}},{key:\"getNeighbours\",value:function e(t){var i=this;var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Get neighbours\");var a=r.addProperties,s=r.toWL,l=r.typeWL,n=r.steps;var d=this.indeces.allETy;var o=_utils2.default.getArrayValuesAsHashmapKeys(t);var u=_ViewAbstraction2.default.exists(r.view)?new _ViewAbstraction2.default(r.view):null;var f=_utils2.default.makeHashMap();var g=_utils2.default.makeHashMap();var c=parseInt(n)>0?n:1;var v=r.direction||u&&u.getConfig(\"neighbourhood_directions\");var y=!v||v===\"both\";var h=y||v===\"in\";var p=y||v===\"out\";var _=u&&\"[all[]] \"+u.getNodeFilter(\"raw\");var b=this.getAdjacencyList(\"to\",r);var m=function e(t,r,s){f[t.id]=t;var l=i.getTiddlerById(t[r]);if(u&&_utils2.default.isTrue($tm.config.sys.nodeFilterNeighbours)&&!_utils2.default.isMatch(l,_)){return}if(!o[l]){o[l]=true;var n=i.makeNode(l,a);if(n){g[n.id]=n;s.push(l)}}};var w=void 0;for(w=0;w<c&&t.length;w++){var T=[];for(var k=t.length;k--;){if(_utils2.default.isSystemOrDraft(t[k])){continue}var E=this.getEdges(t[k],s,l);for(var N in E){var A=d[E[N].type];if(y||p&&A.toArrow||h&&A.invertedArrow){m(E[N],\"to\",T)}}var I=b[this.getId(t[k])];if(!I){continue}for(var j=I.length;j--;){var x=d[I[j].type];if(y||h&&x.toArrow||p&&x.invertedArrow){m(I[j],\"from\",T)}}}t=T}var S={nodes:g,edges:f};$tm.logger(\"debug\",\"Retrieved neighbourhood\",S,\"steps\",w);$tm.stop(\"Get neighbours\");return S}},{key:\"getGraph\",value:function e(t){var i=t.view,r=t.matches,a=t.includeNeighboursOf;$tm.start(\"Assembling Graph\");i=new _ViewAbstraction2.default(i);r=r||_utils2.default.getMatches(i.getNodeFilter(\"compiled\"));var s=parseInt(i.getConfig(\"neighbourhood_scope\"));var l=i.getEdgeTypeFilter(\"whitelist\");var n=_utils2.default.getArrayValuesAsHashmapKeys(r);var d=this.getEdgesForSet(r,n,l);var o=void 0;if(i.isEnabled(\"filter_nodes_by_edge_types\")){o=new Set;Object.values(d).forEach(function(e){o.add(e.from);o.add(e.to)})}var u={edges:d,nodes:this.selectNodesByReferences(r,{view:i,outputType:\"hashmap\"})};if(s){var f=a?r.filter(a):r;var g=this.getNeighbours(f,{steps:s,view:i,typeWL:l,addProperties:{type:\"tmap:neighbour\"}});Object.assign(u.nodes,g.nodes);Object.assign(u.edges,g.edges);if(i&&i.isEnabled(\"show_inter_neighbour_edges\")){var c=this.getTiddlersByIds(g.nodes);var v=_utils2.default.getArrayValuesAsHashmapKeys(c);Object.assign(u.edges,this.getEdgesForSet(c,v))}}if(o){var y=_utils2.default.makeHashMap();Object.values(u.nodes).forEach(function(e){if(o.has(e.id)){y[e.id]=e}});u.nodes=y}this.attachStylesToNodes(u.nodes,i);$tm.stop(\"Assembling Graph\");$tm.logger(\"debug\",\"Assembled graph:\",u);return u}},{key:\"getEdges\",value:function e(t,i,r){var a=_utils2.default.getTiddler(t);if(!a||_utils2.default.isSystemOrDraft(a)){return}var s=this.indeces.allETy;var l=_utils2.default.makeHashMap();var n=this.edgeTypeSubscriberRegistry.getAll();for(var d=0,o=n.length;d<o;d++){Object.assign(l,n[d].loadEdges(a,i,r))}for(var u in l){var f=l[u];if(!f.from||!f.to){continue}var g=s[f.type]||_EdgeType2.default.getInstance(f.type);addStyleToEdge(l[u],g);l[u]=f}return l}},{key:\"getEdgesForSet\",value:function e(t,i,r){var a=_utils2.default.makeHashMap();for(var s=t.length;s--;){Object.assign(a,this.getEdges(t[s],i,r))}return a}},{key:\"selectEdgesByType\",value:function e(t){var i=_utils2.default.makeHashMap(_defineProperty({},_EdgeType2.default.getInstance(t).id,true));return this.getEdgesForSet(this.getAllPotentialNodes(),null,i)}},{key:\"getAllPotentialNodes\",value:function e(){return _utils2.default.getMatches($tm.selector.allPotentialNodes)}},{key:\"_processEdgesWithType\",value:function e(t,i){var r=i.action,a=i.newName;t=_EdgeType2.default.getInstance(t);$tm.logger(\"debug\",\"Processing edges\",t,r);var s=this.selectEdgesByType(t);if(r===\"rename\"){new _EdgeType2.default(a,t).save()}for(var l in s){this._processEdge(s[l],\"delete\");if(r===\"rename\"){s[l].type=a;this._processEdge(s[l],\"insert\")}}this.wiki.deleteTiddler(t.fullPath)}},{key:\"selectNodesByReferences\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},r=i.addProperties,a=i.outputType;var s=_utils2.default.makeHashMap();var l=Object.keys(t);for(var n=l.length;n--;){var d=this.makeNode(t[l[n]],r);if(d){s[d.id]=d}}return _utils2.default.convert(s,a)}},{key:\"selectNodesByIds\",value:function e(t,i){var r=this.getTiddlersByIds(t);return this.selectNodesByReferences(r,i)}},{key:\"selectNodeById\",value:function e(t,i){i=Object.assign({},i,{outputType:\"hashmap\"});var r=this.selectNodesByIds([t],i);return r[t]}},{key:\"removeNodeType\",value:function e(t){t=_NodeType2.default.getInstance(t);this.wiki.deleteTiddler(t.fullPath)}},{key:\"makeNode\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r||_utils2.default.isSystemOrDraft(r))return;var a=_utils2.default.merge({},i);a.id=this.assignId(r);a.tRef=r.fields.title;var s=r.fields[$tm.field.nodeLabel];a.label=(s&&$tm.field.nodeLabel!==\"title\"?this.wiki.renderText(\"text/plain\",\"text/vnd-tiddlywiki\",s):r.fields.title).replace(\"\\\\n\",\"\\n\");return a}},{key:\"getInheritedNodeStyles\",value:function e(t){var i=this.getTiddlersByIds(t);var r={};var a=this.indeces.glNTy;for(var s=a.length;s--;){var l=a[s];var n=[];if(l.id===\"tmap:neighbour\"){for(var d in t){if(t[d].type===\"tmap:neighbour\"){n.push(this.getTiddlerById(d))}}}else{n=l.getInheritors(i)}for(var o=n.length;o--;){var u=n[o];var f=r[u]=r[u]||{};f.style=_utils2.default.merge(f.style||{},l.style);if(l[\"fa-icon\"]){f[\"fa-icon\"]=l[\"fa-icon\"]}else if(l[\"tw-icon\"]){f[\"tw-icon\"]=l[\"tw-icon\"]}}}return r}},{key:\"attachStylesToNodes\",value:function e(t,i){i=_ViewAbstraction2.default.exists(i)?new _ViewAbstraction2.default(i):null;var r=this.getInheritedNodeStyles(t);var a=i?i.getNodeData():_utils2.default.makeHashMap();var s=i&&!i.isEnabled(\"physics_mode\");for(var l in t){var n=this.getTiddlerById(l);var d=this.wiki.getTiddler(n);var o=d.fields;var u=t[l];var f=void 0;var g=r[n];if(g){_utils2.default.merge(u,g.style);f=getIcon(g[\"fa-icon\"],g[\"tw-icon\"])}if(o.color){u.color=o.color}if(o[\"tmap.style\"]){_utils2.default.merge(u,_utils2.default.parseJSON(o[\"tmap.style\"]))}f=getIcon(o[\"tmap.fa-icon\"],o[\"icon\"])||f;var c=a[l];if(c){_utils2.default.merge(u,c);if(s){u.fixed={x:u.x!=null,y:u.y!=null}}f=getIcon(c[\"fa-icon\"],c[\"tw-icon\"])||f}var v=u.color!==null&&_typeof(u.color)===\"object\";var y=v?u.color.background:u.color;u.color={background:y,border:v?u.color.border:undefined};addNodeIcon(u,f);u.font=u.font||{};if(u.shape&&!this.visShapesWithTextInside[u.shape]){u.font.color=\"black\"}else if(!u.font.color&&y){u.font.color=(0,_contrastcolour.run)(y,y,\"black\",\"white\")}if(u.shape===\"icon\"){u.label=\"\\n\"+u.label;if(_typeof(u.icon)===\"object\"){u.icon.color=y}}}if(i){var h=t[i.getConfig(\"central-topic\")];if(h){_utils2.default.merge(h,this.indeces.glNTyById[\"tmap:central-topic\"].style)}}}},{key:\"deleteNode\",value:function e(t){if(!t){return}var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;var r=this.getTiddlerById(i);if(r){_utils2.default.deleteTiddlers([r])}var a=_utils2.default.getMatches(env.selector.allViews);for(var s=a.length;s--;){var l=new _ViewAbstraction2.default(a[s]);l.removeNode(i)}var n=this.getNeighbours([r]);this.deleteEdges(n.edges)}},{key:\"deleteNodes\",value:function e(t){for(var i=t.length;i--;){this.deleteNode(t[i])}}},{key:\"insertNode\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var i=arguments[1];var r=arguments[2];t.label=this.wiki.generateNewTitle(t.label||_utils2.default.getRandomLabel());var a=new $tw.Tiddler({text:\"\"},r,{title:t.label,\"tmap.id\":null},this.wiki.getModificationFields(),this.wiki.getCreationFields());this.wiki.addTiddler(a);t=this.makeNode(a,t);if(_ViewAbstraction2.default.exists(i)){new _ViewAbstraction2.default(i).addNode(t)}return t}},{key:\"getTiddlersByIds\",value:function e(t){if(Array.isArray(t)){t=_utils2.default.getArrayValuesAsHashmapKeys(t)}else if(t instanceof _vis2.default.DataSet){t=_utils2.default.getLookupTable(t,\"id\")}var i=[];for(var r in t){var a=this.getTiddlerById(r);if(a){i.push(a)}}return i}}]);return e}();var getFAdigits=function e(t){return t.length===4?t:t.substr(3,4)};var addNodeIcon=function e(t,i){if(!i){return}if(i.fa){t.shape=\"icon\";t.icon={shape:\"icon\",face:\"FontAwesome\",color:t.color,code:String.fromCharCode(\"0x\"+getFAdigits(i.fa))};if(t.size){t.icon.size=t.size}return}if(i.tw){var r=_utils2.default.getTiddler(i.tw);if(!r){return}if(r.fields[\"_canonical_uri\"]){t.image=r.fields[\"_canonical_uri\"];t.shape=\"image\"}else if(r.fields.text){t.image=_utils2.default.getDataUri(r);t.shape=\"image\"}}};var removeObsoleteViewData=function e(t,i){if(!_ViewAbstraction2.default.exists(i)||!t){return}i=new _ViewAbstraction2.default(i);var r=i.getNodeData();var a=0;for(var s in r){if(t[s]===undefined&&r[s]!=null){r[s]=undefined;a++}}if(a){$tm.logger(\"debug\",\"[Cleanup]\",\"Removed obsolete node data:\",i.getLabel(),a);i.saveNodeData(r)}};var addStyleToEdge=function e(t,i){t=Object.assign(t,i.style);if(_utils2.default.isTrue(i[\"show-label\"],true)){t.label=i.getLabel()}};var getIcon=function e(t,i){return t&&{fa:t}||i&&{tw:i}};exports.default=Adapter;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Adapter.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/CallbackManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var CallbackManager=function(){function e(){_classCallCheck(this,e);this.callbacks=_utils2.default.makeHashMap();this.logger=$tm.logger;this.wiki=$tw.wiki}_createClass(e,[{key:\"add\",value:function e(t,a){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;this.logger(\"debug\",'A callback was registered for changes of \"'+t+'\"');this.callbacks[t]={execute:a,isDeleteOnCall:l}}},{key:\"remove\",value:function e(t){if(!t){return}if(typeof t===\"string\"){t=[t]}for(var a=t.length;a--;){var l=t[a];if(this.callbacks[l]){this.logger(\"debug\",'Deleting callback for \"'+l+'\"');delete this.callbacks[l]}}}},{key:\"refresh\",value:function e(t){if(this.callbacks.length==0){return}for(var a in t){if(!this.callbacks[a]){continue}if(this.wiki.getTiddler(a)){this.logger(\"debug\",\"Executing a callback for: \"+a);this.callbacks[a].execute(a);if(!this.callbacks.isDeleteOnCall){continue}}this.remove(a)}}}]);return e}();exports.default=CallbackManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/CallbackManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _rebuilders;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/caretaker\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Fixer=require(\"$:/plugins/felixhayashi/tiddlymap/js/Fixer\");var _Fixer2=_interopRequireDefault(_Fixer);var _Adapter=require(\"$:/plugins/felixhayashi/tiddlymap/js/Adapter\");var _Adapter2=_interopRequireDefault(_Adapter);var _tracker=require(\"$:/plugins/felixhayashi/tiddlymap/js/services/tracker\");var _tracker2=_interopRequireDefault(_tracker);var _EdgeTypeSubscriberRegistry=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\");var _EdgeTypeSubscriberRegistry2=_interopRequireDefault(_EdgeTypeSubscriberRegistry);var _DialogManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/DialogManager\");var _DialogManager2=_interopRequireDefault(_DialogManager);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _vis3=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis4=_interopRequireDefault(_vis3);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _URL=require(\"$:/plugins/felixhayashi/tiddlymap/js/URL\");var _URL2=_interopRequireDefault(_URL);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}var init=function e(){window.$tm=_extends({},env,{utils:_utils2.default,url:new _URL2.default(window.location.href)});cleanup();registerPublicClasses($tm);updateGlobals($tm);createMetaFile($tm.logger);var t=attachIndeces($tm);var r=getInitializedServices(t);Object.assign($tm,r);loadDefaultView($tm.config.sys.defaultView);r.fixer.fix();$tm.registry=[];setInterval(routineCheck,5e3);registerChangeListener($tm.callbackManager);registerMousemoveListener();registerClickListener();if($tm.url.query[\"tmap-enlarged\"]){prepareFullscreenStart($tm.url)}$tm.logger(\"warn\",\"TiddlyMap's caretaker successfully started\")};var getInitializedServices=function e(t){var r=new _tracker2.default(d);var i=$tw.modules.applyMethods(\"tmap.edgetypehandler\");var a=new _EdgeTypeSubscriberRegistry2.default(i,t.allETy,r);var s=new _Adapter2.default(r,a);var l=new _CallbackManager2.default;var n=new _DialogManager2.default(l);var d=new _Fixer2.default(s,$tm.logger,t.glNTy);return{edgeTypeSubscriberRegistry:a,tracker:r,adapter:s,callbackManager:l,dialogManager:n,fixer:d}};var registerPublicClasses=function e(t){t.keycharm=_vis4.default.keycharm;t.NodeType=_NodeType2.default;t.EdgeType=_EdgeType2.default;t.ViewAbstraction=_ViewAbstraction2.default};var attachOptions=function e(t){var r=t;if(!r.config)r.config=_utils2.default.makeHashMap();r.config.sys=_utils2.default.merge(r.config.sys,_utils2.default.unflatten($tw.wiki.getTiddlerData(env.ref.sysUserConf)));r.config.vis=_utils2.default.merge({},_vis2.default,_utils2.default.parseFieldData(env.ref.visUserConf));if(!r.field)r.field=_utils2.default.makeHashMap();$tw.utils.extend(r.field,r.config.sys.field)};var attachIndeces=function e(t){$tm.start(\"Attaching Indeces\");t.indeces=t.indeces||{};updateNodeTypesIndeces(t.indeces);updateEdgeTypesIndeces(t.indeces);$tm.stop(\"Attaching Indeces\");return t.indeces};var updateNodeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.nodeTypes;var i=t.glNTy=[];var a=t.glNTyById=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var s=_NodeType2.default.getInstance(t);a[s.id]=s;i.push(s)}});i.sort(function(e,t){return e.priority-t.priority})};var updateEdgeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.edgeTypes;var i=t.allETy=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var a=_EdgeType2.default.getInstance(t);i[a.id]=a}});if($tm.edgeTypeSubscriberRegistry){$tm.edgeTypeSubscriberRegistry.updateIndex(i)}};var attachFunctions=function e(t){var r=t;var i=function e(){};if(_utils2.default.isTrue($tm.config.sys.debug,false)&&console){r.logger=function(){if(arguments.length<2)return;var e=Array.prototype.slice.call(arguments);var t=e.shift(e);var r=console.hasOwnProperty(t)?t:\"debug\";console[r].apply(console,e)};r.start=function(e){console.time(\"[timer] \"+e)};r.stop=function(e){console.timeEnd(\"[timer] \"+e)}}else{r.logger=r.start=r.stop=i}r.notify=_utils2.default.isTrue($tm.config.sys.notifications)?_utils2.default.notify:i};var routineCheck=function e(){for(var t=$tm.registry.length;t--;){var r=$tm.registry[t];if(!r.destruct||!r.isZombieWidget)return;if(r.isZombieWidget()){$tm.logger(\"warn\",\"a widget will be removed\");$tm.registry.splice(t,1);r.destruct()}}};var dispatchUpdates=function e(t){var r=$tm.registry;for(var i=r.length;i--;){var a=r[i];if(a.update&&a.isZombieWidget&&!a.isZombieWidget()){a.update(t)}}};var checkForClone=function e(t){var r=_utils2.default.getDublicates(t);if(!r.length){return}_utils2.default.setField(t,\"tmap.edges\",undefined);$tm.tracker.assignId(t,true);$tm.dialogManager.open(\"dublicateIdInfo\",{param:{changedTiddler:t.fields.title,filter:_utils2.default.joinAndWrap(r,\"[[\",\"]]\"),id:_utils2.default.getId(t)}})};var updateGlobals=function e(t){attachOptions($tm);attachFunctions($tm);$tm.logger(\"warn\",\"Rebuilt globals\")};var lastCurrentTiddler=null;var updateLiveViewTrigger=function e(t){if(t[\"$:/HistoryList\"]){var r=_utils2.default.getField(\"$:/HistoryList\",\"current-tiddler\")}else if(t[\"$:/temp/focussedTiddler\"]){var r=_utils2.default.getField(\"$:/temp/focussedTiddler\",\"text\")}if(r!=null&&lastCurrentTiddler!==r){lastCurrentTiddler=r;_utils2.default.setField(\"$:/temp/tmap/currentTiddler\",\"text\",r)}};var printChanges=function e(t,r){if(!_utils2.default.isTrue($tm.config.sys.debug,false))return;$tm.logger(\"warn\",\"=== Refresh \"+r+\" ===\");for(var i in t){var a=t[i].deleted?\"[Deleted]\":\"[Modified]\";$tm.logger(\"warn\",a,i,$tw.wiki.getTiddler(i))}};var registerMousemoveListener=function e(){$tm.mouse={};var t=function e(t){$tm.mouse=t};window.addEventListener(\"mousemove\",t,false)};var registerClickListener=function e(){var t=$tm.path.tempPopups;window.addEventListener(\"click\",function(e){var r=_utils2.default.getTiddlersByPrefix(t);for(var i=r.length;i--;){if(_utils2.default.getText(r[i]))break}if(i===-1)return;if(!$tw.utils.hasClass(e.target,\"tc-drop-down\")&&!_utils2.default.getAncestorWithClass(e.target,\"tc-drop-down\")){for(var i=r.length;i--;){_utils2.default.setText(r[i],\"\")}}},false)};var registerChangeListener=function e(t){var r=0;$tw.wiki.addEventListener(\"change\",function(e){$tm.start(\"Caretaker handling changes\");printChanges(e,r++);t.refresh(e);var i={changedTiddlers:{}};for(var a in e){var s=_utils2.default.getTiddler(a);if(s&&s.isDraft()){continue}var l=handleTiddlerChange(a,s,i);if(l){i.changedTiddlers[a]=e[a]}}dispatchUpdates(i);updateLiveViewTrigger(e);$tm.stop(\"Caretaker handling changes\")})};var rebuilders=(_rebuilders={},_defineProperty(_rebuilders,env.path.options,updateGlobals),_defineProperty(_rebuilders,env.path.nodeTypes,updateNodeTypesIndeces),_defineProperty(_rebuilders,env.path.edgeTypes,updateEdgeTypesIndeces),_rebuilders);var handleTiddlerChange=function e(t,r,i){if($tw.wiki.isSystemTiddler(t)){for(var a in rebuilders){if(_utils2.default.startsWith(t,a)&&!i[a]){$tm.logger(\"warn\",\"[System change]\",a);rebuilders[a]();i[a]=true}}}else if(r){if(r.fields.text===undefined){$tw.wiki.dispatchEvent(\"lazyLoad\",t);return false}checkForClone(r);$tm.tracker.assignId(r)}else{var s=$tm.tracker.getIdByTiddler(t);if(!s){return false}var l=_utils2.default.getTiddlerWithField(\"tmap.id\",s);if(l){$tm.logger(\"warn\",\"[Renamed]\",t,\"into\",l)}else{$tm.adapter.deleteNode(s)}}return true};var cleanup=function e(){_utils2.default.deleteByPrefix(\"$:/temp/felixhayashi\");_utils2.default.deleteByPrefix(\"$:/temp/tiddlymap\");_utils2.default.deleteByPrefix(\"$:/temp/tmap\")};var loadDefaultView=function e(t){if(!t){return}var r=_utils2.default.getTiddler(env.ref.defaultViewHolder);if(r.fields.text===$tm.config.sys.defaultView){return}_utils2.default.setText(env.ref.defaultViewHolder,$tm.config.sys.defaultView)};var prepareFullscreenStart=function e(t){var r=env.ref,i=r.mainEditor,a=r.defaultViewHolder;_utils2.default.setSidebarTab(i);if(_ViewAbstraction2.default.exists(t)){t=new _ViewAbstraction2.default(t);_utils2.default.setField(a,\"text\",t.getLabel())}};var createMetaFile=function e(t){if(_utils2.default.tiddlerExists(env.ref.sysMeta)){return}t(\"warn\",\"Creating meta file\");var r=$tw.wiki.getTiddler(env.path.pluginRoot);$tw.wiki.setTiddlerData(env.ref.sysMeta,{originalVersion:r.fields.version,dataStructureState:\"0.6.9\",showWelcomeMessage:true})};var name=exports.name=\"tmap.caretaker\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"startup\"];var before=exports.before=[\"rootwidget\"];var synchronous=exports.synchronous=true;var startup=exports.startup=init;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Caretaker.js.map\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/DialogManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/DialogManager",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/DialogManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var DialogManager=function(){function e(t,a){_classCallCheck(this,e);this.callbackManager=t;this.context=a}_createClass(e,[{key:\"open\",value:function t(a){var l=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=arguments[2];if(_utils2.default.isTrue($tm.config.sys.suppressedDialogs[a],false)){$tm.logger(\"warning\",\"Suppressed dialog\",a);return}$tm.logger(\"debug\",\"Dialog param object\",l);if(typeof i===\"function\"&&this.context){i=i.bind(this.context)}var r=$tm.path.tempRoot+\"/dialog-\"+_utils2.default.genUUID();var n=_utils2.default.getTiddler($tm.path.dialogs+\"/\"+a);var u={title:r,buttons:n.fields[\"buttons\"]||\"ok_cancel\",classes:\"tmap-modal-content \"+n.fields[\"classes\"],output:r+\"/output\",result:r+\"/result\",temp:r+\"/temp\",template:n.fields.title,templateId:a,currentTiddler:r+\"/output\",text:_utils2.default.getText($tm.path.dialogs)};_utils2.default.touch(u.output);if(l.dialog){if(l.dialog.preselects){$tw.wiki.addTiddler(new $tw.Tiddler({title:u.output},_utils2.default.flatten(l.dialog.preselects)));delete l.dialog.preselects}_utils2.default.merge(u,l.dialog)}u.footer=_utils2.default.getText($tm.path.footers);u=_utils2.default.flatten(u);l=_utils2.default.flatten(l);var s=function t(a){e.getElement(\"hidden-close-button\").click();var l=$tw.wiki.getTiddler(a);var n=l.fields.text;var s=null;if(n){s=$tw.wiki.getTiddler(u.output)}else{$tm.notify(\"operation cancelled\")}if(typeof i===\"function\"){i(n,s)}_utils2.default.deleteByPrefix(r)};this.callbackManager.add(u.result,s,true);var o=new $tw.Tiddler(n,l,u);$tw.wiki.addTiddler(o);$tm.logger(\"debug\",\"Opening dialog\",o);$tw.rootWidget.dispatchEvent({type:\"tm-modal\",param:o.fields.title,paramObject:o.fields});e.addKeyBindings();return o}}],[{key:\"getElement\",value:function e(t){return _utils2.default.getFirstElementByClassName(\"tmap-\"+t)}},{key:\"addKeyBindings\",value:function t(){var a=$tm.keycharm({container:_utils2.default.getFirstElementByClassName(\"tc-modal\")});var l=/tmap-triggers-(.+?)-on-(.+?)(?:\\s|$)/;var i=document.getElementsByClassName(\"tmap-trigger-field\");var r=function t(r){var n=i[r].className.split(\" \");var u=function t(i){var r=n[i].match(l);if(!r){return\"continue\"}var u=r[1];var s=r[2];var o=e.getElement(u);if(!o){return\"continue\"}a.bind(s,function(){if(document.getElementsByClassName(n[i]).length){o.click()}})};for(var s=n.length;s--;){var o=u(s);if(o===\"continue\")continue}};for(var n=i.length;n--;){r(n)}}}]);return e}();exports.default=DialogManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/DialogManager.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/Fixer": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/Fixer",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Fixer\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Fixer=function(){function e(t,i,r){_classCallCheck(this,e);this.adapter=t;this.logger=i;this.wiki=$tw.wiki;this.glNTy=r}_createClass(e,[{key:\"moveEdges\",value:function e(t,i){var r=_utils2.default.getTiddlersByPrefix(t);for(var a=0;a<r.length;a++){var u=_utils2.default.getBasename(r[a]);if(u===\"__noname__\"){u=\"tmap:unknown\"}u=_EdgeType2.default.getInstance(u);if(!u.exists()){u.save()}var n=this.wiki.getTiddlerData(r[a]);for(var s=0;s<n.length;s++){n[s].type=(i?i+\":\":\"\")+u.id;this.adapter.insertEdge(n[s])}this.wiki.deleteTiddler(r[a])}}},{key:\"executeUpgrade\",value:function e(t,i,r){if(!_utils2.default.isLeftVersionGreater(t,i)){return}this.logger(\"debug\",\"Upgrading data structure to \"+t);var a=r();_utils2.default.setEntry(env.ref.sysMeta,\"dataStructureState\",t);return a}},{key:\"fixId\",value:function e(){var t=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.executeUpgrade(\"0.9.2\",t.dataStructureState,function(){if(_utils2.default.isLeftVersionGreater(\"0.9.2\",t.originalVersion)){var e=\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\";var i=_utils2.default.getEntry(e,\"field.nodeId\",\"tmap.id\");_utils2.default.moveFieldValues(i,\"tmap.id\",true,false)}})}},{key:\"fix\",value:function e(){var t=this;var i=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.logger(\"debug\",\"Fixer is started\");this.logger(\"debug\",\"Data-structure currently in use: \",i.dataStructureState);this.executeUpgrade(\"0.7.0\",i.dataStructureState,function(){t.moveEdges(\"$:/plugins/felixhayashi/tiddlymap/graph/edges\",null);var e=env.selector.allViews;var i=_utils2.default.getMatches(e);for(var r=0;r<i.length;r++){var a=new _ViewAbstraction2.default(i[r]);t.moveEdges(a.getRoot()+\"/graph/edges\",a)}});this.executeUpgrade(\"0.7.32\",i.dataStructureState,function(){if(!_ViewAbstraction2.default.exists(\"Live View\")){return}var e=new _ViewAbstraction2.default(\"Live View\");e.setNodeFilter(\"[field:title{$:/temp/tmap/currentTiddler}]\",true);e.setConfig({\"refresh-trigger\":null,\"refresh-triggers\":$tw.utils.stringifyList([\"$:/temp/tmap/currentTiddler\"])})});this.executeUpgrade(\"0.9.0\",i.dataStructureState,function(){var e=env.ref.visUserConf;var i=_utils2.default.unflatten(t.wiki.getTiddlerData(e,{}));if(_typeof(i.groups)===\"object\"){var r=_NodeType2.default.getInstance(\"tmap:neighbour\");r.setStyle(i.groups[\"neighbours\"]);r.save();delete i.groups;t.wiki.setTiddlerData(e,i)}});this.fixId();this.executeUpgrade(\"0.9.16\",i.dataStructureState,function(){for(var e=t.glNTy.length;e--;){t.glNTy[e].save(null,true)}});this.executeUpgrade(\"0.10.3\",i.dataStructureState,function(){var e=env.ref.liveTab;if(_utils2.default.getTiddler(e).hasTag(\"$:/tags/SideBar\")){this.wiki.deleteTiddler(e);_utils2.default.setField(e,\"tags\",\"$:/tags/SideBar\")}});this.executeUpgrade(\"0.11.0\",i.dataStructureState,function(){var e=_utils2.default.getMatches(env.selector.allViews);for(var t=e.length;t--;){var i=new _ViewAbstraction2.default(e[t]);var r=i.getEdgeTypeFilter(\"raw\");var a=\"edge_type_namespace\";i.setConfig(a,i.getConfig(a));var u=env.filter.defaultEdgeTypeFilter;if(r){var n=env.path.edgeTypes;r=_utils2.default.replaceAll(r,\"\",[n,n+\"/\",\"[prefix[\"+n+\"]]\",\"[prefix[\"+n+\"/]]\",[\"[suffix[tw-body:link]]\",\"[[tw-body:link]]\"],[\"[suffix[tw-list:tags]]\",\"[[tw-list:tags]]\"],[\"[suffix[tw-list:list]]\",\"[[tw-body:list]]\"],[\"[suffix[tmap:unknown]]\",\"[[tmap:unknown]]\"],[\"[suffix[unknown]]\",\"[[tmap:unknown]]\"]]);u=\"-[prefix[_]] \"+r}i.setEdgeTypeFilter(u)}})}}]);return e}();exports.default=Fixer;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Fixer.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/startup/listener": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/startup/listener",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var handleCancelDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"\")};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/listener\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var handleClearTiddler=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},a=t.paramObject;var r=a.title,d=a.keep;if(!r)return;var i=_utils2.default.getTiddler(r);var l=i?i.fields:{};var s=d?d.split():[];var n={title:r,text:\"\"};for(var p=s.length;p--;){var o=s[p];n[o]=l[o]}$tw.wiki.deleteTiddler(r);$tw.wiki.addTiddler(new $tw.Tiddler(n))};var handleMixTiddlers=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d=r.tiddlers,i=r.output;if(!d||!i)return;var l=$tw.utils.parseStringArray(d);var s=_utils2.default.getMergedTiddlers(l,i);$tw.wiki.addTiddler(s)};var handleConfirmDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"1\")};var handleSuppressDialog=function e(t){var a=t.paramObject;var r=a.dialog,d=a.suppress;if(_utils2.default.isTrue(d,false)){_utils2.default.setEntry($tm.ref.sysUserConf,\"suppressedDialogs.\"+r,true)}};var handleDownloadGraph=function e(t){var a=t.paramObject;var r=a.view;var d=$tm.adapter.getGraph({view:r});d.nodes=_utils2.default.convert(d.nodes,\"array\");d.edges=_utils2.default.convert(d.edges,\"array\");var i=\"$:/temp/tmap/export\";_utils2.default.setField(i,\"text\",JSON.stringify(d,null,2));$tw.rootWidget.dispatchEvent({type:\"tm-download-file\",param:i,paramObject:{filename:r+\".json\"}})};var handleConfigureSystem=function e(){var t=_utils2.default.getMatches($tm.selector.allPotentialNodes);var a=$tm.adapter.getEdgesForSet(t);var r=$tw.wiki.getTiddler($tm.path.pluginRoot).fields;var d=$tw.wiki.getTiddlerData($tm.ref.sysMeta);var i=_utils2.default.getTiddler($tm.ref.liveTab).hasTag(\"$:/tags/SideBar\");var l={numberOfNodes:\"\"+t.length,numberOfEdges:\"\"+Object.keys(a).length,pluginVersion:\"v\"+r.version,dataStructureVersion:\"v\"+d.dataStructureState,dialog:{preselects:{liveTab:\"\"+i,\"inherited-style\":JSON.stringify(_vis2.default),\"config.vis\":_utils2.default.getText($tm.ref.visUserConf),\"config.sys\":$tm.config.sys}}};$tm.dialogManager.open(\"globalConfig\",l,function(e,t){if(!e)return;var a=_utils2.default.getPropertiesByPrefix(t.fields,\"config.sys.\",true);$tw.wiki.setTiddlerData($tm.ref.sysUserConf,a);if(_utils2.default.isTrue(t.fields.liveTab,false)){_utils2.default.setField($tm.ref.liveTab,\"tags\",\"$:/tags/SideBar\")}else{$tw.wiki.deleteTiddler($tm.ref.liveTab)}_utils2.default.setField($tm.ref.visUserConf,\"text\",t.fields[\"config.vis\"])})};var handleGenerateWidget=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d={dialog:{preselects:{\"var.view\":r.view||$tm.misc.defaultViewLabel}}};$tm.dialogManager.open(\"widgetCodeGenerator\",d)};var handleRemoveEdge=function e(t){var a=t.paramObject;$tm.adapter.deleteEdge(a)};var handleCreateEdge=function e(t){var a=t.paramObject;var r=a.from,d=a.to,i=a.force;if(!r||!d)return;if(_utils2.default.tiddlerExists(r)&&_utils2.default.tiddlerExists(d)||i){_utils2.default.addTiddler(d);_utils2.default.addTiddler(r);var l=new _Edge2.default($tm.adapter.makeNode(r).id,$tm.adapter.makeNode(d).id,a.label,a.id);$tm.adapter.insertEdge(l);$tm.notify(\"Edge inserted\")}};var handleOpenTypeManager=function e(t){var a=t.type,r=t.paramObject,d=r===undefined?{}:r;var i=a.match(/tmap:tm-(.*)/)[1];if(i===\"manage-edge-types\"){var l=\"Edge-Type Manager\";var s=$tm.selector.allEdgeTypes;var n=$tm.path.edgeTypes}else{var l=\"Node-Type Manager\";var s=$tm.selector.allNodeTypes;var n=$tm.path.nodeTypes}var p={mode:i,topic:l,searchSelector:s,typeRootPath:n};var o=$tm.dialogManager.open(\"MapElementTypeManager\",p);if(d.type){handleLoadTypeForm({paramObject:{mode:i,id:d.type,output:o.fields[\"output\"]}})}};var handleLoadTypeForm=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=a.output;var l=i;var s=r===\"manage-edge-types\"?_EdgeType2.default.getInstance(d):_NodeType2.default.getInstance(d);s.save(l,true);if(r===\"manage-edge-types\"){var n=$tm.adapter.selectEdgesByType(s);var p=Object.keys(n).length;_utils2.default.setField(l,\"temp.usageCount\",p)}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(l),{typeTRef:s.fullPath,\"temp.idImmutable\":s.isShipped?\"true\":\"\",\"temp.newId\":s.id,\"inherited-style\":JSON.stringify((r===\"manage-edge-types\"?$tm.config.vis.edges:$tm.config.vis.nodes)||{})}));_utils2.default.deleteByPrefix(\"$:/state/tabs/MapElementTypeManager\")};var handleSaveTypeForm=function e(t){var a=t.paramObject;var r=_utils2.default.getTiddler(a.output);if(!r)return;var d=r.fields.id;var i=a.mode;if(_utils2.default.isTrue(r.fields[\"temp.deleteType\"],false)){deleteType(i,d,r)}else{saveType(i,d,r)}};var deleteType=function e(t,a,r){var d=t===\"manage-edge-types\"?_EdgeType2.default.getInstance(a):_NodeType2.default.getInstance(a);$tm.logger(\"debug\",\"Deleting type\",d);if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(d,{action:\"delete\"})}else{$tm.adapter.removeNodeType(d)}$tw.wiki.addTiddler(new $tw.Tiddler({title:_utils2.default.getTiddlerRef(r)}));$tm.notify(\"Deleted type\")};var saveType=function e(t,a,r){var d=_utils2.default.getTiddler(r);var i=t===\"manage-edge-types\"?_EdgeType2.default:_NodeType2.default;var l=new i(a,d);l.save();var s=d.fields[\"temp.newId\"];if(s&&s!==d.fields[\"id\"]){if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(l,{action:\"rename\",newName:s})}else{new _NodeType2.default(s,l).save();$tw.wiki.deleteTiddler(l.fullPath)}_utils2.default.setField(d,\"id\",s)}$tm.notify(\"Saved type data\")};var handleCreateType=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=d===undefined?\"New type\":d,l=a.output;var s=r===\"manage-edge-types\"?new _EdgeType2.default(i):new _NodeType2.default(i);s.save();handleLoadTypeForm({paramObject:{id:s.id,mode:r,output:l}})};var name=exports.name=\"tmap.listener\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"rootwidget\",\"tmap.caretaker\"];var before=exports.before=[\"story\"];var synchronous=exports.synchronous=true;var startup=exports.startup=function e(){_utils2.default.addTWlisteners({\"tmap:tm-remove-edge\":handleRemoveEdge,\"tmap:tm-load-type-form\":handleLoadTypeForm,\"tmap:tm-save-type-form\":handleSaveTypeForm,\"tmap:tm-create-type\":handleCreateType,\"tmap:tm-create-edge\":handleCreateEdge,\"tmap:tm-suppress-dialog\":handleSuppressDialog,\"tmap:tm-generate-widget\":handleGenerateWidget,\"tmap:tm-download-graph\":handleDownloadGraph,\"tmap:tm-configure-system\":handleConfigureSystem,\"tmap:tm-manage-edge-types\":handleOpenTypeManager,\"tmap:tm-manage-node-types\":handleOpenTypeManager,\"tmap:tm-cancel-dialog\":handleCancelDialog,\"tmap:tm-clear-tiddler\":handleClearTiddler,\"tmap:tm-merge-tiddlers\":handleMixTiddlers,\"tmap:tm-confirm-dialog\":handleConfirmDialog},$tw.rootWidget,undefined)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Listener.js.map\n",
"type": "application/javascript",
"module-type": "startup"
},
"$:/plugins/felixhayashi/tiddlymap/js/services/tracker": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/services/tracker",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/services/tracker\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Tracker=function(){function e(t){_classCallCheck(this,e);this.wiki=$tw.wiki;this.logger=$tm.logger;this._createIndex()}_createClass(e,[{key:\"_createIndex\",value:function e(){var t=this.tById={};var i=this.idByT={};this.wiki.each(function(e,r){if(_utils2.default.isSystemOrDraft(e)){return}var l=e.fields[\"tmap.id\"];if(!l){l=_utils2.default.genUUID();_utils2.default.setField(e,\"tmap.id\",l)}t[l]=r;i[r]=l})}},{key:\"assignId\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r){throw new ResourceNotFoundException(t)}var l=r.fields[\"tmap.id\"];if(!l||i){l=_utils2.default.genUUID();_utils2.default.setField(r,\"tmap.id\",l);this.logger(\"info\",\"Assigning new id to\",r.fields.title)}this.tById[l]=r.fields.title;this.idByT[r.fields.title]=l;return l}},{key:\"getIdByTiddler\",value:function e(t){return this.idByT[_utils2.default.getTiddlerRef(t)]}},{key:\"getIdsByTiddlers\",value:function e(){return this.idByT}},{key:\"getTiddlersByIds\",value:function e(){return this.tById}},{key:\"getTiddlerById\",value:function e(t){return this.tById[t]}}]);return e}();exports.default=Tracker;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Tracker.js.map\n",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget",
"text": "\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function MapConfigWidget(e,t){_widget.widget.call(this);this.initialise(e,t);this.computeAttributes()}MapConfigWidget.prototype=Object.create(_widget.widget.prototype);MapConfigWidget.prototype.render=function(e,t){this.parentDomNode=e;if(!this.domNode){this.domNode=this.document.createElement(\"div\");$tw.utils.addClass(this.domNode,\"tmap-config-widget\");e.insertBefore(this.domNode,t)}if(this.network){this.network.destroy()}this.networkContainer=document.createElement(\"div\");this.domNode.appendChild(this.networkContainer);this.refreshTrigger=this.getAttribute(\"refresh-trigger\");this.pipeTRef=this.getVariable(\"currentTiddler\");this.inheritedFields=$tw.utils.parseStringArray(this.getAttribute(\"inherited\"));this.extensionTField=this.getAttribute(\"extension\");this.mode=this.getAttribute(\"mode\");for(var i=0;i<this.inheritedFields.length;i++){var s=this.inheritedFields[i];var n=_utils2.default.parseFieldData(this.pipeTRef,s,{});if(this.mode===\"manage-edge-types\"){n={edges:n}}else if(this.mode===\"manage-node-types\"){n={nodes:n}}this.inherited=_utils2.default.merge(this.inherited,n)}this.extension=_utils2.default.parseFieldData(this.pipeTRef,this.extensionTField,{});if(this.mode===\"manage-edge-types\"){if(!this.extension.edges){this.extension={edges:this.extension}}}else if(this.mode===\"manage-node-types\"){if(!this.extension.nodes){this.extension={nodes:this.extension}}}var r=_utils2.default.isTrue(this.getAttribute(\"save-only-changes\"));this.changes=r?{}:this.extension;var o={nodes:[],edges:[]};var a=_utils2.default.merge({},this.inherited,this.extension);$tw.utils.extend(a,{configure:{enabled:true,showButton:false,filter:this.getOptionFilter(this.mode)}});this.network=new _vis2.default.Network(this.networkContainer,o,a);this.network.on(\"configChange\",this.handleConfigChange.bind(this));var l=this.parentDomNode.getBoundingClientRect().height;this.parentDomNode.style[\"height\"]=l+\"px\";var h=this.handleResetEvent.bind(this);this.networkContainer.addEventListener(\"reset\",h,false);$tm.registry.push(this);this.enhanceConfigurator()};MapConfigWidget.prototype.handleResetEvent=function(e){var t={};t[e.detail.trigger.path]=null;this.handleConfigChange(t)};MapConfigWidget.prototype.handleConfigChange=function(e){var t=_utils2.default.flatten(this.changes);var i=_utils2.default.flatten(e);var s=Object.keys(_utils2.default.flatten(e))[0];var n=i[s]===null;if(n){t[s]=undefined;this.changes=_utils2.default.unflatten(t)}else{this.changes=_utils2.default.merge(this.changes,e)}var r=_utils2.default.merge({},this.changes);if(this.mode===\"manage-node-types\"){r=r[\"nodes\"]}if(this.mode===\"manage-edge-types\"){r=r[\"edges\"]}_utils2.default.writeFieldData(this.pipeTRef,this.extensionTField,r,$tm.config.sys.jsonIndentation);var o=\"vis-configuration-wrapper\";var a=this.networkContainer.getElementsByClassName(o)[0];a.style.height=a.getBoundingClientRect().height+\"px\";if(n){window.setTimeout(this.refresh.bind(this),0)}else{window.setTimeout(this.enhanceConfigurator.bind(this),50)}};MapConfigWidget.prototype.enhanceConfigurator=function(){var e=\"vis-configuration-wrapper\";var t=this.networkContainer.getElementsByClassName(e)[0].children;var i=[];var s=_utils2.default.flatten(this.changes);for(var n=0;n<t.length;n++){if(!t[n].classList.contains(\"vis-config-item\"))continue;var r=new VisConfElement(t[n],i,n);i.push(r);if(r.level===0)continue;r.setActive(!!s[r.path])}};function VisConfElement(e,t,i){var s=\"getElementsByClassName\";this.el=e;this.labelEl=e[s](\"vis-config-label\")[0]||e[s](\"vis-config-header\")[0]||e;var n=this.labelEl.innerText||this.labelEl.textContent;this.label=n&&n.match(/([a-zA-Z0-9]+)/)[1];this.level=parseInt(e.className.match(/.*vis-config-s(.).*/)[1])||0;this.path=this.label;if(this.level>0){for(var r=i;r--;){var o=t[r];if(o.level<this.level){this.path=o.path+\".\"+this.path;break}}}}VisConfElement.prototype.setActive=function(e){if(!e)return;var t=\"tmap-vis-config-item-\"+(e?\"active\":\"inactive\");$tw.utils.addClass(this.el,t);if(e){var i=document.createElement(\"button\");i.innerHTML=\"reset\";i.className=\"tmap-config-item-reset\";var s=this;i.addEventListener(\"click\",function(e){e.currentTarget.dispatchEvent(new CustomEvent(\"reset\",{detail:{trigger:s},bubbles:true,cancelable:true}))},false);this.el.appendChild(i)}};MapConfigWidget.prototype.getOptionFilter=function(e){var t={nodes:{borderWidth:true,borderWidthSelected:true,widthConstraint:true,heightConstraint:true,color:{background:true,border:true},font:{color:true,size:true},icon:true,labelHighlightBold:false,shadow:true,shape:true,shapeProperties:{borderDashes:true},size:true},edges:{arrows:true,color:true,dashes:true,font:true,labelHighlightBold:false,length:true,selfReferenceSize:false,shadow:true,smooth:true,width:true},interaction:{hideEdgesOnDrag:true,hideNodesOnDrag:true,tooltipDelay:true},layout:{hierarchical:true},manipulation:{initiallyActive:true},physics:{forceAtlas2Based:{gravitationalConstant:true,springLength:true,springConstant:true,damping:true,centralGravity:true}}};if(e===\"manage-edge-types\"){t={edges:t.edges}}else if(e===\"manage-node-types\"){t={nodes:t.nodes}}else{t.edges.arrows=false}return function(e,i){i=i.concat([e]);var s=t;for(var n=0,r=i.length;n<r;n++){if(s[i[n]]===true){return true}else if(s[i[n]]==null){return false}s=s[i[n]]}return false}};MapConfigWidget.prototype.isZombieWidget=function(){return!document.body.contains(this.parentDomNode)};MapConfigWidget.prototype.destruct=function(){if(this.network){this.network.destroy()}};MapConfigWidget.prototype.refresh=function(e){if(this.isZombieWidget()||!this.network)return;if(!e||e[this.refreshTrigger]){this.refreshSelf();return true}};MapConfigWidget.prototype.setNull=function(e){for(var t in e){if(_typeof(e[t])==\"object\"){this.setNull(e[t])}else{e[t]=undefined}}};exports[\"tmap-config\"]=MapConfigWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/ConfigurationWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListItemWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var i=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r));i.arrows=$tm.misc.arrows;return i}_createClass(t,[{key:\"execute\",value:function e(){var t=this.parseTreeNode;var r=$tm.tracker.getTiddlerById(t.neighbour.id);var i=_utils2.default.flatten(t.edge);for(var o in i){if(typeof i[o]===\"string\"){this.setVariable(\"edge.\"+o,i[o])}}this.setVariable(\"currentTiddler\",r);this.setVariable(\"neighbour\",r);var n=$tm.indeces.allETy[i.type];var s=i.to===t.neighbour.id?\"to\":\"from\";var a=s;if(n.biArrow){a=\"bi\"}else{if(s===\"to\"&&n.invertedArrow){a=\"from\"}else if(s===\"from\"&&n.invertedArrow){a=\"to\"}}this.setVariable(\"direction\",a);this.setVariable(\"directionSymbol\",a===\"bi\"?this.arrows.bi:a===\"from\"?this.arrows.in:this.arrows.out);this.makeChildWidgets()}},{key:\"refresh\",value:function e(t){return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-edgelistitem\"]=EdgeListItemWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListItemWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget",
"text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r))}_createClass(t,[{key:\"render\",value:function e(t,r){this.parentDomNode=t;this.computeAttributes();this.execute();this.renderChildren(t,r)}},{key:\"execute\",value:function e(){var t=[this.getVariable(\"currentTiddler\")];var r=this.getAttribute(\"filter\",\"\");var i=this.getAttribute(\"direction\",\"both\");var s=$tm.indeces.allETy;var n=_utils2.default.getEdgeTypeMatches(r,s);var u={typeWL:_utils2.default.getLookupTable(n),direction:i};var o=$tm.adapter.getNeighbours(t,u),a=o.nodes,l=o.edges;var f=[];for(var c in l){var h=l[c];var p=a[h.to]||a[h.from];if(!p){continue}f.push({type:\"tmap-edgelistitem\",edge:h,typeWL:u.typeWL,neighbour:p,children:this.parseTreeNode.children})}if(!f.length){this.wasEmpty=true;f=this.getEmptyMessage()}else if(this.wasEmpty){this.removeChildDomNodes()}this.makeChildWidgets(f)}},{key:\"getEmptyMessage\",value:function e(){var t=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.getAttribute(\"emptyMessage\",\"\"),{parseAsInline:true});return t?t.tree:[]}},{key:\"refresh\",value:function e(t){var r=this.computeAttributes();if(_utils2.default.hasElements(r)){this.refreshSelf();return true}for(var i in t){if(!_utils2.default.isSystemOrDraft(i)){this.refreshSelf();return true}}return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-connections\"]=EdgeListWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget": {
"title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget",
"text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.tiddlymap=exports.tmap=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i){if(Object.prototype.hasOwnProperty.call(i,a)){e[a]=i[a]}}}return e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var a=t[i];a.enumerable=a.enumerable||false;a.configurable=true;if(\"value\"in a)a.writable=true;Object.defineProperty(e,a.key,a)}}return function(t,i,a){if(i)e(t.prototype,i);if(a)e(t,a);return t}}();var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Popup=require(\"$:/plugins/felixhayashi/tiddlymap/js/Popup\");var _Popup2=_interopRequireDefault(_Popup);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _SelectionRectangle=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\");var _SelectionRectangle2=_interopRequireDefault(_SelectionRectangle);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++){i[t]=e[t]}return i}else{return Array.from(e)}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var MapWidget=function(e){_inherits(t,e);function t(e,i){_classCallCheck(this,t);var a=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,i));a.getAttr=a.getAttribute;a.isDebug=_utils2.default.isTrue($tm.config.sys.debug,false);_utils2.default.bindTo(a,[\"constructTooltip\",\"handleResizeEvent\",\"handleClickEvent\",\"handleCanvasKeyup\",\"handleCanvasKeydown\",\"handleCanvasScroll\",\"handleCanvasMouseMove\",\"handleWidgetKeyup\",\"handleWidgetKeydown\",\"handleTriggeredRefresh\",\"handleContextMenu\"]);a.callbackManager=new _CallbackManager2.default;a.computeAttributes();a.editorMode=a.getAttr(\"editor\");a.clickToUse=_utils2.default.isTrue(a.getAttr(\"click-to-use\"),false);a.id=a.getAttr(\"object-id\")||a.getStateQualifier();a.widgetPopupsPath=$tm.path.tempPopups+\"/\"+a.id;if(a.editorMode){_utils2.default.addTWlisteners({\"tmap:tm-create-view\":a.handleCreateView,\"tmap:tm-rename-view\":a.handleRenameView,\"tmap:tm-delete-view\":a.handleDeleteView,\"tmap:tm-delete-element\":a.handleDeleteElement,\"tmap:tm-edit-view\":a.handleEditView,\"tmap:tm-generate-widget\":a.handleGenerateWidget,\"tmap:tm-toggle-central-topic\":a.handleSetCentralTopic,\"tmap:tm-save-canvas\":a.handleSaveCanvas},a,a)}_utils2.default.addTWlisteners({\"tmap:tm-focus-node\":a.handleFocusNode,\"tmap:tm-reset-focus\":a.repaintGraph,\"tmap:tm-neighbourhood-reset-trace\":function e(){a.initAndRenderGraph(a.graphDomNode)}},a,a);a.visListeners={click:a.handleVisSingleClickEvent,doubleClick:a.handleVisDoubleClickEvent,stabilized:a.handleVisStabilizedEvent,selectNode:a.handleVisSelectNode,deselectNode:a.handleVisDeselectNode,dragStart:a.handleVisDragStart,dragEnd:a.handleVisDragEnd,hoverNode:a.handleVisHoverElement,hoverEdge:a.handleVisHoverElement,blurNode:a.handleVisBlurElement,blurEdge:a.handleVisBlurElement,beforeDrawing:a.handleVisBeforeDrawing,afterDrawing:a.handleVisAfterDrawing,stabilizationProgress:a.handleVisLoading,stabilizationIterationsDone:a.handleVisLoadingDone};a.windowDomListeners={resize:[a.handleResizeEvent,false],click:[a.handleClickEvent,false],mousemove:[a.handleCanvasMouseMove,true]};a.canvasDomListeners={keyup:[a.handleCanvasKeyup,true],keydown:[a.handleCanvasKeydown,true],mousewheel:[a.handleCanvasScroll,true],DOMMouseScroll:[a.handleCanvasScroll,true],contextmenu:[a.handleContextMenu,true],MozMousePixelScroll:[a.handleExtraCanvasScroll,true]};a.widgetDomListeners={keyup:[a.handleWidgetKeyup,true],keydown:[a.handleWidgetKeydown,true]};a.conVector={from:null,to:null};return a}_createClass(t,[{key:\"handleConnectionEvent\",value:function e(t,i){var a=this;var s=this.view.getEdgeTypeFilter();var r={fromLabel:$tm.adapter.selectNodeById(t.from).label,toLabel:$tm.adapter.selectNodeById(t.to).label,view:this.view.getLabel(),eTyFilter:s.raw};$tm.dialogManager.open(\"getEdgeType\",r,function(e,r){if(e){var n=_utils2.default.getText(r);var o=_EdgeType2.default.getInstance(n);if(!o.namespace){var l=_EdgeType2.default.getIdParts(o.id),d=l.marker,h=l.name;var u=a.view.getConfig(\"edge_type_namespace\");o=_EdgeType2.default.getInstance(_EdgeType2.default.getId(d,u,h))}if(!o.exists()){o.save()}t.type=o.id;$tm.adapter.insertEdge(t);a.isPreventZoomOnNextUpdate=true;if(!a.view.isEdgeTypeVisible(o)){$tm.dialogManager.open(\"edgeNotVisible\",{type:o.id,view:a.view.getLabel(),eTyFilter:s.pretty})}}if(typeof i===\"function\"){i(e)}})}},{key:\"checkForFreshInstall\",value:function e(){if(!_utils2.default.getEntry($tm.ref.sysMeta,\"showWelcomeMessage\",true)){return}_utils2.default.setEntry($tm.ref.sysMeta,\"showWelcomeMessage\",false);var t={dialog:{preselects:{\"config.storyview\":\"true\",\"config.navigation\":\"true\",\"config.sidebar\":\"true\",\"config.demo\":\"true\"}}};$tm.dialogManager.open(\"welcome\",t,function(e,t){var i=_utils2.default.getPropertiesByPrefix(t.fields,\"config.\",true);if(i[\"storyview\"]&&_utils2.default.tiddlerExists(\"$:/plugins/felixhayashi/topstoryview\")){_utils2.default.setText(\"$:/view\",\"top\")}if(i[\"navigation\"]){_utils2.default.setText(\"$:/config/Navigation/openLinkFromInsideRiver\",\"above\");_utils2.default.setText(\"$:/config/Navigation/openLinkFromOutsideRiver\",\"top\")}if(i[\"sidebar\"]){_utils2.default.setText(\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"fixed-fluid\")}if(i[\"demo\"]){var a=$tm.misc.defaultViewLabel;var s=$tm.adapter.insertNode({label:\"Have fun with\",x:0,y:0},a);var r=$tm.adapter.insertNode({label:\"TiddlyMap!!\",x:100,y:100},a);$tm.adapter.insertEdge({from:s.id,to:r.id})}if(Object.keys(i).length){_utils2.default.touch(\"$:/plugins/felixhayashi/tiddlymap\")}})}},{key:\"openStandardConfirmDialog\",value:function e(t,i){var a={message:i};$tm.dialogManager.open(\"getConfirmation\",a,t)}},{key:\"logger\",value:function e(t,i){if(this.isDebug){var a=Array.prototype.slice.call(arguments,1);a.unshift(\"@\"+this.id);a.unshift(t);$tm.logger.apply(this,a)}}},{key:\"render\",value:function e(t,i){this.parentDomNode=t;this.domNode=this.document.createElement(\"div\");t.insertBefore(this.domNode,i);this.registerClassNames(this.domNode);this.viewHolderRef=this.getViewHolderRef();this.view=this.getView();this.graphBarDomNode=this.document.createElement(\"div\");$tw.utils.addClass(this.graphBarDomNode,\"tmap-topbar\");this.domNode.appendChild(this.graphBarDomNode);this.graphDomNode=this.document.createElement(\"div\");this.domNode.appendChild(this.graphDomNode);$tw.utils.addClass(this.graphDomNode,\"tmap-vis-graph\");if(_utils2.default.isPreviewed(this)){$tw.utils.addClass(this.domNode,\"tmap-static-mode\");this.renderPreview(this.graphBarDomNode,this.graphDomNode)}else{this.renderFullWidget(this.domNode,this.graphBarDomNode,this.graphDomNode);var a=this.document.createElement(\"canvas\");$tw.utils.addClass(a,\"tmap-download-canvas\");this.domNode.appendChild(a)}}},{key:\"renderPreview\",value:function e(t,i){var a=this.view.snapshotTRef;var s=_utils2.default.getTiddler(a);var r=this.document.createElement(\"span\");r.innerHTML=this.view.getLabel();r.className=\"tmap-view-label\";t.appendChild(r);if(s){var n=_utils2.default.getTiddlerNode(this.view.getRoot());n.children.push(_utils2.default.getTranscludeNode(a));this.makeChildWidgets([n]);this.renderChildren(i,i.firstChild)}else{$tw.utils.addClass(i,\"tmap-graph-placeholder\")}}},{key:\"renderFullWidget\",value:function e(t,i,a){_utils2.default.setDomListeners(\"add\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"add\",t,this.widgetDomListeners);this.addLoadingBar(this.domNode);this.tooltip=new _Popup2.default(this.domNode,{className:\"tmap-tooltip\",showDelay:$tm.config.sys.popups.delay});this.contextMenu=new _Popup2.default(this.domNode,{className:\"tmap-context-menu\",showDelay:0,hideOnClick:true,leavingDelay:999999});this.sidebar=_utils2.default.getFirstElementByClassName(\"tc-sidebar-scrollable\");this.isInSidebar=this.sidebar&&!this.domNode.isTiddlyWikiFakeDom&&this.sidebar.contains(this.domNode);this.rebuildEditorBar(i);this.reloadRefreshTriggers();this.initAndRenderGraph(a);$tm.registry.push(this);this.checkForFreshInstall();if(this.id===$tm.misc.mainEditorId){var s=$tm.url;if(s&&s.query[\"tmap-enlarged\"]){this.toggleEnlargedMode(s.query[\"tmap-enlarged\"]);this.setView(s.query[\"tmap-view\"])}}}},{key:\"registerClassNames\",value:function e(t){var i=$tw.utils.addClass;i(t,\"tmap-widget\");if(this.clickToUse){i(t,\"tmap-click-to-use\")}if(this.getAttr(\"editor\")===\"advanced\"){i(t,\"tmap-advanced-editor\")}if(this.getAttr(\"design\")===\"plain\"){i(t,\"tmap-plain-design\")}if(!_utils2.default.isTrue(this.getAttr(\"show-buttons\"),true)){i(t,\"tmap-no-buttons\")}if(this.getAttr(\"class\")){i(t,this.getAttr(\"class\"))}}},{key:\"addLoadingBar\",value:function e(t){this.graphLoadingBarDomNode=this.document.createElement(\"progress\");$tw.utils.addClass(this.graphLoadingBarDomNode,\"tmap-loading-bar\");t.appendChild(this.graphLoadingBarDomNode)}},{key:\"rebuildEditorBar\",value:function e(){this.removeChildDomNodes();var t=this.view;var i=\"tmap-unicode-button\";var a=i+\" tmap-active-button\";var s={widgetQualifier:this.getStateQualifier(),widgetTempPath:this.widgetTempPath,widgetPopupsPath:this.widgetPopupsPath,isViewBound:String(this.isViewBound()),viewRoot:t.getRoot(),viewLabel:t.getLabel(),viewHolder:this.getViewHolderRef(),edgeTypeFilter:t.edgeTypeFilterTRef,allEdgesFilter:$tm.selector.allEdgeTypes,isShowNeighbourhood:String(t.isEnabled(\"neighbourhood_scope\")),tracingBtnClass:t.isEnabled(\"neighbourhood_trace_clicks\")?a:i,neighScopeBtnClass:t.isEnabled(\"neighbourhood_scope\")?a:i,rasterMenuBtnClass:t.isEnabled(\"raster\")?a:i};for(var r in s){this.setVariable(r,s[r])}var n=_utils2.default.getTiddlerNode(t.getRoot());if(this.editorMode===\"advanced\"){n.children.push(_utils2.default.getTranscludeNode($tm.ref.graphBar))}else{var o=_utils2.default.getElementNode(\"span\",\"tmap-view-label\",t.getLabel());n.children.push(o)}n.children.push(_utils2.default.getTranscludeNode($tm.ref.focusButton));this.makeChildWidgets([n]);this.renderChildren(this.graphBarDomNode,this.graphBarDomNode.firstChild)}},{key:\"refresh\",value:function e(t){return false}},{key:\"update\",value:function e(t){if(!this.network||this.isZombieWidget()||_utils2.default.isPreviewed(this)){return}var i=t.changedTiddlers;this.callbackManager.refresh(i);if(this.isViewSwitched(i)||this.hasChangedAttributes()||t[env.path.options]||i[this.view.getRoot()]){this.logger(\"warn\",\"View switched or config changed\");this.isPreventZoomOnNextUpdate=false;this.view=this.getView(true);this.reloadRefreshTriggers();this.trace=_utils2.default.makeHashMap();this.rebuildEditorBar();this.reloadBackgroundImage();this.initAndRenderGraph(this.graphDomNode)}else{var a=this.view.update(t);if(a){this.logger(\"warn\",\"View components modified\");this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}else{if(t[env.path.nodeTypes]||this.hasChangedElements(i)){this.rebuildGraph()}this.refreshChildren(i)}}}},{key:\"hidePopups\",value:function e(t,i){this.tooltip.hide(t,i);this.contextMenu.hide(0,true)}},{key:\"reloadRefreshTriggers\",value:function e(){this.callbackManager.remove(this.refreshTriggers);var t=this.getAttr(\"refresh-triggers\")||this.view.getConfig(\"refresh-triggers\");this.refreshTriggers=$tw.utils.parseStringArray(t)||[];this.logger(\"debug\",\"Registering refresh trigger\",this.refreshTriggers);for(var i=this.refreshTriggers.length;i--;){this.callbackManager.add(this.refreshTriggers[i],this.handleTriggeredRefresh,false)}}},{key:\"rebuildGraph\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.resetFocus;if(_utils2.default.isPreviewed(this)){return}this.logger(\"debug\",\"Rebuilding graph\");this.hidePopups(0,true);this.hasNetworkStabilized=false;var a=this.rebuildGraphData();if(a.changedNodes.withoutPosition.length){i=i||{delay:1e3,duration:1e3};if(!this.view.isEnabled(\"physics_mode\")){var s=this.visOptions.physics;s[s.solver].centralGravity=.25;this.network.setOptions(this.visOptions)}}if(!_utils2.default.hasElements(this.graphData.nodesById)){return}if(i){var r=this.isPreventZoomOnNextUpdate==null?false:typeof this.isPreventZoomOnNextUpdate===\"number\"?this.isPreventZoomOnNextUpdate>Date.now():this.isPreventZoomOnNextUpdate;if(!r){this.network.stabilize();this.resetFocus=i}if(typeof this.isPreventZoomOnNextUpdate!==\"number\"){this.isPreventZoomOnNextUpdate=false}}}},{key:\"getContainer\",value:function e(){return this.domNode}},{key:\"rebuildGraphData\",value:function e(){var t=this;$tm.start(\"Reloading Network\");var i={view:this.view,matches:_utils2.default.getMatches(this.view.getNodeFilter(\"compiled\"))};if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){var a=i.matches;var s=Object.keys(this.trace);var r=[].concat(_toConsumableArray(a.filter(function(e){return!t.trace[e]})),_toConsumableArray(s));i.matches=r;i.includeNeighboursOf=this.view.isEnabled(\"neighbourhood_include_traced_node_neighbours\")?function(e){return r.includes(e)}:function(e){return a.includes(e)}}var n=$tm.adapter.getGraph(i);var o=_utils2.default.refreshDataSet(this.graphData.nodes,n.nodes);var l=_utils2.default.refreshDataSet(this.graphData.edges,n.edges);this.graphData.nodesById=n.nodes;this.graphData.edgesById=n.edges;_utils2.default.setField(\"$:/temp/tmap/nodes/\"+this.view.getLabel(),\"list\",$tm.adapter.getTiddlersByIds(n.nodes));$tm.stop(\"Reloading Network\");return{changedEdges:l,changedNodes:o}}},{key:\"isViewBound\",value:function e(){return _utils2.default.startsWith(this.getViewHolderRef(),$tm.path.localHolders)}},{key:\"isViewSwitched\",value:function e(t){return!_ViewAbstraction2.default.exists(this.view)||t[this.getViewHolderRef()]}},{key:\"hasChangedAttributes\",value:function e(){return Object.keys(this.computeAttributes()).length}},{key:\"hasChangedElements\",value:function e(t){var i=[];var a=this.graphData.nodesById;var s=this.view.isEnabled(\"neighbourhood_scope\");for(var r in t){if(_utils2.default.isSystemOrDraft(r)){continue}if(a[$tm.adapter.getId(r)]||s){return true}if(t[r].modified){i.push(r)}}if(i.length){var n=this.view.getNodeFilter(\"compiled\");var o=_utils2.default.getMatches(n,i);return!!o.length}}},{key:\"initAndRenderGraph\",value:function e(t){var i=this;if(this.network){this._destructVis()}this.logger(\"info\",\"Initializing and rendering the graph\");if(!this.isInSidebar){this.callbackManager.add(\"$:/state/sidebar\",this.handleResizeEvent)}this.visOptions=this.getVisOptions();this.graphData={nodes:new _vis2.default.DataSet,edges:new _vis2.default.DataSet,nodesById:_utils2.default.makeHashMap(),edgesById:_utils2.default.makeHashMap()};this.tooltip.setEnabled(_utils2.default.isTrue($tm.config.sys.popups.enabled,true));this.trace=_utils2.default.makeHashMap();this.network=new _vis2.default.Network(t,this.graphData,this.visOptions);this.canvas=t.getElementsByTagName(\"canvas\")[0];this.networkDomNode=_utils2.default.getFirstElementByClassName(\"vis-network\",t,true);this.canvas.tabIndex=0;for(var a in this.visListeners){this.network.on(a,this.visListeners[a].bind(this))}this.addGraphButtons({\"fullscreen-button\":function e(){i.toggleEnlargedMode(\"fullscreen\")},\"halfscreen-button\":function e(){i.toggleEnlargedMode(\"halfscreen\")}});_utils2.default.setDomListeners(\"add\",this.canvas,this.canvasDomListeners);this.reloadBackgroundImage();this.rebuildGraph({resetFocus:{delay:0,duration:0}});this.handleResizeEvent();this.canvas.focus();if(this.isLiveView()&&this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[_utils2.default.getText(this.refreshTriggers[0])]=true}}},{key:\"handleCanvasKeyup\",value:function e(t){var i=this;var a=this.network.getSelectedNodes();if(t.ctrlKey){t.preventDefault();if(t.keyCode===88){if(this.editorMode){this.handleAddNodesToClipboard(\"move\")}else{$tm.notify(\"Map is read only!\")}}else if(t.keyCode===67){this.handleAddNodesToClipboard(\"copy\")}else if(t.keyCode===86){this.handlePasteNodesFromClipboard()}else if(t.keyCode===65){var s=Object.keys(this.graphData.nodesById);this.network.selectNodes(s)}else if(t.keyCode===49||t.keyCode===50){if(a.length!==1)return;var r=t.keyCode===49?\"from\":\"to\";$tm.notify(_utils2.default.ucFirst(r)+\"-part selected\");this.conVector[r]=a[0];if(this.conVector.from&&this.conVector.to){this.handleConnectionEvent(this.conVector,function(){i.conVector={from:null,to:null}})}}}else{if(t.keyCode===13){if(a.length!==1)return;this.openTiddlerWithId(a[0])}}}},{key:\"handleCanvasKeydown\",value:function e(t){if(t.altKey||t.metaKey){t.preventDefault();if(t.keyCode>=48&&t.keyCode<=57){var i=String.fromCharCode(t.keyCode);this.view.setConfig(\"neighbourhood_scope\",i)}}else{if(t.keyCode===46){t.preventDefault();this.handleRemoveElements(this.network.getSelection())}}}},{key:\"handleDeleteElement\",value:function e(t){var i=t.paramObject.id;var a=i?[i]:this.network.getSelectedNodes();this.handleRemoveElements({nodes:a})}},{key:\"handleCanvasMouseMove\",value:function e(t){var i=this.network;if(!(t.ctrlKey&&t.buttons)){if(this.selectRect){this.selectRect=null;var a=i.getSelectedNodes();$tm.notify(a.length+\" nodes selected\");i.redraw()}return}t.preventDefault();t.stopPropagation();if(!this.domNode.contains(t.target)){return}var s=i.DOMtoCanvas({x:t.offsetX,y:t.offsetY});if(!this.selectRect){this.selectRect=new _SelectionRectangle2.default(s.x,s.y)}this.selectRect.span(s.x,s.y);var r=i.getPositions();var n=i.getSelectedNodes();for(var o in r){if(this.selectRect.isPointWithin(r[o])&&!_utils2.default.inArray(o,n)){n.push(o)}}i.selectNodes(n);this.assignActiveStyle(n);i.redraw()}},{key:\"handleCanvasScroll\",value:function e(t){var i=!!(this.isInSidebar||t.ctrlKey||this.enlargedMode||this.clickToUse&&this.networkDomNode.classList.contains(\"vis-active\"));var a=this.visOptions.interaction;var s=i===a.zoomView;if(i||!s){t.preventDefault()}if(!s){t.stopPropagation();a.zoomView=i;this.network.setOptions({interaction:{zoomView:i}});return false}}},{key:\"handleExtraCanvasScroll\",value:function e(t){t.preventDefault()}},{key:\"handleContextMenu\",value:function e(t){var i=this;t.preventDefault();var a=this.network;this.hidePopups(0,true);var s=a.getNodeAt({x:t.offsetX,y:t.offsetY});if(!s)return;var r=a.getSelectedNodes();if(!_utils2.default.inArray(s,r)){r=[s];a.selectNodes(r)}this.contextMenu.show(r,function(e,t){var a=e.length>1?\"multi\":\"single\";var s=\"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node\";_utils2.default.registerTransclude(i,\"contextMenuWidget\",s);i.contextMenuWidget.setVariable(\"mode\",a);i.contextMenuWidget.render(t)})}},{key:\"handleWidgetKeyup\",value:function e(t){}},{key:\"handleWidgetKeydown\",value:function e(t){if(t.ctrlKey){t.preventDefault();if(t.keyCode===70){t.preventDefault();var i=this.widgetPopupsPath+\"/focus\";_utils2.default.setText(i,_utils2.default.getText(i)?\"\":\"1\")}else{return}}else if(t.keyCode===120){t.preventDefault();this.toggleEnlargedMode(\"halfscreen\")}else if(t.keyCode===121){t.preventDefault();this.toggleEnlargedMode(\"fullscreen\")}else if(t.keyCode===27){t.preventDefault();_utils2.default.deleteByPrefix(this.widgetPopupsPath)}else{return}this.canvas.focus()}},{key:\"handlePasteNodesFromClipboard\",value:function e(){if(!this.editorMode){$tm.notify(\"Map is read only!\");return}if(!$tm.clipBoard||$tm.clipBoard.type!==\"nodes\"){$tm.notify(\"TiddlyMap clipboad is empty!\")}var t=$tm.clipBoard.nodes;var i=Object.keys(t);for(var a=i.length;a--;){var s=i[a];if(this.graphData.nodesById[s]){continue}this.view.addNode(t[s]);this.graphData.nodes.update({id:s})}this.network.selectNodes(i);this.rebuildGraph({resetFocus:{delay:0,duration:0}});$tm.notify(\"pasted \"+i.length+\" nodes into map.\")}},{key:\"handleAddNodesToClipboard\",value:function e(t){var i=this.network.getSelectedNodes();if(!i.length){return}$tm.clipBoard={type:\"nodes\",nodes:this.graphData.nodes.get(i,{returnType:\"Object\"})};$tm.notify(\"Copied \"+i.length+\" nodes to clipboard\");if(t===\"move\"){for(var a=i.length;a--;){this.view.removeNode(i[a])}}this.isPreventZoomOnNextUpdate=true}},{key:\"getVisOptions\",value:function e(){var t=this;var i=$tm.config.vis;var a=_utils2.default.parseJSON(this.view.getConfig(\"vis\"))||{};var s=a.layout||{},r=s.hierarchical;var n={layout:{hierarchical:{enabled:r===undefined||r===null?false:typeof r===\"boolean\"?r:r.enabled!==false}}};var o=_utils2.default.merge({},i,_utils2.default.merge(a,n));o.clickToUse=this.clickToUse;o.manipulation.enabled=!!this.editorMode;o.manipulation.deleteNode=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.deleteEdge=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.addEdge=function(e,i){t.handleConnectionEvent(e);t.resetVisManipulationBar(i)};o.manipulation.addNode=function(e,i){t.handleInsertNode(e);t.resetVisManipulationBar(i)};o.manipulation.editNode=function(e,i){t.handleEditNode(e);t.resetVisManipulationBar(i)};o.interaction.zoomView=!!(this.isInSidebar||this.enlargedMode);o.manipulation.editEdge=false;var l=o.physics;l[l.solver]=l[l.solver]||{};l.stabilization.iterations=1e3;this.logger(\"debug\",\"Loaded graph options\",o);return o}},{key:\"resetVisManipulationBar\",value:function e(t){if(t){t(null)}this.network.disableEditMode();this.network.enableEditMode()}},{key:\"isVisInEditMode\",value:function e(){return this.graphDomNode.getElementsByClassName(\"vis-button vis-back\").length>0}},{key:\"isLiveView\",value:function e(){return this.id===\"live_tab\"}},{key:\"handleCreateView\",value:function e(){var t=this;var i={view:this.view.getLabel()};$tm.dialogManager.open(\"createView\",i,function(e,i){if(!e)return;var a=_utils2.default.getField(i,\"name\");var s=_utils2.default.getField(i,\"clone\",false);if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\");return}if(s&&t.isLiveView()){$tm.notify(\"Forbidden to clone the live view!\");return}var r=new _ViewAbstraction2.default(a,{isCreate:true,protoView:s?t.view:null});t.setView(r)})}},{key:\"handleRenameView\",value:function e(){var t=this;if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var i=this.view.getOccurrences();var a={count:i.length.toString(),refFilter:_utils2.default.joinAndWrap(i,\"[[\",\"]]\")};$tm.dialogManager.open(\"renameView\",a,function(e,i){if(!e){return}var a=_utils2.default.getText(i);if(!a){$tm.notify(\"Invalid name!\")}else if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\")}else{t.view.rename(a);t.setView(t.view)}})}},{key:\"handleEditView\",value:function e(){var t=this;var i=JSON.stringify($tm.config.vis);var a=this.graphData;var s=this.view.getConfig();var r={\"filter.prettyNodeFltr\":this.view.getNodeFilter(\"pretty\"),\"filter.prettyEdgeFltr\":this.view.getEdgeTypeFilter(\"pretty\"),\"inherited-style\":i};var n={view:this.view.getLabel(),createdOn:this.view.getCreationDate(true),numberOfNodes:Object.keys(a.nodesById).length.toString(),numberOfEdges:Object.keys(a.edgesById).length.toString(),dialog:{preselects:$tw.utils.extend({},s,r)}};$tm.dialogManager.open(\"configureView\",n,function(e,i){if(!e){return}var a=_utils2.default.getPropertiesByPrefix(i.fields,\"config.\",true);var s=t.view.getConfig(\"background_image\");t.view.setConfig(a);if(a[\"physics_mode\"]&&!t.view.isEnabled(\"physics_mode\")){t.view.saveNodePositions(t.network.getPositions())}var r=t.view.getConfig(\"background_image\");if(r&&r!==s){$tm.notify(\"Background changed! You may need to zoom out a bit.\")}var n=_utils2.default.getField(i,\"filter.prettyNodeFltr\",\"\");var o=_utils2.default.getField(i,\"filter.prettyEdgeFltr\",\"\");t.view.setNodeFilter(n);t.view.setEdgeTypeFilter(o)})}},{key:\"handleSaveCanvas\",value:function e(){var t=this;var i=\"$:/temp/tmap/snapshot\";this.createAndSaveSnapshot(100,100,i);var a=this.view.getLabel()+\".png\";var s={dialog:{snapshot:i,view:this.view.getLabel(),preselects:{width:this.canvas.width.toString(),height:this.canvas.height.toString(),name:a,action:\"download\"}}};$tm.dialogManager.open(\"saveCanvas\",s,function(e,a){if(!e)return;var r=a.fields.width||s.dialog.preselects.width;var n=a.fields.height||s.dialog.preselects.height;t.createAndSaveSnapshot(r,n,i);var o=a.fields.name||s.dialog.preselects.imageName;var l=a.fields.action;if(l===\"download\"){t.handleDownloadSnapshot(r,n,o)}else if(l===\"wiki\"){_utils2.default.cp(i,o,true);t.dispatchEvent({type:\"tm-navigate\",navigateTo:o})}else if(l===\"placeholder\"){t.view.addPlaceholder(i)}$tw.wiki.deleteTiddler(\"$:/temp/tmap/snapshot\")})}},{key:\"handleDownloadSnapshot\",value:function e(t,i,a){var s=this.document.createElement(\"a\");var r=this.view.getLabel();s.download=a;s.href=this.getCanvasAsBase64({size:{width:t,height:i}});var n=new MouseEvent(\"click\");s.dispatchEvent(n)}},{key:\"createAndSaveSnapshot\",value:function e(t,i,a,s){$tw.wiki.addTiddler(new $tw.Tiddler({title:s||a,type:\"image/png\",text:this.getCanvasAsBase64({size:{width:t,height:i},withoutPreamble:true})},$tw.wiki.getCreationFields(),$tw.wiki.getModificationFields()));return a}},{key:\"getCanvasAsBase64\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.withoutPreamble,a=t.size;var s=this.graphDomNode.style.width;var r=this.graphDomNode.style.height;if(a){this.graphDomNode.style.width=a.width+\"px\";this.graphDomNode.style.height=a.height+\"px\";this.network.redraw()}var n=this.canvas.toDataURL(\"image/png\");if(a){this.graphDomNode.style.width=s;this.graphDomNode.style.height=r;this.network.redraw()}return i?_utils2.default.getWithoutPrefix(n,\"data:image/png;base64,\"):n}},{key:\"handleDeleteView\",value:function e(){var t=this;var i=this.view.getLabel();if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var a=this.view.getOccurrences();if(a.length){var s={count:a.length.toString(),refFilter:_utils2.default.joinAndWrap(a,\"[[\",\"]]\")};$tm.dialogManager.open(\"cannotDeleteViewDialog\",s);return}var r=\"\\n You are about to delete the view ''\"+i+\"''\\n (no tiddler currently references this view).\\n \";this.openStandardConfirmDialog(function(e){if(!e){return}t.view.destroy();t.setView($tm.misc.defaultViewLabel);var a='view \"'+i+\"' deleted\";t.logger(\"debug\",a);$tm.notify(a)},r)}},{key:\"handleTriggeredRefresh\",value:function e(t){this.logger(\"log\",t,\"Triggered a refresh\");var i=_utils2.default.getTiddler(_utils2.default.getText(t));if(this.isLiveView()){if(i){if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[i.fields.title]=true}var a=i.fields[\"tmap.open-view\"]||$tm.config.sys.liveTab.fallbackView;if(a&&a!==this.view.getLabel()){this.setView(a);return}}}this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}},{key:\"handleRemoveElements\",value:function e(t){var i=t.nodes,a=t.edges;if(i.length){this.handleRemoveNodes(i)}else if(a.length){this.handleRemoveEdges(a)}this.resetVisManipulationBar()}},{key:\"handleRemoveEdges\",value:function e(t){$tm.adapter.deleteEdges(this.graphData.edges.get(t));$tm.notify(\"edge\"+(t.length>1?\"s\":\"\")+\" removed\")}},{key:\"handleRemoveNodes\",value:function e(t){var i=this;var a=$tm.adapter.getTiddlersByIds(t);var s={count:t.length.toString(),tiddlers:$tw.utils.stringifyList(a),dialog:{preselects:{\"delete-from\":\"filter\"}}};$tm.dialogManager.open(\"deleteNodeDialog\",s,function(e,a){if(!e)return;var s=0;for(var r=t.length;r--;){var n=i.view.removeNode(t[r]);if(n){s++}}if(a.fields[\"delete-from\"]===\"system\"){$tm.adapter.deleteNodes(t);s=t.length}i.isPreventZoomOnNextUpdate=true;$tm.notify(\"\\n Removed \"+s+\"\\n of \"+t.length+\"\\n from \"+a.fields[\"delete-from\"]+\"\\n \")})}},{key:\"toggleEnlargedMode\",value:function e(t){if(!this.isInSidebar&&t===\"halfscreen\"){return}this.logger(\"log\",\"Toggled graph enlargement\");var i=this.enlargedMode;if(i){this.network.setOptions({clickToUse:this.clickToUse});_utils2.default.findAndRemoveClassNames([\"tmap-has-\"+i+\"-widget\",\"tmap-\"+i]);this.enlargedMode=null;document.body.scrollTop=this.scrollTop}if(!i||i!==t&&(t===\"fullscreen\"||t===\"halfscreen\"&&!this.isInSidebar)){this.scrollTop=document.body.scrollTop;this.enlargedMode=t;var a=this.isInSidebar?this.sidebar:_utils2.default.getFirstElementByClassName(\"tc-story-river\");$tw.utils.addClass(this.document.body,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(a,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(this.domNode,\"tmap-\"+t);this.network.setOptions({clickToUse:false});$tm.notify(\"Toggled \"+t+\" mode\")}this.handleResizeEvent()}},{key:\"handleGenerateWidget\",value:function e(t){$tw.rootWidget.dispatchEvent({type:\"tmap:tm-generate-widget\",paramObject:{view:this.view.getLabel()}})}},{key:\"handleSetCentralTopic\",value:function e(t){var i=t.paramObject;var a=i.id||this.network.getSelectedNodes()[0];if(a===this.view.getConfig(\"central-topic\")){a=\"\"}this.view.setCentralTopic(a)}},{key:\"handleVisStabilizedEvent\",value:function e(t){if(this.hasNetworkStabilized){return}this.hasNetworkStabilized=true;this.logger(\"log\",\"Network stabilized after\",t.iterations,\"iterations\");if(!this.view.isEnabled(\"physics_mode\")){var i=this.graphData.nodesById;var a=[];for(var s in i){if(i[s].x===undefined){a.push(s)}}if(a.length){this.setNodesMoveable(a,false);$tm.notify(a.length+\" nodes were added to the graph\")}var r=this.visOptions.physics;r[r.solver].centralGravity=0;this.network.setOptions(this.visOptions)}if(this.resetFocus){this.fitGraph(this.resetFocus.delay,this.resetFocus.duration);this.resetFocus=null}}},{key:\"handleFocusNode\",value:function e(t){var i=t.param;this.network.focus($tm.adapter.getId(i),{scale:1.5,animation:true})}},{key:\"isZombieWidget\",value:function e(){return this.domNode.isTiddlyWikiFakeDom===true||!this.document.body.contains(this.getContainer())}},{key:\"fitGraph\",value:function e(){var t=this;var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;clearTimeout(this.activeFitTimeout);var s=function e(){if(t.isZombieWidget()){return}t.network.redraw();t.network.fit({animation:{duration:a,easingFunction:\"easeOutQuart\"}})};this.activeFitTimeout=setTimeout(s,i)}},{key:\"handleInsertNode\",value:function e(t){var i=this;$tm.dialogManager.open(\"addNodeToMap\",{},function(e,a){if(!e){return}var s=_utils2.default.getField(a,\"draft.title\").trim();if(_utils2.default.tiddlerExists(s)){if(_utils2.default.isMatch(s,i.view.getNodeFilter(\"compiled\"))){$tm.notify(\"Node already exists\");return}else{t=$tm.adapter.makeNode(s,t);i.view.addNode(t)}}else{var r=new $tw.Tiddler(a,{\"draft.title\":null});t.label=s;$tm.adapter.insertNode(t,i.view,r)}i.isPreventZoomOnNextUpdate=true})}},{key:\"handleEditNode\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t.id);var s=_utils2.default.getTiddler(a);var r=$tm.config.vis.nodes;var n=_utils2.default.parseJSON(this.view.getConfig(\"vis\"),{}).nodes;var o={};o[t.id]=t;var l=$tm.adapter.getInheritedNodeStyles(o);var d=l[a];var h=_utils2.default.merge({},{color:s.fields[\"color\"]},_utils2.default.parseJSON(s.fields[\"tmap.style\"]));var u=this.view.getLabel();var g=_extends({},this.view.getNodeData(t.id));delete g.x;delete g.y;var f={view:u,tiddler:s.fields.title,tidColor:s.fields[\"color\"],tidIcon:s.fields[$tm.field.nodeIcon]||s.fields[\"tmap.fa-icon\"],tidLabelField:\"global.\"+$tm.field.nodeLabel,tidIconField:\"global.\"+$tm.field.nodeIcon,dialog:{preselects:{\"inherited-global-default-style\":JSON.stringify(r),\"inherited-local-default-style\":JSON.stringify(n),\"inherited-group-styles\":JSON.stringify(d),\"global.tmap.style\":JSON.stringify(h),\"local-individual-node-style\":JSON.stringify(g)}}};var v=function e(t,i,a){for(var s=a.length;s--;){f.dialog.preselects[t+\".\"+a[s]]=i[a[s]]||\"\"}};v(\"local\",g,[\"label\",\"tw-icon\",\"fa-icon\",\"open-view\"]);v(\"global\",s.fields,[$tm.field.nodeLabel,$tm.field.nodeIcon,\"tmap.fa-icon\",\"tmap.open-view\"]);$tm.dialogManager.open(\"editNode\",f,function(e,s){if(!e)return;var r=s.fields;var n=_utils2.default.getPropertiesByPrefix(r,\"global.\",true);for(var o in n){_utils2.default.setField(a,o,n[o]||undefined)}var l=_utils2.default.getPropertiesByPrefix(r,\"local.\",true);var d=_utils2.default.parseJSON(r[\"local-individual-node-style\"],{});for(var h in l){d[h]=l[h]||undefined}i.view.saveNodeStyle(t.id,d);i.isPreventZoomOnNextUpdate=true})}},{key:\"handleVisSingleClickEvent\",value:function e(t){var i=_utils2.default.isTrue($tm.config.sys.singleClickMode);if(i&&!this.editorMode){this.handleOpenMapElementEvent(t)}}},{key:\"handleVisDoubleClickEvent\",value:function e(t){if(t.nodes.length||t.edges.length){if(this.editorMode||!_utils2.default.isTrue($tm.config.sys.singleClickMode)){this.handleOpenMapElementEvent(t)}}else{if(this.editorMode){this.handleInsertNode(t.pointer.canvas)}}}},{key:\"handleOpenMapElementEvent\",value:function e(t){var i=this;var a=t.nodes,s=t.edges;if(a.length){var r=this.graphData.nodesById[a[0]];if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[$tm.adapter.getTiddlerById(r.id)]=true;this.isPreventZoomOnNextUpdate=Date.now()+500;this.rebuildGraph();if(this.view.isEnabled(\"neighbourhood_focus_newly_traced_node\")){setTimeout(function(){i.network.focus(r.id,{scale:1,animation:true})},1500)}}if(r[\"open-view\"]){$tm.notify(\"Switching view\");this.setView(r[\"open-view\"])}this.openTiddlerWithId(a[0])}else if(s.length){this.logger(\"debug\",\"Clicked on an Edge\");var n=this.graphData.edgesById[s[0]].type;this.handleEditEdgeType(n)}else{return}this.hidePopups(0,true)}},{key:\"handleEditEdgeType\",value:function e(t){if(!this.editorMode)return;var i=$tm.config.sys.edgeClickBehaviour;if(i!==\"manager\")return;$tw.rootWidget.dispatchEvent({type:\"tmap:tm-manage-edge-types\",paramObject:{type:t}})}},{key:\"handleResizeEvent\",value:function e(t){if(this.isZombieWidget())return;var i=this.getAttr(\"height\");var a=this.getAttr(\"width\");if(this.isInSidebar){var s=this.domNode.getBoundingClientRect();var r=15;a=document.body.clientWidth-s.left-r+\"px\";var n=parseInt(this.getAttr(\"bottom-spacing\"))||15;var o=window.innerHeight-s.top;i=o-n+\"px\"}this.domNode.style.height=i||\"300px\";this.domNode.style.width=a;this.repaintGraph()}},{key:\"handleClickEvent\",value:function e(t){if(this.isZombieWidget()||!this.network)return;if(!this.graphDomNode.contains(t.target)){var i=this.network.getSelection();if(i.nodes.length||i.edges.length){this.logger(\"debug\",\"Clicked outside; deselecting nodes/edges\");this.network.selectNodes([]);this.resetVisManipulationBar()}}else{this.canvas.focus()}if(t.button!==2){this.contextMenu.hide(0,true)}}},{key:\"handleVisSelectNode\",value:function e(t){var i=t.nodes;if(!this.isDraggingAllowed(i)){return}this.assignActiveStyle(i)}},{key:\"isDraggingAllowed\",value:function e(t){var i=t.nodes;return this.editorMode||this.view.isEnabled(\"physics_mode\")}},{key:\"assignActiveStyle\",value:function e(t){if(!Array.isArray(t))t=[t];var i=this.visOptions.nodes.color;for(var a=t.length;a--;){var s=t[a];var r=this.graphData.nodesById[s];var n=_utils2.default.merge({},i,r.color);this.graphData.nodes.update({id:s,color:{highlight:n,hover:n}})}}},{key:\"handleVisDeselectNode\",value:function e(t){}},{key:\"handleVisDragEnd\",value:function e(t){var i=t.nodes;if(!i.length){return}if(i.length===1&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[i[0]];this.graphData.nodes.update(_extends({id:i[0]},_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")))))}this.draggedNode=null;this.setNodesMoveable(i,false)}},{key:\"handleVisBeforeDrawing\",value:function e(t){var i=this.view,a=this.network,s=this.backgroundImage;if(s){t.drawImage(s,0,0)}if(i.isEnabled(\"raster\")){_utils2.default.drawRaster(t,a.getScale(),a.getViewPosition(),parseInt(i.getConfig(\"raster\")))}}},{key:\"handleVisAfterDrawing\",value:function e(t){if(this.selectRect){var i=this.selectRect.getRect();t.beginPath();t.globalAlpha=.5;t.fillStyle=\"#EAFFEF\";t.fillRect.apply(t,_toConsumableArray(i));t.beginPath();t.globalAlpha=1;t.strokeStyle=\"#B4D9BD\";t.strokeRect.apply(t,_toConsumableArray(i))}if(this.draggedNode&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[this.draggedNode];var s=_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")));t.strokeStyle=\"green\";t.fillStyle=\"green\";t.beginPath();t.moveTo(a.x,a.y);t.lineTo(s.x,s.y);t.stroke();t.beginPath();t.arc(s.x,s.y,5,0,Math.PI*2);t.fill()}}},{key:\"constructTooltip\",value:function e(t,i){var a=_utils2.default.parseJSON(t);var s=a.node||a.edge;var r=null;var n=\"text/html\";var o=\"text/vnd-tiddlywiki\";if(a.node){var l=$tm.tracker.getTiddlerById(s);var d=_utils2.default.getTiddler(l);var h=d.fields[$tm.field.nodeInfo];if(h){i.innerHTML=$tw.wiki.renderText(n,o,h)}else if(d.fields.text){_utils2.default.registerTransclude(this,\"tooltipWidget\",l);this.tooltipWidget.setVariable(\"tv-tiddler-preview\",\"yes\");this.tooltipWidget.render(i)}else{i.innerHTML=l}}else{var u=this.graphData.edgesById[s];var g=$tm.indeces.allETy[u.type];if(g.description){r=$tw.wiki.renderText(n,o,g.description)}i.innerHTML=r||g.label||g.id}}},{key:\"handleVisHoverElement\",value:function e(t){if($tm.mouse.buttons)return;var i=t.node||t.edge;var a=JSON.stringify(t);if(t.node){this.assignActiveStyle(i)}if(!this.isVisInEditMode()&&!this.contextMenu.isShown()){var s=this.constructTooltip;this.tooltip.show(a,s)}}},{key:\"handleVisBlurElement\",value:function e(t){this.tooltip.hide()}},{key:\"handleVisLoading\",value:function e(t){var i=t.total,a=t.iterations;this.graphLoadingBarDomNode.style.display=\"block\";this.graphLoadingBarDomNode.setAttribute(\"max\",i);this.graphLoadingBarDomNode.setAttribute(\"value\",a)}},{key:\"handleVisLoadingDone\",value:function e(t){this.graphLoadingBarDomNode.style.display=\"none\"}},{key:\"handleVisDragStart\",value:function e(t){var i=t.nodes;if(!i.length||!this.isDraggingAllowed(i)){return}this.hidePopups(0,true);this.assignActiveStyle(i);this.setNodesMoveable(i,true);if(i.length===1){this.draggedNode=i[0]}}},{key:\"destruct\",value:function e(){_utils2.default.setDomListeners(\"remove\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"remove\",this.domNode,this.widgetDomListeners);this._destructVis()}},{key:\"_destructVis\",value:function e(){if(!this.network)return;_utils2.default.setDomListeners(\"remove\",this.canvas,this.canvasDomListeners);this.network.destroy();this.network=null}},{key:\"openTiddlerWithId\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t);this.logger(\"debug\",\"Opening tiddler\",a,\"with id\",t);if(this.enlargedMode===\"fullscreen\"){var s=$tw.wiki.findDraft(a);var r=!!s;if(!r){var n=\"tm-edit-tiddler\";this.dispatchEvent({type:n,tiddlerTitle:a});s=$tw.wiki.findDraft(a)}var o={draftTRef:s,originalTRef:a};$tm.dialogManager.open(\"fullscreenTiddlerEditor\",o,function(e,t){if(e){var n=\"tm-save-tiddler\";i.dispatchEvent({type:n,tiddlerTitle:s})}else if(!r){_utils2.default.deleteTiddlers([s])}var o=\"tm-close-tiddler\";i.dispatchEvent({type:o,tiddlerTitle:a})})}else{var l=this.domNode.getBoundingClientRect();this.dispatchEvent({type:\"tm-navigate\",navigateTo:a,navigateFromTitle:this.getVariable(\"storyTiddler\"),navigateFromNode:this,navigateFromClientRect:{top:l.top,left:l.left,width:l.width,right:l.right,bottom:l.bottom,height:l.height}})}}},{key:\"getViewHolderRef\",value:function e(){if(this.viewHolderRef){return this.viewHolderRef}this.logger(\"info\",\"Retrieving or generating the view holder reference\");var t=this.getAttr(\"view\");var i=null;if(t){this.logger(\"log\",'User wants to bind view \"'+t+\"' to graph\");var a=$tm.path.views+\"/\"+t;if($tw.wiki.getTiddler(a)){i=$tm.path.localHolders+\"/\"+_utils2.default.genUUID();this.logger(\"log\",'Created an independent temporary view holder \"'+i+'\"');_utils2.default.setText(i,a);this.logger(\"log\",'View \"'+a+\"' inserted into independend holder\")}else{this.logger(\"log\",'View \"'+t+'\" does not exist')}}if(!i){this.logger(\"log\",\"Using default (global) view holder\");i=$tm.ref.defaultViewHolder}return i}},{key:\"setView\",value:function e(t,i){if(!_ViewAbstraction2.default.exists(t)){return}t=new _ViewAbstraction2.default(t);var a=t.getLabel();i=i||this.viewHolderRef;this.logger(\"info\",'Inserting view \"'+a+'\" into holder \"'+i+'\"');$tw.wiki.addTiddler(new $tw.Tiddler({title:i,text:a}));this.update({changedTiddlers:_defineProperty({},i,true)})}},{key:\"getView\",value:function e(t){if(!t&&this.view){return this.view}var i=this.getViewHolderRef();var a=_utils2.default.getText(i);this.logger(\"debug\",\"Retrieved view from holder\");var s=void 0;if(_ViewAbstraction2.default.exists(a)){s=new _ViewAbstraction2.default(a)}else{this.logger(\"debug\",'Warning: View \"'+a+\"\\\" doesn't exist. Default is used instead.\");s=new _ViewAbstraction2.default(\"Default\")}return s}},{key:\"reloadBackgroundImage\",value:function e(t){var i=this;this.backgroundImage=null;var a=this.view.getConfig(\"background_image\");var s=_utils2.default.getTiddler(a);if(!s&&!a)return;var r=new Image;r.onload=function(){i.backgroundImage=r;i.repaintGraph()};if(s){var n=s.fields[\"_canonical_uri\"];if(n){r.src=n}else if(s.fields.text){r.src=$tw.utils.makeDataUri(s.fields.text,s.fields.type)}}else if(a){r.src=a}}},{key:\"repaintGraph\",value:function e(){var t=$tw.utils.hasClass(this.document.body,\"tmap-has-fullscreen-widget\");if(this.network&&(!t||t&&this.enlargedMode)){this.logger(\"info\",\"Repainting the whole graph\");this.network.redraw();this.fitGraph(0,1e3)}}},{key:\"setGraphButtonEnabled\",value:function e(t,i){var a=\"vis-button tmap-\"+t;var s=_utils2.default.getFirstElementByClassName(a,this.domNode);$tw.utils.toggleClass(s,\"tmap-button-enabled\",i)}},{key:\"setNodesMoveable\",value:function e(t,i){if(!t||!t.length||this.view.isEnabled(\"physics_mode\")){return}var a=[];var s=!i;for(var r=t.length;r--;){a.push({id:t[r],fixed:{x:s,y:s}})}this.graphData.nodes.update(a);if(s){this.logger(\"debug\",\"Fixing\",a.length,\"nodes\");this.view.saveNodePositions(this.network.getPositions());this.isPreventZoomOnNextUpdate=true}}},{key:\"addGraphButtons\",value:function e(t){var i=_utils2.default.getFirstElementByClassName(\"vis-navigation\",this.domNode);for(var a in t){var s=this.document.createElement(\"div\");s.className=\"vis-button tmap-\"+a;s.addEventListener(\"click\",t[a].bind(this),false);i.appendChild(s);this.setGraphButtonEnabled(a,true)}}}]);return t}(_widget.widget);exports.tmap=MapWidget;exports.tiddlymap=MapWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/MapWidget.js.map\n",
"type": "application/javascript",
"module-type": "widget"
},
"$:/plugins/felixhayashi/tiddlymap/license": {
"title": "$:/plugins/felixhayashi/tiddlymap/license",
"subtitle": "License",
"caption": "License",
"text": "\\rules except wikilink\n\n!! TiddlyMap\n\nCopyright (c) 2014, Felix Küppers\nAll rights reserved.\n\nTiddlyMap is licensed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]]. For the exact license terms, please visit [[https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]]. \n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n# BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n# Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! Vis.js\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n# Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n# MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/tiddlymap/readme": {
"title": "$:/plugins/felixhayashi/tiddlymap/readme",
"text": "* Please refer to the project-readme hosted at [[https://github.com/felixhayashi/TW5-TiddlyMap]].\n* A demo with several examples and explanations can be found at [[http://tiddlymap.org]]."
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown",
"description": "Automatically assigned to an edge that does not have a type assigned",
"style": "{\"color\":\"gray\"}",
"show-label": "false"
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link",
"description": "A link that is contained in the tiddler's body pointing to another resource.",
"style": "{\"color\":\"orange\", \"dashes\":true}",
"label": "links to",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list",
"description": "Contained in a list of this tiddler",
"style": "{ \"color\": \"red\", \"dashes\":true}",
"label": "listed in",
"text": ""
},
"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags",
"description": "A tag that refers to a tiddler of the same name.",
"style": "{ \"color\": \"darkslategray\", \"dashes\":true}",
"label": "tagged with"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n Please visit the [[online docs|http://tiddlymap.org/Documentation]]\n for more information about the available global options.\n</div>\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Plugin version</th>\n <td><<pluginVersion>></td>\n </tr>\n<!--\n <tr>\n <th align=\"left\">Datastructure version</th>\n <td><<dataStructureVersion>></td>\n </tr>\n-->\n <tr>\n <th align=\"left\">Nodes in system</th>\n <td><<numberOfNodes>></td>\n </tr>\n <tr>\n <th align=\"left\">Edges in system</th>\n <td><<numberOfEdges>></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor",
"caption": "Editor",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Neighbour­hood menu\"\n field:\"config.sys.editorMenuBar.showNeighScopeButton\"\n descr:\"Show or hide the neighbourhood menu button.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Screen­shot menu\"\n field:\"config.sys.editorMenuBar.showScreenshotButton\"\n descr:\"Show or hide the screenshot menu button.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Raster­ menu\"\n field:\"config.sys.editorMenuBar.showRasterMenuButton\"\n descr:\"Show or hide the raster menu button.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields",
"caption": "Field settings",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"Node-icon field\"\n field:\"config.sys.field.nodeIcon\" \n descr:\"Local image used as node image in the graphs.\">>\n <<tmap-row type:\"input-text\"\n title:\"Node-label field\"\n field:\"config.sys.field.nodeLabel\" \n descr:\"Alternative node label to use instead of the title.\">>\n <<tmap-row type:\"input-text\"\n title:\"Node-info field\"\n field:\"config.sys.field.nodeInfo\" \n descr:\"Field used as tooltip when hovering over a node in a graph.\"\n note:\"It is prohibited to use the text field here.\">>\n</table> \n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction",
"caption": "Interaction & behaviour",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Default startup view\"\n field=\"config.sys.defaultView\"\n nochoice=\"Last view used at startup\"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to display at startup\" />\n <<tmap-row type:\"input-checkbox\"\n title:\"Show popups\"\n field:\"config.sys.popups.enabled\"\n descr:\"Set this to true if you want to see automatic\n popups in the map.\">>\n <$list filter=\"[config.sys.popups.enabled[true]]\">\n <<tmap-row type:\"input-text\"\n title:\"Popup delay\"\n field:\"config.sys.popups.delay\"\n descr:\"The time in miliseconds that needs to pass after\n a tooltip is triggered.\">>\n <<tmap-row type:\"input-text\"\n title:\"Popup width\"\n field:\"config.sys.popups.width\"\n descr:\"The default max-width of the popup.\"\n note:\"Make sure you added the desired unit (e.g. `px`).\n Requires a wiki refresh.\">>\n <<tmap-row type:\"input-text\"\n title:\"Popup height\"\n field:\"config.sys.popups.height\"\n descr:\"The default max-height of the popup.\"\n note:\"Make sure you added desired the unit (e.g. `px`).\n Requires a wiki refresh.\">>\n </$list>\n <<tmap-row type:\"input-checkbox\"\n title:\"Allow single click mode\"\n field:\"config.sys.singleClickMode\"\n descr:\"A single click on a node is sufficient to open the\n corresponding tiddler.\"\n note:\"Drag and drop will still work and does not cause a\n tiddler to be opened. Single click is never active in\n the map editor.\">>\n <<tmap-row type:\"input-select\"\n title:\"Edge click behaviour\"\n field:\"config.sys.edgeClickBehaviour\"\n selectFilter:\"[[nothing|Nothing]]\n [[manager|Open edge-type manager]]\"\n descr:\"What should happen when you click on an edge?\">>\n <<tmap-row type:\"input-select\" title:\"Raster size\" field:\"config.sys.raster\"\n selectFilter:\"[[|disabled]] [[5|5px]] [[10|10px]] [[15|15px]] [[20|20px]] [[30|30px]] [[40|40px]]\"\n descr:\"Snap nodes to an invisible raster of the given size after drag'n'drop.\"\n note:\"Only works when the view is not in floating mode\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Apply node-filter to neighbours\"\n field:\"config.sys.nodeFilterNeighbours\"\n descr:\"If checked, neighbours displayed in the map will be filtered\n by the view's node-filter. Otherwise the node-filter will only be used\n to filter the original set of nodes in the map\">>\n</table>\n\n!! Suppressed dialogs\n\n<div class=\"tmap-flash-message tmap-plain\">\n Dialogs that you decided to suppress in the past are listed here.\n Remove the checkmark to enable dialogs again.\n</div>\n\n<table class=\"tmap-config-table\">\n <$list\n filter=\"[<output>fields[]prefix[config.sys.suppressedDialogs]]\"\n emptyMessage=\"–\">\n <$set name=\"dialogName\" value=<<tmap basename \".\">>>\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Suppress '$(dialogName)$' dialog\"\n field=<<currentTiddler>> />\n </$set>\n <br />\n </$list>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab",
"caption": "Live tab",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Show Live tab\"\n field:\"liveTab\" \n descr:\"Show or hide the live tab in the sidebar.\">>\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Fallback view\"\n field=\"config.sys.liveTab.fallbackView\" \n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to display in the sidebar's live tab in\n case the current tiddler did not specify a view\n to open.\" />\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig",
"subtitle": "{{$:/core/images/options-button}} Global configuration of TiddlyMap",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<$macrocall $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity",
"caption": "Verbosity",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n Here you can restrict the system's talkativeness.\n</div>\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Debug output\"\n field:\"config.sys.debug\" \n descr:\"Set this to true if you want debug information to be\n displayed in the browser console.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show notifications\"\n field:\"config.sys.notifications\" \n descr:\"Set this to true if you want to receive fade-out\n notifications for important events.\">>\n</table> "
},
"$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis",
"classes": "tmap-remove-top-space",
"caption": "Graph",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The global vis configurations will affect all views and their\n elements (nodes and edges) unless they are overridden on a lower\n level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n mode=\"manage-config\"\n inherited=\"inherited-style\"\n extension=\"config.vis\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default",
"caption": "Overview",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n All configurations __only__ affect this view.\n</div>\n\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Created on</th>\n <td><<createdOn>></td>\n </tr>\n <tr>\n <th align=\"left\">Nodes contained in graph</th>\n <td><<numberOfNodes>></td>\n </tr>\n <tr>\n <th align=\"left\">Edges contained in graph</th>\n <td><<numberOfEdges>></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters",
"caption": "Edit filters",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n Completely new to filters? Please read\n [[Introduction to filter notation|http://tiddlywiki.com/#Introduction%20to%20filter%20notation]]\n first.\n</div>\n\n<fieldset>\n <legend>Filters <sup>[1]</sup></legend>\n <table class=\"tmap-config-table tmap-large-input\">\n <<tmap-row type:\"input-textarea\"\n title:\"Node filter\"\n field:\"filter.prettyNodeFltr\"\n descr:\"In the map, only those tiddlers that match this filter\n are shown. Drafts and system tiddlers are automatically\n excluded.\">>\n <<tmap-row type:\"input-textarea\"\n title:\"Edge-type filter\"\n field:\"filter.prettyEdgeFltr\" \n descr:\"Only edges with a type that matches the filter are shown.\">>\n </table> \n</fieldset>\n\n---\n\n<sup>[1]</sup> In the editors above, a new line is equivalent to a space symbol.<br />\n<sup>[2]</sup> It is suggested to read\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nand [[Edge-type namespaces|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nbefore using Tiddlymap's filter editor."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout",
"caption": "Layout",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Floating nodes\"\n field:\"config.physics_mode\"\n descr:\"Set this to true if you want your nodes to freely\n swirl around.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Filter nodes by edge types\"\n field:\"config.filter_nodes_by_edge_types\"\n descr:\"Only display nodes having edges matching the edge-type filter.\">>\n <<tmap-row type:\"input-text\"\n title:\"Background image\"\n field:\"config.background_image\"\n descr:\"The title of an image tiddler to be used as background\n in the view.\"\n note:\"You can also use an image url directly, however, the\n image needs be stored under the same domain as your wiki.\n Otherwise, it won't be displayed!\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace",
"caption": "Namespace",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table tmap-small-input\">\n <<tmap-row type:\"input-text\"\n title:\"Edge-type namespace\"\n field:\"config.edge_type_namespace\" \n descr:\"A namespace (like `foaf` in `foaf:knows`) that will be\n automatically added to all edge types you create in\n this view. The namespace is only added if the types\n do not exist yet and do not have a namespace assigned yet.\n Namespaces are always hidden in the graph.\"\n note:\"Most likely, you don't want the edges created with this\n namespace to leak into other views, moreover, you don't\n want edges that do not possess the namespace ever to be\n shown here. In this case, use a private marker (`_`)\n in front of your namespace, e.g. `_mynamespace` and use\n an appropriate edge type filter, i.e. `+[prefix[_mynamespace]]`\n For further information see:\n \n * [[Edge-type namespaces|http://tiddlymap.org/#Edge-type%20namespaces]]\n * [[Private edge types|http://tiddlymap.org/#Private%20edge%20types]]\n \">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView",
"subtitle": "{{$:/core/images/options-button}} View configuration -- <<view>>",
"text": "\\rules except wikilink\n\n\\define privateEdgeTypes() [[private edge-types|http://tiddlymap.org/#Private%20edge%20types]]\n\n<$macrocall $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis",
"caption": "Graph",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The local vis configurations will affect all\n elements (nodes and edges) of this view, unless they are\n overridden on a lower level. All options below are documented at\n [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on the\n graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n mode=\"manage-config\"\n inherited=\"inherited-style\"\n extension=\"config.vis\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType",
"subtitle": "{{$:/plugins/felixhayashi/tiddlymap/icon}} Edge type specification",
"text": "\\rules except wikilink\n\\rules except underscore\n\n\\define filter() $(allEdgeTypes)$ +[search:title[$(term)$]]\n\n\\define badge(color, label, tooltip)\n<span style=\"background: $color$\" title=\"$tooltip$\">$label$</span>\n\\end\n\n\\define badges()\n<$tiddler tiddler={{!!text}}>\n<$set name=\"id\" value=<<tmap \"getETyId\" \"$(view)$\">>>\n<$set name=\"isVisible\" value=<<tmap \"isETyVisible\" \"$(view)$\">>>\n<div class=\"tmap-badges\">\n <span\n style=\"background: darkslategray\"\n title=\"Your input translates into this id.\">\n <<id>>\n </span>\n <$list filter=\"[<isVisible>regexp[true]]\">\n <<badge \"green\" \"visible\" \"Matches your view's filter\">>\n </$list>\n <$list filter=\"[<isVisible>regexp[false]]\">\n <<badge \"red\" \"not visible\" \"Doesn't match your view's filter\">>\n </$list>\n <$list filter=\"[<id>!regexp[^tmap:unknown$]]\" variable=\"item\">\n <$list filter=\"[<id>regexp[^_]]\">\n <<badge \"purple\" \"private\" \"Not shown in other views per default\">>\n </$list>\n <$list filter=\"[<id>regexp[.+:.+]]\">\n <<badge \"orange\" \"namespace\" \"This type is prefixed with a proper namespace\">>\n </$list>\n </$list>\n</div>\n</$set>\n</$set>\n</$tiddler>\n\\end\n\n\\define search()\n<p>\n You are about to connect \"<$text text=\"$(fromLabel)$\" />\"\n with \"<$text text=\"$(toLabel)$\" />\". Please specify a type.\n</p>\n<table id=\"tmap-search-table\">\n <tr>\n <td><b>Type:</b></td>\n <td>\n <$edit-text\n focus=\"true\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" />\n <<badges>>\n </td>\n </tr>\n <tr>\n <td></td>\n <td>\n <$set name=\"term\" value={{!!text}}>\n <$set name=\"allEdgeTypes\" value=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n <ul class=\"tmap-small-list\">\n <$list filter=<<filter>>>\n <li>\n <$button class=\"tc-btn-invisible tmap-link\">\n <$view field=\"title\" />\n <$action-setfield $tiddler=<<output>> text={{!!title}} />\n </$button>\n </li>\n </$list>\n </ul>\n </$set>\n </$set>\n </td>\n </tr>\n</table>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap",
"subtitle": "{{$:/core/images/tag-button}} Add node",
"classes": "tmap-modal-add-node",
"text": "\\rules except wikilink\n\n\\define backButtonText() back to list\n\\define outputAndTemplate() [[$(output)$]] [[$(template)$]]\n\n\\define editor()\n <$button class=\"tmap-go-back tc-btn-invisible\">\n {{$:/core/images/chevron-left}} <<backButtonText>>\n <$action-deletefield $tiddler=<<temp>> more template />\n <$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=<<output>> />\n </$button>\n\n <$list filter=\"[<output>get[draft.title]is[tiddler]]\">\n <div class=\"tmap-flash-message tmap-warning\">\n Tiddler already exists! Use another title or click\n \"<<backButtonText>>\" to cancel your edit.\n </div>\n </$list>\n\n <div class=\"tmap-modal-editor\">\n <table class=\"tmap-config-table\">\n <tr class=\"tmap-template-select\">\n <td>Template</td>\n <td>\n <$select\n tiddler=<<temp>>\n field=\"template\">\n <option value=\"\"></option>\n <$list filter=<<tmap \"option\" \"selector.allPotentialNodes\">>>\n <option><$view field=\"title\" /></option>\n </$list>\n </$select>\n <$button>Load\n <$action-sendmessage\n $message=\"tmap:tm-clear-tiddler\"\n keep=\"draft.title\"\n title=<<output>> />\n <$list filter=\"[<temp>get[template]]\" variable=\"template\">\n <$action-sendmessage\n $message=\"tmap:tm-merge-tiddlers\"\n tiddlers=<<outputAndTemplate>>\n output=<<output>> />\n <$action-deletefield $tiddler=<<output>> tmap.id tmap.edges />\n </$list>\n </$button>\n </td>\n <td>Press the \"load\" button to activate the template.</td>\n </tr>\n </table>\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<output>>>\n <$transclude tiddler=\"$:/core/ui/EditTemplate\" mode=\"block\" />\n </$set>\n </$importvariables>\n </div>\n\\end\n\n\\define search()\n<p>Add an existing tiddler to the map or create a new one.</p>\n<table id=\"tmap-search-table\">\n <tr>\n <td><b>Title:</b></td>\n <td>\n <$edit-text\n tiddler=<<output>>\n field=\"draft.title\"\n focus=\"true\"\n type=\"text\"\n tag=\"input\"\n default=\"\"\n class=\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\" />\n <$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n <$button\n tooltip=\"The tiddler does not exist yet and you may edit it\n before it is added to the map\">\n {{$:/core/images/edit-button}}\n <$action-setfield $tiddler=<<temp>> more=\"true\" />\n </$button> <sup>[1]</sup>\n </$list>\n </td>\n </tr>\n <tr>\n <td></td>\n <td>\n <$set name=\"term\" value={{!!draft.title}}>\n <ul class=\"tmap-small-list\">\n <$list filter=\"[search:title<term>!is[system]!has[draft.of]]\">\n <li>\n <$button class=\"tc-btn-invisible tmap-link\">\n <$view field=\"title\" />\n <$action-setfield $tiddler=<<output>> draft.title={{!!title}} />\n </$button>\n </li>\n </$list>\n </ul>\n </$set>\n </td>\n </tr>\n</table>\n\n<$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n<hr />\n<sup>[1]</sup>\n<small>\n The tiddler does not exist yet and you may edit it\n before it is added to the map\n</small>\n</$list>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n<$list filter=\"[<temp>has[more]]\" variable=\"item\"><<editor>></$list>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog",
"subtitle": "{{$:/core/images/locked-padlock}} You cannot delete this view!",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt is not possible to delete the current view as ''<<count>>'' tiddlers\nare referencing it. To delete the view you must first remove the tiddlymap\nwidgets in the tiddlers listed below or change their view attributes.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nAfter the references are removed, you may delete the view.\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation",
"subtitle": "{{$:/core/images/import-button}} You must confirm in order to proceed!",
"text": "\\rules except wikilink\n\n<<message>>\n\n''Are you really sure you want to do this?''"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/createView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/createView",
"subtitle": "{{$:/core/images/new-button}} Creating a new view",
"text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"View name\"\n field:\"name\"\n focus:\"true\"\n class:\"tmap-trigger-field\n tmap-triggers-ok-button-on-enter\n tmap-triggers-cancel-button-on-esc\"\n descr:\"The name for the new view. If no name is entered,\n the program will invent one for you.\"\n note:\"You cannot override an existing view. In this case,\n you need to delete the old view first! You must no use\n slashes (`/`) in the name.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Clone view\"\n field:\"clone\"\n descr:\"Use the view that is currently displayed in the\n editor as blueprint. The view will be an __exact__\n clone of the current one, only with a different\n name.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog",
"subtitle": "{{$:/core/images/delete-button}} You are about to delete <<count>> nodes",
"text": "\\rules except wikilink\n\n''Please choose an option or abort:''\n\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"system\">\n Delete nodes from system <sup>[1]</sup>\n</$radio><br />\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"filter\">\n Delete nodes from graph's filter <sup>[2]</sup>\n</$radio>\n\nThe following nodes will be deleted:\n\n<ul>\n<$list filter=<<tiddlers>>>\n <li><$view tiddler={{!!title}} field=\"title\" /></li>\n</$list>\n</ul>\n\n---\n\n<sup>[1]</sup>\n<small>This will delete all nodes, their corresponding tiddlers and all connected edges.</small><br/>\n<sup>[2]</sup>\n<small>''Important:'' Removing a node from the graph's filter only works, if the node has been added in the map editor per double click or via \"Add Node\". If the node hasn't been added as mentioned above, you need to change the underlying tiddler in a way that it doesn't match your filter anymore, if you don't want it to be displayed in the graph.</small>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo",
"subtitle": "{{$:/core/images/info-button}} Dublicate id detected",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nTiddlyMap requires the value of the id field (\"tmap.id\") to be\nunique in order to correctly identify nodes and tiddlers.\n\nThe id of the \"<<param.changedTiddler>>\" already exists for these tiddlers:\n\n<ul>\n<$list filter=<<param.filter>> variable=\"item\">\n <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nTherefore TiddlyMap\n\n* assigned a new id to tiddler \"<<param.changedTiddler>>\"\n* removed all edges from \"<<param.changedTiddler>>\"\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible",
"subtitle": "{{$:/core/images/info-button}} Edge will not be visible in view \"<<view>>\"",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nYou just created an edge of type\n<code><$text text=<<type>> /></code> that will not be\nvisible in this view because it doesn't match your\nedge-type filter settings.\n\nThe current edge-type filter of view \"<<view>>\" looks like this:\n\n<pre><code><$text text=<<eTyFilter>> /></code></pre>\n\nTo have the newly added type displayed in your view, adjust your\nedge-type filter accordingly. \n\nSome suggestions:\n\n<ul>\n <li>\n Explicitly add the type to the filter:\n <code><$text text=\"[[\" /><$text text=<<type>> /><$text text=\"]]\" /></code>\n </li>\n <li>\n <$set\n filter=\"[<type>regexp[:]splitbefore[:]]\"\n name=\"prefix\"\n emptyValue=<<tmap halfOfString \"$(type)$\">>>\n Add a filter rule (e.g. a prefix filter) that will match\n your type: <code>[prefix[<<prefix>>]]</code>\n </$set>\n </li>\n <li>Make your current view-filter less restrictive.</li>\n</ul>\n\nFor further information, please see:\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]."
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default",
"caption": "Global node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n A node's ''global configuration''\n (also referred to as //global individual config//) defines its\n individual appearance and behaviour in all views.\n</div>\n<<maybeShowTidColorWarning>>\n\n<$macrocall $name=\"sharedSettings\"\n twIconField=<<tidIconField>>\n faIconField=\"global.tmap.fa-icon\"\n labelField=<<tidLabelField>> />\n\n<$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"global.tmap.style\"\n styleName=\"node's global style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local",
"caption": "Local node style",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n The ''local node configuration''\n (also referred to as //view-specific node configuration//)\n overrides the //global individual configuration// and only affects\n the node's appearance and behaviour in the current view.\n</div>\n<<maybeShowTidColorWarning>>\n\n<fieldset>\n <legend>Behaviour</legend>\n <table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Open view\"\n field=\"local.open-view\"\n nochoice=\"Disabled\"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"Clicking on this node will open the specified\n view instead of the tiddler represented by this node.\" />\n </table>\n</fieldset>\n\n<$macrocall $name=\"sharedSettings\"\n twIconField=\"local.tw-icon\"\n faIconField=\"local.fa-icon\"\n labelField=\"local.label\" />\n\n<$macrocall $name=\"visConfiguration\"\n mode=\"manage-node-types\"\n extensionField=\"local-individual-node-style\"\n styleName=\"node's local style\"\n inheritedList=\"[[inherited-global-default-style]]\n [[inherited-local-default-style]]\n [[inherited-group-styles]]\n [[global.tmap.style]]\" />\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/editNode": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode",
"subtitle": "{{$:/core/images/edit-button}} Editing style of node \"<<tiddler>>\"",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define maybeShowTidColorWarning()\n <$list filter=\"[<tidColor>regexp[.+]]\">\n <div class=\"tmap-flash-message tmap-warning\">\n You have set the tiddler's color\n field to \"<<tidColor>>\". This value will be completely ignored\n when you change node's color properties in the vis editor below.\n </div>\n </$list>\n\\end\n\n\\define iconSettings(twIconField, faIconField)\n <fieldset>\n <legend>Icon Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"$twIconField$\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\">>\n <<tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"$faIconField$\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\">>\n </table>\n </fieldset>\n\\end\n\n\\define sharedSettings(twIconField, faIconField, labelField)\n <fieldset>\n <legend>General Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"$labelField$\"\n descr:\"Use this value as node label.\">>\n </table>\n </fieldset>\n <!-- display icon fieldset -->\n <<iconSettings \"$twIconField$\" \"$faIconField$\">> \n\\end\n\n<$macrocall\n $name=\"tabs\"\n default=<<concat \"$(template)$/default\">>\n tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft",
"caption": "Draft",
"text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<draftTRef>> >\n <$transclude tiddler=\"$:/core/ui/EditTemplate\" field=\"text\" mode=\"block\" />\n </$set>\n </$importvariables>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original",
"caption": "Current Version",
"text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n <$set name=\"currentTiddler\" value=<<originalTRef>> >\n <$transclude tiddler=\"$:/core/ui/ViewTemplate\" field=\"text\" mode=\"block\" />\n </$set>\n </$importvariables>\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor",
"subtitle": "{{$:/core/images/edit-button}} <<originalTRef>>",
"classes": "tmap-modal-fullscreen-editor tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab() $:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original\n\n<$macrocall $name=\"tabs\"\n default=<<defaultTab>>\n tabsList=\"[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/]]\" />"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged",
"subtitle": "{{$:/core/images/info-button}} The field \"<<name>>\" changed",
"text": "\\rules except wikilink\n\nYou changed the field \"<<name>>\" from \"<<oldValue>>\" to \"<<newValue>>\".\n\nIt is recommended to let TiddlyMap copy all values from the former field \"<<oldValue>>\" to the new field \"<<newValue>>\" so the data stored in \"<<oldValue>>\" is not lost. This operation has to be done now or never.\n\nDo you want to move each tiddler's existing \"<<oldValue>>\" value to \"<<newValue>>\"? Please note that any value currently stored in \"<<newValue>>\" would consequently be overridden and the old field \"<<oldValue>>\" would be eventually removed!"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported",
"subtitle": "{{$:/core/images/info-button}} Your machine does not support fullscreen",
"buttons": "ok_suppress",
"text": "\\rules except wikilink\n\nPlease have a look [[here|http://caniuse.com/#feat=fullscreen]] to see a list of supported devices/browsers.\n\nSorry for this :("
},
"$:/plugins/felixhayashi/tiddlymap/dialog/renameView": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/renameView",
"subtitle": "{{$:/core/images/tag-button}} Please specify a view name",
"text": "\\rules except wikilink\n\n''Name:''\n<$edit-text focus=\"true\" tiddler=<<output>> field=\"text\" type=\"text\" tag=\"input\" default=\"\"\n class=\"tmap-trigger-field tmap-triggers-ok-button-on-enter\" />\n\nNote that ''<<count>>'' tiddlers are referencing this view.\n\n<$reveal type=\"nomatch\" text=\"0\" default=<<count>>>\n\nRenaming the view will cause the reference to be invalid.\nIt is recommended to first remove the tiddlymap widgets in\nthe tiddlers listed below or change their view attributes\naccordingly.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n <li><$text text=<<item>> /></li>\n</$list>\n</ul>\n\n</$reveal>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas",
"subtitle": "{{$:/core/images/options-button}} Save a snapshot image of view \"<<view>>\"",
"text": "\\rules except wikilink\n\n\\define preview()\n<div class=\"tmap-save-canvas-preview\">\n <$transclude tiddler=<<snapshot>> /><br />\n</div>\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall $name=\"tmap-row\"\n type=\"input-text\"\n title=\"Name\"\n field=\"name\"\n descr=<<preview>> />\n <<tmap-row type:\"input-text\"\n title:\"Width\"\n field:\"width\"\n descr:\"Scales the image to match this new width (unit: px)\">>\n <<tmap-row type:\"input-text\"\n title:\"height\"\n field:\"height\"\n descr:\"Scales the image to match this new height (unit: px)\">>\n <<tmap-row type:\"input-radio\"\n title:\"Action\"\n field:\"action\"\n selectFilter:\"[[download|Download]]\n [[wiki|Save in wiki]]\n [[placeholder|Use as placeholder for this view]]\"\n descr:\"Save the image by downloading it to your computer or\n save it as a tiddler in your wiki.<br /><br />\n A third option is to make TiddlyMap use this image as\n placeholder for the current view. Placeholders are useful\n when the wiki is exported as static html\n or when editing a tiddler while having the preview\n shown. In this case the title input is ignored.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog",
"text": "\\rules except wikilink\n\n<div class=<<classes>>>\n<$importvariables\n filter=\"[[$:/plugins/felixhayashi/tiddlymap/misc/macros]]\n [[$:/core/macros/tabs]]\">\n<$transclude tiddler=<<template>> mode=\"block\" />\n</$importvariables>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/welcome": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/welcome",
"subtitle": "{{$:/core/images/info-button }} Welcome",
"buttons": "ok",
"text": "\\rules except wikilink\n\nIt seems that you freshly installed TiddlyMap.\n\n* In case you need any help, please consult the [[online docs|http://tiddlymap.org#Documentation]] first.\n* You are welcome to create an [[issue|https://github.com/felixhayashi/TW5-TiddlyMap/issues]] at GitHub for any bug you discover.\n* Make sure to revisit the [[demo site|http://tiddlymap.org]] to see whether your version is up-to-date.\n* If you like TiddlyMap, please give it a star at [[GitHub|https://github.com/felixhayashi/TW5-TiddlyMap]] or tell your friends about it :)\n* ''Please note:'' TiddlyMap is distributed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]], which belongs to the same license family, as the license used by TiddlyWiki. By using this plugin you agree to the product's [[License Terms|https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]].\n\nEnjoy!\n\n---\n\nTiddlyMap will configure your wiki for optimal use. Everything can be changed back later by you, via the TiddlyWiki configurations panel, so no worries. If you checked some of the options below, please save & restart after closing this dialog.\n\n<table class=\"tmap-config-table\">\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize storyview\"\n field:\"config.storyview\"\n descr:\"Sets the storyview to 'top' for optimal scrolling.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize sidebar\"\n field:\"config.sidebar\"\n descr:\"Sets sidebar layout to 'fixed-fluid' for larger editor.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Optimize navigation\"\n field:\"config.navigation\"\n descr:\"Sets navigation style to open tiddlers at top for better map navigation.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Create demo welcome map\"\n field:\"config.demo\"\n descr:\"Creates a little hello world welcome map for you.\">>\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator",
"subtitle": "{{$:/core/images/permalink-button}} Widget Code Generator",
"buttons": "close",
"text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n Use the code below to embed a view in a tiddler.\n</div>\n\n<pre style=\"white-space: normal;\">\n<$tmap\n\n<$list filter=\"[<output>has[var.view]]\">\n view=\"<$view field='var.view' />\"</$list>\n<$list filter=\"[<output>field:var.click-to-use[true]]\">\n click-to-use=\"true\"</$list>\n<$list filter=\"[<output>has[var.editor]]\">\n editor=\"<$view field='var.editor' />\"</$list>\n<$list filter=\"[<output>has[var.width]]\">\n width=\"<$view field='var.width' />\"</$list>\n<$list filter=\"[<output>has[var.height]]\">\n height=\"<$view field='var.height' />\"</$list>\n<$list filter=\"[<output>has[var.class]]\">\n class=\"<$view field='var.class' />\"</$list>\n<$list filter=\"[<output>field:var.show-buttons[false]]\">\n show-buttons=\"false\"</$list>\n<$list filter=\"[<output>has[var.design]]\">\n design=\"<$view field='var.design' />\"</$list>></$tmap>\n</pre>\n\n<fieldset>\n <legend>Parameters</legend> \n <table class=\"tmap-config-table\">\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"View\"\n field=\"var.view\"\n nochoice=\" \"\n selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n descr=\"The view to bind the wiedget to\" />\n <<tmap-row type:\"input-select\"\n title:\"Editor bar\"\n field:\"var.editor\"\n selectFilter:\"[[|Hidden]]\n [[vis|Simple]]\n [[advanced|Advanced]]\"\n descr:\"Whether the widget should act as an editor or not.\">>\n <<tmap-row type:\"input-select\"\n title:\"Design\"\n field:\"var.design\"\n selectFilter:\"[[|Normal]]\n [[plain|Plain]]\"\n descr:\"Usually a header is displayed and borders. Plain\n design will only show the mere graph.\">>\n <<tmap-row type:\"input-text\"\n title:\"Height\"\n field:\"var.height\"\n descr:\"Graph's height in css units. Defaults to '300px'.\">>\n <<tmap-row type:\"input-text\"\n title:\"Width\"\n field:\"var.width\"\n descr:\"Graph's width in css units. Defaults to '100%'.\">>\n <<tmap-row type:\"input-text\"\n title:\"Class\"\n field:\"var.class\"\n descr:\"A custom class to apply your own css.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Click to use\"\n field:\"var.click-to-use\"\n default:\"false\"\n descr:\"A click is needed to enable the graph.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show buttons\"\n field:\"var.show-buttons\"\n default:\"true\"\n descr:\"Show or hide the graph's navigation buttons.\">>\n </table>\n</fieldset>"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/close": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close",
"text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-close-button\" tooltip=\"Close this dialog\">Close\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok",
"text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm dialog\">OK\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel",
"text": "\\rules except wikilink\n\n<$transclude tiddler=\"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok\" mode=\"inline\" />\n<$button class=\"tmap-dialog-button tmap-cancel-button\" tooltip=\"Close dialog without saving\">Cancel\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"\" />\n</$button>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress",
"text": "\\rules except wikilink\n\n<$set name=\"currentTiddler\" value=<<title>> >\n\n<$checkbox field=\"suppress\" checked=\"1\" unchecked=\"0\" default=\"0\"> Do not show this dialog again</$checkbox>\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm this dialog\">OK\n\n <!-- trigger dialog callback -->\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n \n <!-- suppress dialog in the future -->\n <$action-sendmessage $message=\"tmap:tm-suppress-dialog\"\n dialog=<<templateId>>\n suppress={{!!suppress}} />\n \n</$button>\n\n</$set>"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter",
"text": "\\rules except wikilink\n\n\\define footer() $:/plugins/felixhayashi/tiddlymap/dialogFooter/$(buttons)$\n\n<$transclude tiddler=<<footer>> />\n\n<!-- we need this button to be able to close a tiddler from outside programmatically -->\n<$button class=\"tmap-hidden-close-button\" message=\"tm-close-tiddler\" />"
},
"$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager",
"text": "\\rules except wikilink\n\n<$button\n class=\"tmap-dialog-button tmap-save-button\"\n tooltip=\"Save the current changes\">Save\n <$action-sendmessage\n $message=\"tmap:tm-save-type-form\"\n mode=<<mode>>\n output=<<output>> />\n</$button>\n<$button\n class=\"tmap-dialog-button tmap-cancel-button\"\n tooltip=\"Cancel the most resent changes and exit\">Quit\n <$action-setfield $tiddler=<<result>> text=\"1\" />\n</$button>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType",
"caption": "Removal",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true\n and click the save button afterwards. Predefined system\n types cannot be deleted.\" note=\"Consequently, all edges\n of this type will be deleted.\" />\n\\end\n\n\\define manage-node-types()\n <$macrocall $name=\"tmap-row\"\n type=\"input-checkbox\"\n title=\"Delete type\"\n field=\"temp.deleteType\"\n default={{!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"If you want to delete this type, set this to true and\n click the save button afterwards. Predefined system\n types cannot be deleted.\" />\n\\end\n\n<table class=\"tmap-config-table\"><$macrocall $name=<<mode>> /></table>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description",
"caption": "Description",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <<tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\"\n descr:\"An optional description for this type. The\n description will be displayed as tooltip when\n moving the mouse over an edge of this type.\">>\n\\end\n\n\\define manage-node-types()\n <<tmap-row type:\"input-textarea\"\n title:\"Description\"\n field:\"description\" \n descr:\"An optional description for this type.\">>\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall $name=<<mode>> />\n</table>\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings",
"caption": "General",
"text": "\\rules except wikilink\n\n\\define manage-edge-types()\n <<tmap-row type:\"input-text\"\n title:\"Label\"\n field:\"label\"\n descr:\"An optional alias used as edge-label.\">>\n <<tmap-row type:\"input-checkbox\"\n title:\"Show label\"\n field:\"show-label\"\n default:\"true\"\n descr:\"If unchecked, no edge label will be displayed.\">>\n\\end\n\\define manage-node-types()\n <$list filter=\"[<currentTiddler>!regexp:id[tmap:]]\">\n <<tmap-row type:\"input-textarea\"\n title:\"Scope\"\n field:\"scope\"\n descr:\"A filter expression that defines, which nodes inherit\n this node-type and its style.\">>\n </$list>\n <$macrocall type=\"input-select\"\n $name=\"tmap-row\"\n title=\"Priority\"\n field=\"priority\"\n selectFilter=<<tmap \"scale\" \"100\">>\n descr=\"When a type has a a higher priority than another type,\n its style will override the other style\" />\n\\end\n\n<table class=\"tmap-config-table\">\n <$macrocall\n $name=\"tmap-row\"\n title=\"Identifier\"\n field=\"temp.newId\"\n type=\"input-text\"\n default={{!!id}}\n readonly={{!!temp.idImmutable}}\n descr=\"A unique identifier\"\n />\n <$macrocall $name=<<mode>> />\n</table>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview",
"caption": "Overview",
"text": "\\rules except wikilink\n\n\\define date(f) <$view field=$f$ format=\"date\" template=\"DDth mmm hh:mm:ss\"/>\n\n! <$link to={{!!typeTRef}}><$view field=\"id\" /></$link>\n\n<table class=\"tmap-key-value-table\">\n <tr>\n <th align=\"left\">Created on</th>\n <td>\n <<date \"created\">>\n </td>\n </tr>\n <tr>\n <th align=\"left\">Modified on</th>\n <td><<date \"modified\">></td>\n </tr>\n <tr>\n <th align=\"left\">Usage count</th>\n <td>\n <span class=\"tmap-edge-type-specific\">\n <$view field=\"temp.usageCount\" />\n </span>\n <span class=\"tmap-node-type-specific\">\n <$count filter={{!!scope}}>0</$count>\n </span>\n </td>\n </tr>\n</table>\n\n<$view field=\"description\">//No description available//</$view>"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling",
"caption": "Styling",
"text": "\\rules except wikilink\n\n\\define url()\n <$set\n filter=\"[<mode>prefix[manage-edge-types]]\"\n name=\"module\"\n value=\"edges\"\n emptyValue=\"nodes\">\n [[visjs.org|http://visjs.org/docs/network/$(module)$]]\n </$set>\n\\end\n\n<fieldset class=\"tmap-node-type-specific\">\n <legend>Icon Settings</legend>\n <table class=\"tmap-config-table\">\n <<tmap-row type:\"input-text\"\n title:\"TW-icon\"\n field:\"tw-icon\"\n descr:\"A tiddlywiki image reference.\n For example '$:/core/icon' for Movotun Jack.\">>\n <<tmap-row type:\"input-text\"\n title:\"FA-icon\"\n field:\"fa-icon\"\n descr:\"A Font Awesome icon code.\n For example 'f206' for the bicycle symbol.\">>\n </table>\n</fieldset>\n\n<fieldset><legend>Visjs styles</legend>\n <div class=\"tmap-flash-message tmap-info\">\n All visjs options below are documented at <<url>>.\n </div>\n <div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n </div>\n <$tmap-config\n mode=<<mode>>\n inherited=\"inherited-style\"\n extension=\"style\" />\n</fieldset>\n"
},
"$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager": {
"title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager",
"subtitle": "{{$:/core/images/tag-button}} <<topic>>",
"buttons": "element_type_manager",
"classes": "tmap-remove-top-space",
"text": "\\rules except wikilink\n\n\\define defaultTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview\n\\end\n\n\\define settingsTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings\n\\end\n\n\\define tabsFilter()\n[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/]]\n\\end\n\n\\define searchFilter()\n$(searchSelector)$\n+[sort[title]nsort[priority]]\n+[removeprefix<typeRootPath>removeprefix[/]]\n+[search:title{$:/temp/tmap/MapElementTypeSearch}]\n\\end\n\n\\define managerClass() tmap-$(mode)$\n\n\\define typePath() $(typeRootPath)$/$(id)$\n\n<div id=\"tmap-element-type-manager\" class=<<managerClass>>>\n <div>\n <div class=\"tmap-searchbar\">\n <$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/MapElementTypeSearch\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <$list filter=\"[{$:/temp/tmap/MapElementTypeSearch}regexp[.+]]\n +[addprefix[/]]\n +[addprefix<typeRootPath>]\n +[!is[tiddler]!is[shadow]]\">\n <$button tooltip=\"Create a new type of this name\">\n {{$:/core/images/new-button}}\n <$action-sendmessage\n $message=\"tmap:tm-create-type\"\n mode=<<mode>>\n id={{$:/temp/tmap/MapElementTypeSearch}}\n output=<<output>> />\n <$action-setfield $tiddler=\"$:/temp/tmap/MapElementTypeSearch\" text=\"\" />\n </$button>\n </$list>\n\n </div>\n <ul>\n <$list\n filter=<<searchFilter>>\n emptyMessage=<<noTypeFound>>\n variable=\"id\">\n <li>\n <span class=\"tmap-ranking tmap-node-type-specific\">\n # <$view tiddler=<<typePath>> field=\"priority\">1</$view>\n </span>\n <$button class=\"tc-btn-invisible tmap-link\"><<id>>\n <$action-setfield\n $tiddler=<<qualify \"$:/state/tabs/MapElementTypeManager\">>\n text=<<defaultTab>> />\n <$action-sendmessage\n $message=\"tmap:tm-load-type-form\"\n id=<<id>>\n mode=<<mode>>\n output=<<output>> />\n </$button>\n </li>\n </$list>\n </ul>\n </div>\n <div>\n <$reveal type=\"nomatch\" text=\"\" default={{!!id}} >\n <$macrocall\n $name=\"tabs\"\n default=<<defaultTab>>\n state=\"$:/state/tabs/MapElementTypeManager\"\n tabsList=<<tabsFilter>> />\n </$reveal>\n <$reveal type=\"match\" text=\"\" default={{!!id}} >\n <div class=\"tmap-flash-message tmap-info\">\n Please select a type from the list or create a new one by\n entering the type name in the search field on the left.\n </div>\n <div class=\"tmap-flash-message tmap-info tmap-node-type-specific\">\n The number next to the node-type label represents it's priority.\n </div>\n </$reveal>\n </div>\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node": {
"title": "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node",
"text": "\\define single()\n <$list filter=\"\n [[tmap:tm-toggle-central-topic, $:/core/images/star-filled, Toggle central topic]]\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete node]]\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n <<tmap \"splitAndSelect\" \", \" \"2\">>\n </$button>\n </$list>\n\\end\n\n\\define multi()\n <$list filter=\"\n [[tmap:tm-delete-element, $:/core/images/delete-button, Delete selected nodes]]\">\n <$button class=\"tc-btn-invisible\">\n <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n <<tmap \"splitAndSelect\" \", \" \"2\">>\n </$button>\n </$list>\n\\end\n\n<div class=\"tc-drop-down\">\n <$macrocall $name=<<mode>> />\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar",
"text": "\\rules except wikilink\n\\define showEdgeField() show-$(curEdgeId)$\n\n<!-- === View Switcher ========================================== -->\n\n<div class=\"tmap-menu-bar\">\n View:\n <$reveal type=\"match\" text=\"false\" default=<<isViewBound>> >\n <$select\n tiddler=<<viewHolder>>\n field=\"text\"\n default=<<viewLabel>> >\n <$list filter=<<tmap \"option\" \"selector.allViewsByLabel\">> >\n <option value={{!!title}}>\n <$view tiddler={{!!title}} field=\"title\" />\n </option>\n </$list>\n </$select>\n </$reveal>\n <$reveal type=\"match\" text=\"true\" default=<<isViewBound>> >\n <b><<viewLabel>></b>\n </$reveal>\n\n<!-- === Menu =================================================== -->\n\n <$button\n popup=<<qualify \"$:/temp/menu\">>\n class=\"tmap-unicode-button\"\n tooltip=\"Open the Menu\">{{$:/core/images/menu-button}}\n </$button>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/menu\">> >\n <div class=\"tc-drop-down\">\n <a href=\"http://tiddlymap.org#Documentation\" target=\"_blank\">\n {{$:/core/images/info-button}} Open online help\n </a>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-create-view\">\n {{$:/core/images/new-button}} Create new view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-generate-widget\">\n {{$:/core/images/permalink-button}} Grab widget code\n </$button>\n <div class=\"tmap-list-separator\">Global configurations:</div>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-configure-system\">\n {{$:/core/images/options-button}} Configure TiddlyMap\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-edge-types\">\n <span class=\"tmap-unicode-icon\">◭</span> Manage edge-types\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-node-types\">\n <span class=\"tmap-unicode-icon\">▢</span> Manage node-types\n </$button>\n <div class=\"tmap-view-actions\">\n <div class=\"tmap-list-separator\">Actions for this view:</div>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-edit-view\">\n {{$:/core/images/options-button}} Configure view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-rename-view\">\n {{$:/core/images/tag-button}} Rename view\n </$button>\n <$button class=\"tc-btn-invisible\" message=\"tmap:tm-delete-view\">\n {{$:/core/images/delete-button}} Delete view\n </$button>\n </div>\n </div>\n </$reveal>\n\n<!-- === Neighbourhood menu ===================================== -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\"\n \"config.sys.editorMenuBar.showNeighScopeButton\">>>\n <$button\n class=<<neighScopeBtnClass>>\n tooltip=\"Change the neighbourhood scope\"\n popup=<<qualify \"$:/temp/neighScope\">>>\n {{$:/core/images/preview-open}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/neighScope\">> >\n <div class=\"tc-drop-down\">\n <div class=\"tmap-list-separator\">Neighbourhood scope</div>\n <$button class=\"tc-btn-invisible\">None\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=\"\" />\n </$button>\n <$list filter=\"[[1|1 step distance]]\n [[2|2 step distance]]\n [[3|3 step distance]]\n [[4|4 step distance]]\n [[5|5 step distance]]\">\n <$button class=\"tc-btn-invisible\">\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n </$button>\n </$list>\n <$button class=\"tc-btn-invisible\">No limit\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.neighbourhood_scope=\"100\" />\n </$button>\n\n <div class=\"tmap-list-separator\">Neighbourhood traversal</div>\n\n <$radio field=\"config.neighbourhood_directions\" value=\"in\"> Incoming</$radio><br />\n <$radio field=\"config.neighbourhood_directions\" value=\"out\"> Outgoing</$radio><br />\n <$radio field=\"config.neighbourhood_directions\" value=\"\"> Both</$radio>\n\n <div class=\"tmap-list-separator\">Other</div>\n\n <$checkbox field=\"config.show_inter_neighbour_edges\"\n checked=\"true\" unchecked=\"false\"> Inter-neighbour edges</$checkbox>\n\n </div>\n </$reveal>\n\n<!-- === Tracing ===================================== -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<isShowNeighbourhood>>>\n <$button\n class=<<tracingBtnClass>>\n tooltip=\"Trace your clicks on neighbouring nodes.\"\n popup=<<qualify \"$:/temp/tmap-tracing\">>>\n {{$:/core/images/timestamp-on}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/tmap-tracing\">> >\n <div class=\"tc-drop-down\">\n <$button message=\"tmap:tm-neighbourhood-reset-trace\">\n {{$:/core/images/erase}} Restart\n </$button>\n <span\n title=\"\n Enable this option to trace your clicks on neighbouring nodes.\n Traced neighbours are temporarily added to the map (until the map is closed)\n as if they where regular nodes of the map\"\n >\n <$checkbox\n field=\"config.neighbourhood_trace_clicks\"\n checked=\"true\"\n unchecked=\"false\"\n >\n Trace clicked nodes\n </$checkbox>\n </span>\n <br />\n <span title=\"Will focus an zoom on the latest traced node\">\n <$checkbox\n field=\"config.neighbourhood_focus_newly_traced_node\"\n checked=\"true\"\n unchecked=\"false\"\n >\n Focus traced nodes\n </$checkbox>\n </span>\n <br />\n <span title=\"Per default, only neighbours of nodes matching the node filter are displayed. Enable this option to also show neighbours of traced nodes.\">\n <$checkbox field=\"config.neighbourhood_include_traced_node_neighbours\"\n checked=\"true\" unchecked=\"false\"> Show neighbours of all traced nodes</$checkbox>\n </span>\n </div>\n </$reveal>\n\n<!-- === Export menu ============================================ -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\" \"config.sys.editorMenuBar.showScreenshotButton\">>>\n <$button class=\"tmap-unicode-button\" tooltip=\"Open the map-export menu\" popup=<<qualify \"$:/temp/mapExport\">>>\n {{$:/core/images/download-button}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/mapExport\">>>\n <div class=\"tc-drop-down\">\n <$button\n class=\"tc-btn-invisible\"\n tooltip=\"Export the graph and all its elements\n in form of a JSON file\">\n {{$:/core/images/permalink-button}} Save as JSON file\n <$action-sendmessage\n $message=\"tmap:tm-download-graph\"\n view=<<viewLabel>> />\n </$button>\n <$button\n class=\"tc-btn-invisible\"\n tooltip=\"Create a png image to download or save it\n as image or view-placeholder in your wiki\">\n {{$:/core/images/palette}} Save as png image\n <$action-sendmessage $message=\"tmap:tm-save-canvas\" />\n </$button>\n </div>\n </$reveal>\n\n<!-- === Raster menu ============================================ -->\n\n <$reveal\n type=\"match\"\n text=\"true\"\n default=<<tmap \"option\" \"config.sys.editorMenuBar.showRasterMenuButton\">>>\n <$button\n tooltip=\"Change the raster of your map\"\n class=\"tmap-unicode-button\"\n popup=<<qualify \"$:/temp/rasterMenu\">>>\n {{$:/core/images/line-width}}\n </$button>\n </$reveal>\n\n <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/rasterMenu\">>>\n <div class=\"tc-drop-down\">\n <$button class=\"tc-btn-invisible\">Disable raster\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.raster=\"\" />\n </$button>\n <div class=\"tmap-list-separator\">Raster sizes</div>\n <$list filter=\"[[50|50px]]\n [[75|75px]]\n [[100|100px]]\n [[150|150px]]\">\n <$button class=\"tc-btn-invisible\">\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n <$action-setfield\n $tiddler=<<viewRoot>>\n config.raster=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n </$button>\n </$list>\n </div>\n </$reveal>\n\n</div>\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/focusButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/focusButton",
"text": "\\define filter() [list[$:/temp/tmap/nodes/$(viewLabel)$]search:title{$:/temp/tmap/bar/search}]\n\\define concat(str) $str$\n\n\\define state() $(widgetPopupsPath)$/focus\n\n<div class=\"tmap-focus-button\">\n <$reveal type=\"match\" state=<<state>> text=\"\">\n <$button\n tooltip=\"Zoom on a specific node\"\n class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n <$action-setfield $tiddler=\"$:/temp/tmap/bar/search\" text=\"\" />\n <$action-setfield $tiddler=<<state>> text=\"1\" />\n </$button>\n </$reveal>\n <$reveal type=\"nomatch\" state=<<state>> text=\"\">\n <$button\n tooltip=\"Close zoom popup\"\n class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n <$action-setfield $tiddler=<<state>> text=\"\" />\n </$button>\n <div class=\"tmap-search-dropdown\">\n <div class=\"tc-drop-down\">\n <$edit-text\n focus=\"true\"\n tiddler=\"$:/temp/tmap/bar/search\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <small><$count filter=<<filter>> /> results</small>\n <hr />\n <div class=\"tmap-very-small-list\">\n <$list filter=<<filter>>\n variable=\"item\"\n emptyMessage=\"//No results//\">\n <$button\n class=\"tc-btn-invisible\"\n message=\"tmap:tm-focus-node\"\n param=<<item>>>\n <$view tiddler=<<item>> field=\"title\" />\n </$button>\n </$list>\n </div>\n </div>\n </div>\n </$reveal>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/hook/editor": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/editor",
"caption": "Map",
"tags": "$:/tags/SideBar",
"text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n <div class=\"tmap-flash-message tmap-warning\">\n The editor is not displayed in mobile mode.\n </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n <$tiddlymap\n class=\"tmap-sidebar-map-editor\"\n editor=\"advanced\"\n object-id=\"main_editor\"\n click-to-use=\"false\">\n </$tiddlymap>\n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/hook/liveTab": {
"title": "$:/plugins/felixhayashi/tiddlymap/hook/liveTab",
"caption": "Live",
"text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n <div class=\"tmap-flash-message tmap-warning\">\n The live tab is not displayed in mobile mode.\n </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n <$set name=\"view\"\n filter=\"[{$:/temp/tmap/currentTiddler}get[tmap.open-view]]\"\n emptyValue=<<tmap \"option\" \"config.sys.liveTab.fallbackView\">>>\n <div>\n <$tiddlymap\n view=<<view>>\n click-to-use=\"false\"\n refresh-triggers=\"$:/temp/tmap/currentTiddler\"\n object-id=\"live_tab\">\n </$tiddlymap>\n </div>\n </$set> \n</div>"
},
"$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton",
"tags": "$:/tags/ViewToolbar",
"description": "{{$:/language/Buttons/TiddlyMap/Hint}}",
"caption": "{{$:/plugins/felixhayashi/tiddlymap/icon}} {{$:/language/Buttons/TiddlyMap/Caption}}",
"text": "\\define buttonClass() $(tv-config-toolbar-class)$ $(additional-classes)$\n\n\\define nonExistentItem()\n<<item>> <span style=\"color: #9E9E9E\">(will be created)</span>\n\\end\n\n\\define noConnectionsMsg()\n<tr><td colspan=\"4\">//No connections found!//</td></tr>\n\\end\n\n\\define normalSearchFilter()\n[!is[system]!has[draft.of]search:title{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define regexSearchFilter()\n[!is[system]!has[draft.of]regexp{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define showButton(state)\n<$button set=\"$:/temp/tmap/state/popup/quickConnect\"\n setTo=\"$state$\" tooltip={{$:/language/Buttons/TiddlyMap/Hint}} \n aria-label={{$:/language/Buttons/TiddlyMap/Caption}}\n class=<<buttonClass>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">{{$:/plugins/felixhayashi/tiddlymap/icon}}</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TiddlyMap/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n\\define searchResults()\n<td>\n <$button tooltip=\"Create incoming edge\">\n <<tmap \"option\" \"misc.arrows.in\">>\n <$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=<<item>>\n to=<<currentTiddler>>\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} />\n </$button>\n</td>\n<td>\n <$button tooltip=\"Create outgoing edge\">\n <<tmap \"option\" \"misc.arrows.out\">>\n <$action-sendmessage $message=\"tmap:tm-create-edge\"\n from=<<currentTiddler>>\n to=<<item>>\n force=\"true\"\n label={{$:/temp/quickConnectSearch/type}}\n view={{$:/temp/quickConnectSearch/view}} />\n </$button>\n</td>\n<td>\n <$list\n filter=\"[<item>is[tiddler]]\"\n emptyMessage=<<nonExistentItem>>>\n <$view tiddler=<<item>> field=\"title\" />\n </$list>\n</td>\n\\end\n\n\\define hidePopup()\n<$macrocall $name=\"showButton\" state=<<qualify>> />\n\\end\n\n\\define showPopup()\n<$set name=\"additional-classes\" value=\"tmap-active-button\">\n <$macrocall $name=\"showButton\" state=\"\" />\n</$set>\n<$set\n name=\"searchFilter\"\n filter=\"[field:title[$:/state/tmap/tid-toolbar]has[re-filter]]\"\n value=<<regexSearchFilter>>\n emptyValue=<<normalSearchFilter>>>\n<div class=\"tmap-quick-connect tc-reveal tc-popup\">\n <div class=\"tc-drop-down\">\n <div class=\"title\">Create connection</div>\n <table class=\"tmap-quick-connect-search-bar\">\n <tr>\n <td>Type:</td>\n <td>\n <$edit-text\n tiddler=\"$:/temp/quickConnectSearch/type\"\n field=\"text\"\n type=\"text\"\n tag=\"input\"\n default=\"\" />\n <$select tiddler=\"$:/temp/quickConnectSearch/type\" default=\"\">\n <option></option>\n <$list filter=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n <option>{{!!title}}</option>\n </$list>\n </$select>\n </td>\n </tr>\n <tr>\n <td>Search:</td>\n <td>\n <$edit-text tiddler=\"$:/temp/quickConnectSearch\" type=\"text\" tag=\"input\" default=\"\"></$edit-text>\n <$checkbox\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"re-filter\"\n checked=\"1\"\n unchecked=\"\"\n default=\"\"> regexp\n </$checkbox>\n<!--\n <small>(<$count filter=<<searchFilter>> /> results)</small>\n-->\n </td>\n </tr>\n </table>\n <table class=\"tmap-create-connection-table\">\n <tr>\n <td colspan=\"2\">\n <table class=\"tmap-very-small-list\">\n <$list\n filter=<<searchFilter>>\n variable=\"item\">\n <tr><<searchResults>></tr>\n </$list>\n <tr>\n <$list filter=\"[{$:/temp/quickConnectSearch}regexp[.+]] -[is[tiddler]]\" variable=\"item\">\n <<searchResults>>\n </$list>\n </tr>\n </table>\n </td>\n </tr>\n </table>\n <div class=\"title\">Existing Connections</div>\n <div class=\"tmap-quick-connect-existing-bar\">\n <$select\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"direction\"\n default=\"both\">\n <option value=\"both\">both</option>\n <option value=\"in\">incoming</option>\n <option value=\"out\">outgoing</option>\n </$select>\n <$checkbox\n tiddler=\"$:/state/tmap/tid-toolbar\"\n field=\"filter.links\"\n checked=\"-[[tw-body:link]]\"\n unchecked=\"\"\n default=\"\"> hide links\n </$checkbox>\n </div>\n <table class=\"tmap-connection-table\">\n<!--\n <tr>\n <th></th>\n <th>Tiddler</th>\n <th>Type</th>\n <th></th>\n </tr>\n-->\n \n <$tmap-connections\n filter=<<tmap mergeFields \"$:/state/tmap/tid-toolbar\" \"filter.\">>\n direction={{$:/state/tmap/tid-toolbar!!direction}}\n emptyMessage=<<noConnectionsMsg>>>\n <tr>\n <td title=<<direction>>><<directionSymbol>></td>\n <td><$link to=<<neighbour>>><$view field=\"title\" /></$link></td>\n <td><<edge.type>></td>\n <td>\n <$button\n tooltip=\"Delete this connection\"\n class=\"tc-btn-invisible\">{{$:/core/images/close-button}}\n <$action-sendmessage $message=\"tmap:tm-remove-edge\"\n id=<<edge.id>>\n from=<<edge.from>>\n to=<<edge.to>>\n type=<<edge.type>> />\n </$button>\n </td>\n </tr>\n </$tmap-connections>\n </table> \n </div>\n</div>\n</$set>\n\\end\n\n<$list filter=\"[all[current]is[tiddler]]\"><$list filter=\"[{$:/temp/tmap/state/popup/quickConnect}prefix<qualify>]\" variable=\"item\" emptyMessage=<<hidePopup>>><<showPopup>></$list></$list>"
},
"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/tiddlymap/icon": {
"title": "$:/plugins/felixhayashi/tiddlymap/icon",
"tags": "$:/tags/Image",
"text": "<svg\n xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n xmlns:cc=\"http://creativecommons.org/ns#\"\n xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n xmlns:svg=\"http://www.w3.org/2000/svg\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n class=\"tc-image-tiddlymap-button tc-image-button\"\n version=\"1.1\"\n width=\"22pt\"\n height=\"22pt\"\n viewBox=\"0 0 128 128\">\n <defs\n id=\"defs4\">\n <marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lend\"\n style=\"overflow:visible\">\n <path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(-0.8,0,0,-0.8,-10,0)\"\n id=\"path3850\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n </marker>\n <marker\n refX=\"0\"\n refY=\"0\"\n orient=\"auto\"\n id=\"Arrow1Lstart\"\n style=\"overflow:visible\">\n <path\n d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n transform=\"matrix(0.8,0,0,0.8,10,0)\"\n id=\"path3847\"\n style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n </marker>\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4329\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4321\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4315\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4307\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4299\" />\n <inkscape:path-effect\n effect=\"skeletal\"\n id=\"path-effect4293\" />\n </defs>\n <g\n transform=\"translate(0,-1024.5289)\"\n id=\"layer1\">\n <path\n d=\"m 17.867073,4.5821643 a 3.7249374,3.7249374 0 1 1 -7.449875,0 3.7249374,3.7249374 0 1 1 7.449875,0 z\"\n transform=\"matrix(-6.3328802,0,0,6.2775831,193.9581,1100.3667)\"\n id=\"path4139-1-14\"\n style=\"fill-opacity:1;fill-rule:nonzero\" />\n <path\n d=\"M 77.450496,1064.5069 C 58.849552,1025.9634 15.704158,1023.3858 2.8821873e-7,1034.558 L 0.02388589,1035.2674 C 24.502636,1022.2072 44.810725,1042.1507 60.163934,1074.112 z\"\n id=\"path4337\"\n style=\"fill-opacity:1;stroke-width:0.58181816;stroke-miterlimit:4;stroke-dasharray:none;marker-start:none;marker-end:none\" />\n <path\n d=\"m 12.878637,11.280739 4.75937,-2.7478243 4.759371,-2.7478236 0,5.4956479 0,5.495648 -4.759371,-2.747824 z\"\n transform=\"matrix(4.6545455,0,0,4.6545455,-13.580429,1027.7638)\"\n id=\"path3004\"\n style=\"fill-opacity:1;fill-rule:nonzero\" />\n </g>\n <metadata\n id=\"metadata3772\">\n <rdf:RDF>\n <cc:Work\n rdf:about=\"\">\n <dc:title></dc:title>\n <dc:format>image/svg+xml</dc:format>\n <dc:type\n rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\" />\n </cc:Work>\n </rdf:RDF>\n </metadata>\n</svg>\n"
},
"$:/plugins/felixhayashi/tiddlymap/media/surface.png": {
"title": "$:/plugins/felixhayashi/tiddlymap/media/surface.png",
"type": "image/png",
"text": "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"
},
"$:/config/EditTemplateFields/Visibility/tmap.id": {
"title": "$:/config/EditTemplateFields/Visibility/tmap.id",
"text": "hide"
},
"$:/language/Buttons/TiddlyMap/Caption": {
"title": "$:/language/Buttons/TiddlyMap/Caption",
"text": "tiddlymap"
},
"$:/language/Buttons/TiddlyMap/Hint": {
"title": "$:/language/Buttons/TiddlyMap/Hint",
"text": "Toggle TiddlyMap actions"
},
"$:/plugins/felixhayashi/tiddlymap/misc/macros": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/macros",
"text": "\\define concat(str) $str$\n\n\\define input-text(field, index, default, readonly, class, focus)\n <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n <$edit-text\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n type=\"text\"\n tag=\"input\"\n default=\"$default$\"\n focus=\"$focus$\"\n class=\"$class$\" />\n </$reveal>\n <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n <input type=\"text\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n </$reveal>\n\\end\n\n\\define input-button(field, index, default, default, label:\"Proceed\")\n <div class=\"tmap-button-wrapper\">\n <$button>$label$\n <$action-setfield $tiddler=<<output>> $field=\"$field$\" index=\"$index$\" $value=\"$default$\" />\n </$button>\n </div>\n\\end\n\n\\define input-textarea(field, index, default, default, class, focus)\n <$edit-text\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n autoHeight=\"no\"\n type=\"text\"\n tag=\"textarea\"\n default=\"$default$\"\n class=\"$class$\"\n focus=\"$focus$\" />\n\\end\n\n\\define input-checkbox(field, index, readonly, default)\n <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n <$checkbox\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n checked=\"true\"\n unchecked=\"false\"\n default=\"$default$\" />\n </$reveal>\n <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n <input type=\"checkbox\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n </$reveal>\n\\end\n\n\\define input-multi-checkbox(selectFilter, invert:\"no\", default)\n <div class=\"tmap-no-stretch\">\n <$list\n filter=\"$selectFilter$\"\n emptyMessage=\"– This list contains no items –\">\n <$checkbox\n tiddler=<<output>>\n tag=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n <$view\n tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">>\n field=\"title\" />\n </$checkbox><br />\n </$list>\n </div>\n\\end\n\n\\define input-select(field, index, selectFilter, default, nochoice)\n <$select\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n default=\"$default$\">\n <$set name=\"nochoice\" value=\"$nochoice$\">\n <$list filter=\"[<nochoice>regexp[.+]]\">\n <option value=\"\"><b><<nochoice>></b></option>\n </$list>\n </$set>\n <$list filter=\"$selectFilter$\">\n <option value=<<tmap \"splitAndSelect\" \"|\" \"0\">> >\n <$view tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">> field=\"title\" />\n </option>\n </$list>\n </$select>\n\\end\n\n\\define input-radio(field, index, selectFilter, default)\n <$list filter=\"$selectFilter$\">\n <$radio\n tiddler=<<output>>\n field=\"$field$\"\n index=\"$index$\"\n value=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n <<tmap \"splitAndSelect\" \"|\" \"1\">>\n </$radio><br />\n </$list>\n\\end\n\n\\define tmap-row(title, field, index, type, descr, note, label, default, readonly, reset, selectFilter, nochoice, invert, class, focus)\n <tr>\n <td class=\"tmap-title\">$title$:</td>\n <td>\n <<$type$\n field:\"$field$\"\n index:\"$index$\"\n readonly:\"$readonly$\"\n default:\"$default$\"\n label:\"$label$\"\n invert:\"$invert$\"\n selectFilter:\"$selectFilter$\"\n nochoice:\"$nochoice$\"\n focus:\"$focus$\"\n class:\"$class$\">>\n <$reveal type=\"match\" text=\"true\" default=\"$reset$\">\n <$button>reset\n <$action-setfield $tiddler=<<output>> $field=\"$field$\" $index=\"$index$\" $value=\"$default$\" />\n </$button>\n </$reveal>\n </td>\n <td>\n <span class=\"tmap-description\">$descr$</span>\n <$reveal type=\"nomatch\" text=\"\" default=\"$note$\">\n <div class=\"tmap-note\">''Note:'' $note$</div>\n </$reveal>\n </td>\n </tr>\n\\end\n\n\\define visConfiguration(inheritedList, extensionField, styleName:\"style\")\n <fieldset><legend>Visjs configurations ($styleName$)</legend>\n <div class=\"tmap-flash-message tmap-info\">\n Only config items that you actually changed have an effect on\n the graph. Other options are visible, yet, inactive.\n </div>\n <$tmap-config\n mode=\"manage-node-types\"\n inherited=\"$inheritedList$\"\n extension=\"$extensionField$\" />\n </fieldset>\n\\end\n"
},
"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder": {
"title": "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder",
"text": "Default"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic",
"description": "The style is applied to the node that you marked as central topic in a map.",
"style": "{\"font\":{\"size\":22,\"color\":\"rgba(0,0,0,1)\"},\"shape\":\"star\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour",
"description": "Neighbours are all nodes that are not part of the original set of nodes (\"matches\") but are connected (either outgoing or incoming) to a node of the original set.",
"style": "{\"color\":\"#565656\"}"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Default": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default",
"config.physics_mode": "false",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges",
"filter": "[prefix[$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes]]",
"text": "\n\n"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes",
"filter": "[field:title{$:/temp/tmap/currentTiddler}]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Live View": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View",
"config.refresh-triggers": "$:/temp/tmap/currentTiddler",
"config.physics_mode": "true",
"config.vis": "{\"physics\":{\"forceAtlas2Based\":{\"springConstant\":0.09}}}",
"config.neighbourhood_scope": "1",
"created": "20150331114808577",
"modified": "20200509212547688",
"type": "text/vnd.tiddlywiki",
"isview": "true"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes",
"filter": "[!is[system]search{$:/temp/search}] [!is[system]search:tags{$:/temp/search}] [!is[system]search:text{$:/temp/search}limit[10]]"
},
"$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search": {
"title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search",
"config.refresh-triggers": "$:/temp/search",
"config.neighbourhood_scope": "1",
"config.physics_mode": "true"
}
}
}
{
"field.nodeLabel": "caption",
"field.nodeIcon": "icon",
"field.nodeInfo": "description",
"field.viewMarker": "isview",
"liveTab.fallbackView": "Live View",
"edgeClickBehaviour": "manager",
"debug": "false",
"notifications": "true",
"popups.enabled": "true",
"popups.delay": "600",
"popups.width": "240px",
"popups.height": "140px",
"jsonIndentation": "1",
"alwaysAddNodeIdToViewFilter": "true",
"editNodeOnCreate": "false",
"singleClickMode": "false",
"nodeFilterNeighbours": "false",
"editorMenuBar.showNeighScopeButton": "true",
"editorMenuBar.showRasterMenuButton": "true",
"editorMenuBar.showScreenshotButton": "true"
}
{
"f1338f86-0930-4e71-8f52-163496983f0e": {
"x": 0,
"y": 0
},
"57a85536-7960-444d-b8e2-96463c2f09a7": {
"x": 100,
"y": 100
}
}
{
"c41007f9-269f-4816-9ccb-8f0bc0984aae": {},
"5a36eb4e-6548-49ef-b876-4535b38b2d70": {}
}
\define width() calc(100% - 15px)
<div class="tmap-mobile-editor">
<div class="tmap-flash-message tmap-warning">
The editor is not displayed in mobile mode.
</div>
</div>
<div class="tmap-desktop-editor">
<$tiddlymap
class="tmap-sidebar-map-editor"
editor="advanced"
object-id="main_editor"
click-to-use="false">
</$tiddlymap>
</div>
{
"originalVersion": "0.17.8+10010",
"dataStructureState": "0.11.0",
"showWelcomeMessage": false
}
{
"tiddlers": {
"$:/plugins/felixhayashi/topstoryview/config.js": {
"title": "$:/plugins/felixhayashi/topstoryview/config.js",
"text": "/*\\\n\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",backDrop:\"story-backdrop\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/topStoryView\",focussedTiddlerStore:\"$:/temp/focussedTiddler\",refreshTrigger:\"$:/temp/focussedTiddler/refresh\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
"type": "application/javascript",
"module-type": "library"
},
"$:/plugins/felixhayashi/topstoryview/layout": {
"text": "html .tc-story-river:after {\n content: \"\";\n display: block; }\n",
"title": "$:/plugins/felixhayashi/topstoryview/layout",
"type": "text/vnd.tiddlywiki",
"tags": [
"$:/tags/Stylesheet"
]
},
"$:/plugins/felixhayashi/topstoryview/Configuration": {
"title": "$:/plugins/felixhayashi/topstoryview/Configuration",
"text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n <tr>\n <th align=\"left\">Scroll offset:</th>\n <td><$edit-text tiddler=\"$:/config/topStoryView\" field=\"scroll-offset\" tag=\"input\" default=\"150px\" /></td>\n </tr>\n</table>"
},
"$:/plugins/felixhayashi/topstoryview/License": {
"title": "$:/plugins/felixhayashi/topstoryview/License",
"text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE"
},
"$:/plugins/felixhayashi/topstoryview/Readme": {
"title": "$:/plugins/felixhayashi/topstoryview/Readme",
"text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information."
},
"$:/plugins/felixhayashi/topstoryview/top.js": {
"title": "$:/plugins/felixhayashi/topstoryview/top.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n@preserve\n\n\\*/\n(function(){\"use strict\";var t=require(\"$:/plugins/felixhayashi/topstoryview/config.js\").config;var e=\"cubic-bezier(0.645, 0.045, 0.355, 1)\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\"th-opening-default-tiddlers-list\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\"scroll-offset\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height<i){t.style[\"paddingBottom\"]=i-e.height+\"px\";return}}t.style[\"paddingBottom\"]=\"\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoundingClientRect(),r={left:o.left+i.x,top:o.top+i.y,width:o.width,height:o.height};var n=function(t,e,i,o){if(t<=i){return t}else if(e<o&&i<t+e-o){return t+e-o}else if(i<t){return t}else{return i}},s=n(r.left,r.width,i.x,window.innerWidth),a=r.top-this.scrollOffset;if(s!==i.x||a!==i.y){var l=this,c;c=function(){var t;if(e<=0){t=1}else{t=(Date.now()-l.startTime)/e}if(t>=1){l.cancelScroll();t=1}t=$tw.utils.slowInSlowOut(t);window.scrollTo(i.x+(s-i.x)*t,i.y+(a-i.y)*t);if(t<1){l.idRequestFrame=l.requestAnimationFrame.call(window,c)}};c()}};i.prototype.startInsertAnimation=function(t,i){var o=$tw.utils.getAnimationDuration();var r=window.getComputedStyle(t),n=parseInt(r.marginBottom,10),s=parseInt(r.marginTop,10),a=t.offsetHeight+s;setTimeout((function(){$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:\"\"}]);i()}),o);$tw.utils.setStyle(t,[{transition:\"none\"},{marginBottom:-a+\"px\"},{opacity:\"0.0\"}]);$tw.utils.forceLayout(t);$tw.utils.setStyle(t,[{transition:\"opacity \"+o+\"ms \"+e+\", \"+\"margin-bottom \"+o+\"ms \"+e},{marginBottom:n+\"px\"},{opacity:\"1.0\"}])};i.prototype.startRemoveAnimation=function(t,i,o){var r=$tw.utils.getAnimationDuration();var n=i.offsetWidth,s=window.getComputedStyle(i),a=parseInt(s.marginBottom,10),l=parseInt(s.marginTop,10),c=i.offsetHeight+l;setTimeout(o,r);$tw.utils.setStyle(i,[{transition:\"none\"},{transform:\"translateX(0px)\"},{marginBottom:a+\"px\"},{opacity:\"1.0\"}]);$tw.utils.forceLayout(i);$tw.utils.setStyle(i,[{transition:$tw.utils.roundTripPropertyName(\"transform\")+\" \"+r+\"ms \"+e+\", \"+\"opacity \"+r+\"ms \"+e+\", \"+\"margin-bottom \"+r+\"ms \"+e},{transform:\"translateX(-\"+n+\"px)\"},{marginBottom:-c+\"px\"},{opacity:\"0.0\"}])};exports.top=i})();",
"type": "application/javascript",
"module-type": "storyview"
}
}
}
{
"tiddlers": {
"$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpiYzZmYmUxNi1mOTBkLWI1NDQtODUzOC05MjFkNjBiZjU0ZWI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmJjNmZiZTE2LWY5MGQtYjU0NC04NTM4LTkyMWQ2MGJmNTRlYjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz450LuoAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAATUSURBVHjajJZtTJVlGMd/13U/z+F4sBQOCiovZiMt8YiKZrMtypdh09StbLOtzA1RUmuTkppzIilJOB0Oa21tbaV+6UP5Mlnm5heVkfhyQJ1ONITAkAMqcTDonNOHA6g9qF3b/eF5/vf18r/u676uWwoLC3G73QCoKiICgIhQeGejVw3LMOTIP0xGdRQAFi1E9DyGSkLsKxtWEmAQuXfvHrJlyxZiYmIQkQHjeac/jjfKBsJ8YlnRzQKIgBoIh8ByaRSICAilRCjdk1UeAIhEIogIPT09SFFRER6PZ4DByqr1+WpRoYAquKYuqCPz9SZeeCVA4vggAC2XPVw54eXi0WTOH8yIslIIs+bryTsq+hl0d3cjxcXFuN1uVJVVp9dvEigSwP3iYj9vfV7L6IldPE5uXvZwcKuPsz/7+qLc/I1vexFAMBjEzJ49G9u2WV1TsEaVUhOBmJxVVeR9X8NTI3t5kgxN6GXakia67/bSeC4ZkexprccCZxLnVodCIRRgdU1BgsBuBVzz8qt49yv/oMb2f5TJd7kzBsXeLPHzal4VaiAmZnfupY0JIoKqKqoUGAHX9MV+llf4HxmtMaDyaDZLtvqZushPWEHsAlVFP/3rswSNsEEt4O0v/E9MCebx8PxCP5YNlr3hg7+/TFBEl6mClflGHUl9VdIvGycuJdDgvm/bAtu6j3c0uSmZufQhnRHPBsnIqcOyQGSZAjlEgCkLGh3RDHk6yJWTCQCUZi+gav8Mzh3KpGzeQgCuV3sZEhd06D2f3QgCas9XIuozCjw3q92xMXF8O8218QDM/fAMGLAsmLO2Jnof6rwkpjv10rLaURtEJimWJomtMDLdGUlyRhuBei8AU5Y0M2ZCMyPSW8hc2AxAW4OXUeOdbcKbFsQ2YKwkizCg1uAH9kxWOzU/+ga+X8s/Q/iBKur4w8tL79c69ESiTFXFQvQmyhhu1XsYNeHhW5s2o4OuwDB6ug2uISF8fZED9HQbgh1PM3Zah8PB7UYPGBBalDB+MFB/Kt6x0e0JMSzpDr9XxzmwprNxDB95F9eQkANrrI3HssFQq4hWAnDxaMqgaUoYF6DJ73X8b74Qz/C0Qds016tSUANqVypG92EMnD+SwZ9XPc5KSg/QWu900HotgRHjnA5uN3m4diojmiKzV3cNL25DdTvGwJESn0NhzMR2Ohqc6etoiidpgrNET3zrix6yKf3Bld8WLZ8IZcAG6ip9/LQpyOIt91vG2BltHCwezbbpKzEKYoFodKVO+fUh48f3+Lh20oexIBQqExFk586dxMbGkntp41rELscozFpRxaLN/6Mv/cf4hcMzCYdAzboDKXm7Ozs7MTk5ObhcLs4lzqmeeus4GCublgvJtF61Sc1qxR0beqzh7g4Xx3ZN5/KxaagCsvlASl4pQG9vb5TB0KFDibZtZfmlonxcVgVhAcuGjJxa0l9uImVKO3GpXahA4EYsjbXx3PgtmYbTk1CiKYM1h1LzKvrncmdnJ1JeXo7b7cYYQ9+A4L2r21IJR9ZhXOuxXGAZBvKv/Uui8wELVHYgUn44bdWNfmKRSIRgMIiUlJQQGxs78Krof7oYY8jt2TUCy3oH0XmI+MAejW0gYpoxxg/mF4zu3a8rbvXrPuigq6uLfwcA6IKAIsDf9kIAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/backIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/backIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC"
},
"$:/plugins/felixhayashi/vis/img/network/connectIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/connectIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/cross.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross.png",
"type": "image/png",
"text": "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/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMjowNToxNyswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ODJjNjBiMC1lM2YzLTA5NDAtODI1NC0xYmU5YjVhNGUxODM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjIxODYxNmM2LTM1MWMtNDI0OS04YWFkLWJkZDQ2ZTczNWE0NDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NTozNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjc8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NzwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cZUZMwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAA2ElEQVR42gDLADT/AS0tLUQFBQUVFxcXtPHx8fPl5eUNCAgITCkpKesEHx8fGgYGBjH+/v4a+Pj4qgQEBFU6OjodMTExzwQUFBSvEBAQEfX19SD19fVqNDQ0CElJSd/9/f2vAwEBAfrn5+fkBwcHLRYWFgsXFxfz29vbo9LS0uwDDQ0NDfPz81orKysXIyMj+ODg4Avh4eEa/f391gMkJCRYPz8/KUhISOMCAgKh8fHxHRsbGx4UFBQQBDk5OeY7Ozv7CAgItPb29vMEBASaJSUlTQ0NDesDAEwpT0Ko8Ri2AAAAAElFTkSuQmCC"
},
"$:/plugins/felixhayashi/vis/img/network/cross2.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/cross2.png",
"type": "image/png",
"text": "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/GMzLdsAADoRaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDExOjU2OjE1KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6OWIwNjRhODctYWNlZi1jMjQ5LTg5MWUtNDAxOTVmMWJjMTNkPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ZmEyNjNkMi05YzljLTVmNDgtYmIzYi04ZmJkOTZiOWUwYTI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjliMDY0YTg3LWFjZWYtYzI0OS04OTFlLTQwMTk1ZjFiYzEzZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj41PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjU8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PvQ0yV0AAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHZJREFUeNoAaQCW/wE1NTWrERER3+3t7Xbp6emKOTk5IgQtLS3kBAQEdfLy8ipOTk5LQ0NDkAE0NDQAEhISxiEhITkTExPH9PT0OgMGBgaPMzMzVS8vL7XU1NRC7+/vEQNfX19lUFBQtfPz82EEBAQMNTU1HwMAMI4nIAoe9RQAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/img/network/downArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/downArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/editIcon.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/editIcon.png",
"type": "image/png",
"text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg=="
},
"$:/plugins/felixhayashi/vis/img/network/leftArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/leftArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/minus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/minus.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/plus.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/plus.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/rightArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/rightArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/upArrow.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/upArrow.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png": {
"title": "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png",
"type": "image/png",
"text": "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"
},
"$:/plugins/felixhayashi/vis/img/timeline/delete.png": {
"title": "$:/plugins/felixhayashi/vis/img/timeline/delete.png",
"type": "image/png",
"text": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAl2cEFnAAAAEAAAABAAXMatwwAAAVRJREFUOMt108FKG1EUBuBvYtxbRGwxiGBXeYCW0mVpDSKVvIJ0F/syJsFdn6GCkaZ9gro3G1u0ILQgheJKRUwXPQNnxvTAcGf+c/7/nPvfO8UEKLCFJg5w31aNqGtgG3c4xLSZyP0QgI8Tpu0quQhyPwTgsBnkAVYD3MM9DibVId5GbiW+B+VIt7hJha1IdhPWDayVsBvcFtHlDYZ4mgou8D7e+zXyN/TwuUhjbkSXLHIZ61KNvItxaYyayBDrZsf36DyGdilQE+ngA57UyD+xg08luTSxHvP/wRuRewDm7uV9WJ4hsBy5rczJJm7G/tcS6VesjxN2Hj4c5S10Qj2Tz/AunrOEr0VtB+Z6vMJ+zfkfcVQjnMbRvcRC5B/hBU4auMbVjBFHCRsFdp6wK1yXHjz37xItRuejfFQ1nwb4HXVfs4nPYsQv0p+oKlLgNf7gGP4Cw4ZUK7kMJVEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDExLTA1LTE2VDExOjM1OjIxKzAyOjAw9uVF5gAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMS0wNS0xNlQxMTozNToyMSswMjowMIe4/VoAAAAASUVORK5CYII="
},
"$:/plugins/felixhayashi/vis/readme": {
"title": "$:/plugins/felixhayashi/vis/readme",
"text": "! TW5-Vis.js\n\nA tiddlywiki plugin for the vis.js library.\n\n---\n\n! Notes on Copyright\n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n1. BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n2. Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! The **vis.js** library\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n1. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n2. MIT License (MIT)\n"
},
"$:/plugins/felixhayashi/vis/vis.css": {
"title": "$:/plugins/felixhayashi/vis/vis.css",
"type": "text/vnd.tiddlywiki",
"tags": "$:/tags/Stylesheet",
"text": "\\rules except list\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/>\n\\end\n\n.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=\"span\"]{min-height:0;width:auto}div.vis-configuration{position:relative;display:block;float:left;font-size:12px}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper::after{clear:both;content:\"\";display:block}div.vis-configuration.vis-config-option-container{display:block;width:495px;background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;margin-top:20px;left:10px;padding-left:5px}div.vis-configuration.vis-config-button{display:block;width:495px;height:25px;vertical-align:middle;line-height:25px;background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;margin-top:20px;left:10px;padding-left:5px;cursor:pointer;margin-bottom:30px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;width:495px;height:25px;vertical-align:middle;line-height:25px}div.vis-configuration.vis-config-item.vis-config-s2{left:10px;background-color:#f7f8fa;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s3{left:20px;background-color:#e4e9f0;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s4{left:30px;background-color:#cfd8e6;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:bold}div.vis-configuration.vis-config-label{width:120px;height:25px;line-height:25px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{top:1px;width:30px;height:19px;border:1px solid #444;border-radius:2px;padding:0;margin:0;cursor:pointer}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{position:relative;top:-5px;width:60px;padding:1px;margin:0;pointer-events:none}input.vis-configuration.vis-config-range{-webkit-appearance:none;border:0 solid white;background-color:rgba(0,0,0,0);width:300px;height:20px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{width:300px;height:5px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;border:1px solid #14334b;height:17px;width:17px;border-radius:50%;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2 0,#385380 100%);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(to bottom,#3876c2 0,#385380 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3876c2',endColorstr='#385380',GradientType=0);box-shadow:#111927 0 0 1px 0;margin-top:-7px}input.vis-configuration.vis-config-range:focus{outline:0}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-o-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:linear-gradient(to bottom,#9d9d9d 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9d9d9d',endColorstr='#c8c8c8',GradientType=0)}input.vis-configuration.vis-config-range::-moz-range-track{width:300px;height:10px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-moz-range-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:-moz-focusring{outline:1px solid white;outline-offset:-1px}input.vis-configuration.vis-config-range::-ms-track{width:300px;height:5px;background:transparent;border-color:transparent;border-width:6px 0;color:transparent}input.vis-configuration.vis-config-range::-ms-fill-lower{background:#777;border-radius:10px}input.vis-configuration.vis-config-range::-ms-fill-upper{background:#ddd;border-radius:10px}input.vis-configuration.vis-config-range::-ms-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:focus::-ms-fill-lower{background:#888}input.vis-configuration.vis-config-range:focus::-ms-fill-upper{background:#ccc}.vis-configuration-popup{position:absolute;background:rgba(57,76,89,0.85);border:2px solid #f2faff;line-height:30px;height:30px;width:150px;text-align:center;color:#fff;font-size:14px;border-radius:4px;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out}.vis-configuration-popup:after,.vis-configuration-popup:before{left:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}.vis-configuration-popup:after{border-color:rgba(136,183,213,0);border-left-color:rgba(57,76,89,0.85);border-width:8px;margin-top:-8px}.vis-configuration-popup:before{border-color:rgba(194,225,245,0);border-left-color:#f2faff;border-width:12px;margin-top:-12px}div.vis-tooltip{position:absolute;visibility:hidden;padding:5px;white-space:nowrap;font-family:verdana;font-size:14px;color:#000;background-color:#f5f4ed;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #808074;box-shadow:3px 3px 10px rgba(0,0,0,0.2);pointer-events:none;z-index:5}div.vis-color-picker{position:absolute;top:0;left:30px;margin-top:-140px;margin-left:30px;width:310px;height:444px;z-index:1;padding:10px;border-radius:15px;background-color:#fff;display:none;box-shadow:rgba(0,0,0,0.5) 0 0 10px 0}div.vis-color-picker div.vis-arrow{position:absolute;top:147px;left:5px}div.vis-color-picker div.vis-arrow::after,div.vis-color-picker div.vis-arrow::before{right:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}div.vis-color-picker div.vis-arrow:after{border-color:rgba(255,255,255,0);border-right-color:#fff;border-width:30px;margin-top:-30px}div.vis-color-picker div.vis-color{position:absolute;width:289px;height:289px;cursor:pointer}div.vis-color-picker div.vis-brightness{position:absolute;top:313px}div.vis-color-picker div.vis-opacity{position:absolute;top:350px}div.vis-color-picker div.vis-selector{position:absolute;top:137px;left:137px;width:15px;height:15px;border-radius:15px;border:1px solid #fff;background:#4c4c4c;background:-moz-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4c4c4c),color-stop(12%,#595959),color-stop(25%,#666),color-stop(39%,#474747),color-stop(50%,#2c2c2c),color-stop(51%,#000),color-stop(60%,#111),color-stop(76%,#2b2b2b),color-stop(91%,#1c1c1c),color-stop(100%,#131313));background:-webkit-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-o-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-ms-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:linear-gradient(to bottom,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c4c4c',endColorstr='#131313',GradientType=0)}div.vis-color-picker div.vis-new-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:159px;text-align:right;padding-right:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-initial-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:10px;text-align:left;padding-left:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-label{position:absolute;width:300px;left:10px}div.vis-color-picker div.vis-label.vis-brightness{top:300px}div.vis-color-picker div.vis-label.vis-opacity{top:338px}div.vis-color-picker div.vis-button{position:absolute;width:68px;height:25px;border-radius:10px;vertical-align:middle;text-align:center;line-height:25px;top:410px;border:2px solid #d9d9d9;background-color:#f7f7f7;cursor:pointer}div.vis-color-picker div.vis-button.vis-cancel{left:5px}div.vis-color-picker div.vis-button.vis-load{left:82px}div.vis-color-picker div.vis-button.vis-apply{left:159px}div.vis-color-picker div.vis-button.vis-save{left:236px}div.vis-color-picker input.vis-range{width:290px;height:20px}div.vis-network div.vis-manipulation{box-sizing:content-box;border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#fcfcfc',GradientType=0);padding-top:4px;position:absolute;left:0;top:0;width:100%;height:28px}div.vis-network div.vis-edit-mode{position:absolute;left:0;top:5px;height:30px}div.vis-network div.vis-close{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/cross.png\">>);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-close:hover{opacity:.6}div.vis-network div.vis-manipulation div.vis-button,div.vis-network div.vis-edit-mode div.vis-button{float:left;font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin-left:10px;cursor:pointer;padding:0 8px 0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-manipulation div.vis-button:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.20)}div.vis-network div.vis-manipulation div.vis-button:active{box-shadow:1px 1px 8px rgba(0,0,0,0.50)}div.vis-network div.vis-manipulation div.vis-button.vis-back{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/backIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-none:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.0);cursor:default}div.vis-network div.vis-manipulation div.vis-button.vis-none:active{box-shadow:1px 1px 8px rgba(0,0,0,0.0)}div.vis-network div.vis-manipulation div.vis-button.vis-none{padding:0}div.vis-network div.vis-manipulation div.notification{margin:2px;font-weight:bold}div.vis-network div.vis-manipulation div.vis-button.vis-add{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-edit,div.vis-network div.vis-edit-mode div.vis-button.vis-edit{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/editIcon.png\">>)}div.vis-network div.vis-edit-mode div.vis-button.vis-edit.vis-edit-mode{background-color:#fcfcfc;border:1px solid #ccc}div.vis-network div.vis-manipulation div.vis-button.vis-connect{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/connectIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-delete{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-label,div.vis-network div.vis-edit-mode div.vis-label{margin:0 0 0 23px;line-height:25px}div.vis-network div.vis-manipulation div.vis-separator-line{float:left;display:inline-block;width:1px;height:21px;background-color:#bdbdbd;margin:0 7px 0 15px}div.vis-network div.vis-navigation div.vis-button{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-navigation div.vis-button:hover{box-shadow:0 0 3px 3px rgba(56,207,21,0.30)}div.vis-network div.vis-navigation div.vis-button:active{box-shadow:0 0 1px 3px rgba(56,207,21,0.95)}div.vis-network div.vis-navigation div.vis-button.vis-up{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/upArrow.png\">>);bottom:50px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-down{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/downArrow.png\">>);bottom:10px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-left{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/leftArrow.png\">>);bottom:10px;left:15px}div.vis-network div.vis-navigation div.vis-button.vis-right{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/rightArrow.png\">>);bottom:10px;left:95px}div.vis-network div.vis-navigation div.vis-button.vis-zoomIn{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/plus.png\">>);bottom:10px;right:15px}div.vis-network div.vis-navigation div.vis-button.vis-zoomOut{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/minus.png\">>);bottom:10px;right:55px}div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png\">>);bottom:50px;right:15px}.vis-current-time{background-color:#ff7f6e;width:2px;z-index:1;pointer-events:none}.vis-rolling-mode-btn{height:40px;width:40px;position:absolute;top:7px;right:20px;border-radius:50%;font-size:28px;cursor:pointer;opacity:.8;color:white;font-weight:bold;text-align:center;background:#3876c2}.vis-rolling-mode-btn:before{content:\"\\26F6\"}.vis-rolling-mode-btn:hover{opacity:1}.vis-custom-time{background-color:#6e94ff;width:2px;cursor:move;z-index:1}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-minor{border-color:#e5e5e5}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-major{border-color:#bfbfbf}.vis-data-axis .vis-y-axis.vis-major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-major.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-minor.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis-data-axis .vis-y-axis.vis-title.vis-measure{padding:0;margin:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title.vis-left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis-data-axis .vis-y-axis.vis-title.vis-right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis-legend{background-color:rgba(247,252,255,0.65);padding:5px;border:1px solid #b3b3b3;box-shadow:2px 2px 10px rgba(154,154,154,0.55)}.vis-legend-text{white-space:nowrap;display:inline-block}.vis-item{position:absolute;color:#1a1a1a;border-color:#97b0f8;border-width:1px;background-color:#d5ddf6;display:inline-block;z-index:1}.vis-item.vis-selected{border-color:#ffc200;background-color:#fff785;z-index:2}.vis-editable.vis-selected{cursor:move}.vis-item.vis-point.vis-selected{background-color:#fff785}.vis-item.vis-box{text-align:center;border-style:solid;border-radius:2px}.vis-item.vis-point{background:0}.vis-item.vis-dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis-item.vis-range{border-style:solid;border-radius:2px;box-sizing:border-box}.vis-item.vis-background{border:0;background-color:rgba(213,221,246,0.4);box-sizing:border-box;padding:0;margin:0}.vis-item .vis-item-overflow{position:relative;width:100%;height:100%;padding:0;margin:0;overflow:hidden}.vis-item-visible-frame{white-space:nowrap}.vis-item.vis-range .vis-item-content{position:relative;display:inline-block}.vis-item.vis-background .vis-item-content{position:absolute;display:inline-block}.vis-item.vis-line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis-item .vis-item-content{white-space:nowrap;box-sizing:border-box;padding:5px}.vis-item .vis-onUpdateTime-tooltip{position:absolute;background:#4f81bd;color:white;width:200px;text-align:center;white-space:nowrap;padding:5px;border-radius:1px;transition:.4s;-o-transition:.4s;-moz-transition:.4s;-webkit-transition:.4s}.vis-item .vis-delete,.vis-item .vis-delete-rtl{position:absolute;top:0;width:24px;height:24px;box-sizing:border-box;padding:0 5px;cursor:pointer;-webkit-transition:background .2s linear;-moz-transition:background .2s linear;-ms-transition:background .2s linear;-o-transition:background .2s linear;transition:background .2s linear}.vis-item .vis-delete{right:-24px}.vis-item .vis-delete-rtl{left:-24px}.vis-item .vis-delete:after,.vis-item .vis-delete-rtl:after{content:\"\\00D7\";color:red;font-family:arial,sans-serif;font-size:22px;font-weight:bold;-webkit-transition:color .2s linear;-moz-transition:color .2s linear;-ms-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.vis-item .vis-delete:hover,.vis-item .vis-delete-rtl:hover{background:red}.vis-item .vis-delete:hover:after,.vis-item .vis-delete-rtl:hover:after{color:white}.vis-item .vis-drag-center{position:absolute;width:100%;height:100%;top:0;left:0;cursor:move}.vis-item.vis-range .vis-drag-left{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;left:-4px;cursor:w-resize}.vis-item.vis-range .vis-drag-right{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;right:-4px;cursor:e-resize}.vis-range.vis-item.vis-readonly .vis-drag-left,.vis-range.vis-item.vis-readonly .vis-drag-right{cursor:auto}.vis-itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis-itemset .vis-background,.vis-itemset .vis-foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis-axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis-foreground .vis-group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis-foreground .vis-group:last-child{border-bottom:0}.vis-nesting-group{cursor:pointer}.vis-nested-group{background:#f5f5f5}.vis-label.vis-nesting-group.expanded:before{content:\"\\25BC\"}.vis-label.vis-nesting-group.collapsed-rtl:before{content:\"\\25C0\"}.vis-label.vis-nesting-group.collapsed:before{content:\"\\25B6\"}.vis-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis-labelset .vis-label{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box}.vis-labelset .vis-label{border-bottom:1px solid #bfbfbf}.vis-labelset .vis-label.draggable{cursor:pointer}.vis-labelset .vis-label:last-child{border-bottom:0}.vis-labelset .vis-label .vis-inner{display:inline-block;padding:5px}.vis-labelset .vis-label .vis-inner.vis-hidden{padding:0}.vis-panel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right,.vis-panel.vis-top,.vis-panel.vis-bottom{border:1px #bfbfbf}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis-left.vis-panel.vis-vertical-scroll,.vis-right.vis-panel.vis-vertical-scroll{height:100%;overflow-x:hidden;overflow-y:scroll}.vis-left.vis-panel.vis-vertical-scroll{direction:rtl}.vis-left.vis-panel.vis-vertical-scroll .vis-content{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll .vis-content{direction:rtl}.vis-panel.vis-center,.vis-panel.vis-top,.vis-panel.vis-bottom{border-left-style:solid;border-right-style:solid}.vis-background{overflow:hidden}.vis-panel>.vis-content{position:relative}.vis-panel .vis-shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,0.8)}.vis-panel .vis-shadow.vis-top{top:-1px;left:0}.vis-panel .vis-shadow.vis-bottom{bottom:-1px;left:0}.vis-graph-group0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis-graph-group1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis-graph-group2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis-graph-group3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis-graph-group4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis-graph-group5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis-graph-group6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis-graph-group7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis-graph-group8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis-graph-group9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis-timeline .vis-fill{fill-opacity:.1;stroke:none}.vis-timeline .vis-bar{fill-opacity:.5;stroke-width:1px}.vis-timeline .vis-point{stroke-width:2px;fill-opacity:1.0}.vis-timeline .vis-legend-background{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis-timeline .vis-outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis-timeline .vis-icon-fill{fill-opacity:.3;stroke:none}.vis-time-axis{position:relative;overflow:hidden}.vis-time-axis.vis-foreground{top:0;left:0;width:100%}.vis-time-axis.vis-background{position:absolute;top:0;left:0;width:100%;height:100%}.vis-time-axis .vis-text{position:absolute;color:#4d4d4d;padding:3px;overflow:hidden;box-sizing:border-box;white-space:nowrap}.vis-time-axis .vis-text.vis-measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis-time-axis .vis-grid.vis-vertical{position:absolute;border-left:1px solid}.vis-time-axis .vis-grid.vis-vertical-rtl{position:absolute;border-right:1px solid}.vis-time-axis .vis-grid.vis-minor{border-color:#e5e5e5}.vis-time-axis .vis-grid.vis-major{border-color:#bfbfbf}.vis-timeline{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}"
},
"$:/plugins/felixhayashi/vis/vis.js": {
"title": "$:/plugins/felixhayashi/vis/vis.js",
"text": "/*\\\ntitle: $:/plugins/felixhayashi/vis/vis.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\\*/\n\n/*** TO AVOID STRANGE LIB ERRORS FROM BUBBLING UP *****************/\n\nif($tw.boot.tasks.trapErrors) {\n\n var defaultHandler = window.onerror;\n window.onerror = function(errorMsg, url, lineNumber) {\n \n if(errorMsg.indexOf(\"NS_ERROR_NOT_AVAILABLE\") !== -1\n && url == \"$:/plugins/felixhayashi/vis/vis.js\") {\n \n var text = \"Strange firefox related vis.js error (see #125)\";\n console.error(text, arguments);\n \n } else if(errorMsg.indexOf(\"Permission denied to access property\") !== -1) {\n \n var text = \"Strange firefox related vis.js error (see #163)\";\n console.error(text, arguments);\n \n } else if(defaultHandler) {\n \n defaultHandler.apply(this, arguments);\n \n }\n \n }\n \n}\n\n/******************************************************************/\n\n/**\n * vis.js\n * https://github.com/almende/vis\n *\n * A dynamic, browser-based visualization library.\n *\n * @version 4.21.0\n * @date 2017-10-12\n *\n * @license\n * Copyright (C) 2011-2017 Almende B.V, http://almende.com\n *\n * Vis.js is dual licensed under both\n *\n * * The Apache 2.0 License\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * and\n *\n * * The MIT License\n * http://opensource.org/licenses/MIT\n *\n * Vis.js may be distributed under either license.\n */\n\"use strict\";(function webpackUniversalModuleDefinition(root,factory){if(typeof exports===\"object\"&&typeof module===\"object\")module.exports=factory();else if(typeof define===\"function\"&&define.amd)define([],factory);else if(typeof exports===\"object\")exports[\"vis\"]=factory();else root[\"vis\"]=factory()})(this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\"default\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\"a\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=123)}([function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;exports.default=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\")}}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _defineProperty=__webpack_require__(169);var _defineProperty2=_interopRequireDefault(_defineProperty);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if(\"value\"in descriptor)descriptor.writable=true;(0,_defineProperty2.default)(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}()},function(module,exports,__webpack_require__){\"use strict\";var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var moment=__webpack_require__(9);var uuid=__webpack_require__(157);exports.isNumber=function(object){return object instanceof Number||typeof object==\"number\"};exports.recursiveDOMDelete=function(DOMobject){if(DOMobject){while(DOMobject.hasChildNodes()===true){exports.recursiveDOMDelete(DOMobject.firstChild);DOMobject.removeChild(DOMobject.firstChild)}}};exports.giveRange=function(min,max,total,value){if(max==min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}};exports.isString=function(object){return object instanceof String||typeof object==\"string\"};exports.isDate=function(object){if(object instanceof Date){return true}else if(exports.isString(object)){var match=ASPDateRegex.exec(object);if(match){return true}else if(!isNaN(Date.parse(object))){return true}}return false};exports.randomUUID=function(){return uuid.v4()};exports.assignAllKeys=function(obj,value){for(var prop in obj){if(obj.hasOwnProperty(prop)){if((0,_typeof3[\"default\"])(obj[prop])!==\"object\"){obj[prop]=value}}}};function copyOrDelete(a,b,prop,allowDeletion){var doDeletion=false;if(allowDeletion===true){doDeletion=b[prop]===null&&a[prop]!==undefined}if(doDeletion){delete a[prop]}else{a[prop]=b[prop]}}exports.fillIfDefined=function(a,b){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;for(var prop in a){if(b[prop]!==undefined){if(b[prop]===null||(0,_typeof3[\"default\"])(b[prop])!==\"object\"){copyOrDelete(a,b,prop,allowDeletion)}else{if((0,_typeof3[\"default\"])(a[prop])===\"object\"){exports.fillIfDefined(a[prop],b[prop],allowDeletion)}}}}};exports.extend=function(a,b){for(var i=1;i<arguments.length;i++){var other=arguments[i];for(var prop in other){if(other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveExtend=function(props,a,b){if(!Array.isArray(props)){throw new Error(\"Array with property names expected as first argument\")}for(var i=2;i<arguments.length;i++){var other=arguments[i];for(var p=0;p<props.length;p++){var prop=props[p];if(other&&other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveDeepExtend=function(props,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var p=0;p<props.length;p++){var prop=props[p];if(b.hasOwnProperty(prop)){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],false,allowDeletion)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){throw new TypeError(\"Arrays are not supported by deepExtend\")}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.selectiveNotDeepExtend=function(propsToExclude,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var prop in b){if(!b.hasOwnProperty(prop))continue;if(propsToExclude.indexOf(prop)!==-1)continue;if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop])}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}return a};exports.deepExtend=function(a,b){var protoExtend=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;for(var prop in b){if(b.hasOwnProperty(prop)||protoExtend===true){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],protoExtend)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.equalArray=function(a,b){if(a.length!=b.length)return false;for(var i=0,len=a.length;i<len;i++){if(a[i]!=b[i])return false}return true};exports.convert=function(object,type){var match;if(object===undefined){return undefined}if(object===null){return null}if(!type){return object}if(!(typeof type===\"string\")&&!(type instanceof String)){throw new Error(\"Type must be a string\")}switch(type){case\"boolean\":case\"Boolean\":return Boolean(object);case\"number\":case\"Number\":if(exports.isString(object)&&!isNaN(Date.parse(object))){return moment(object).valueOf()}else{return Number(object.valueOf())}case\"string\":case\"String\":return String(object);case\"Date\":if(exports.isNumber(object)){return new Date(object)}if(object instanceof Date){return new Date(object.valueOf())}else if(moment.isMoment(object)){return new Date(object.valueOf())}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1]))}else{return moment(new Date(object)).toDate()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"Moment\":if(exports.isNumber(object)){return moment(object)}if(object instanceof Date){return moment(object.valueOf())}else if(moment.isMoment(object)){return moment(object)}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return moment(Number(match[1]))}else{return moment(object)}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"ISODate\":if(exports.isNumber(object)){return new Date(object)}else if(object instanceof Date){return object.toISOString()}else if(moment.isMoment(object)){return object.toDate().toISOString()}else if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1])).toISOString()}else{return moment(object).format()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ISODate\")}case\"ASPDate\":if(exports.isNumber(object)){return\"/Date(\"+object+\")/\"}else if(object instanceof Date){return\"/Date(\"+object.valueOf()+\")/\"}else if(exports.isString(object)){match=ASPDateRegex.exec(object);var value;if(match){value=new Date(Number(match[1])).valueOf()}else{value=new Date(object).valueOf()}return\"/Date(\"+value+\")/\"}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ASPDate\")}default:throw new Error('Unknown type \"'+type+'\"')}};var ASPDateRegex=/^\\/?Date\\((\\-?\\d+)/i;exports.getType=function(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type==\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"Boolean\"}if(object instanceof Number){return\"Number\"}if(object instanceof String){return\"String\"}if(Array.isArray(object)){return\"Array\"}if(object instanceof Date){return\"Date\"}return\"Object\"}else if(type==\"number\"){return\"Number\"}else if(type==\"boolean\"){return\"Boolean\"}else if(type==\"string\"){return\"String\"}else if(type===undefined){return\"undefined\"}return type};exports.copyAndExtendArray=function(arr,newValue){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}newArr.push(newValue);return newArr};exports.copyArray=function(arr){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}return newArr};exports.getAbsoluteLeft=function(elem){return elem.getBoundingClientRect().left};exports.getAbsoluteRight=function(elem){return elem.getBoundingClientRect().right};exports.getAbsoluteTop=function(elem){return elem.getBoundingClientRect().top};exports.addClassName=function(elem,classNames){var classes=elem.className.split(\" \");var newClasses=classNames.split(\" \");classes=classes.concat(newClasses.filter(function(className){return classes.indexOf(className)<0}));elem.className=classes.join(\" \")};exports.removeClassName=function(elem,classNames){var classes=elem.className.split(\" \");var oldClasses=classNames.split(\" \");classes=classes.filter(function(className){return oldClasses.indexOf(className)<0});elem.className=classes.join(\" \")};exports.forEach=function(object,callback){var i,len;if(Array.isArray(object)){for(i=0,len=object.length;i<len;i++){callback(object[i],i,object)}}else{for(i in object){if(object.hasOwnProperty(i)){callback(object[i],i,object)}}}};exports.toArray=function(object){var array=[];for(var prop in object){if(object.hasOwnProperty(prop))array.push(object[prop])}return array};exports.updateProperty=function(object,key,value){if(object[key]!==value){object[key]=value;return true}else{return false}};exports.throttle=function(fn){var scheduled=false;return function throttled(){if(!scheduled){scheduled=true;requestAnimationFrame(function(){scheduled=false;fn()})}}};exports.addEventListener=function(element,action,listener,useCapture){if(element.addEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.addEventListener(action,listener,useCapture)}else{element.attachEvent(\"on\"+action,listener)}};exports.removeEventListener=function(element,action,listener,useCapture){if(element.removeEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.removeEventListener(action,listener,useCapture)}else{element.detachEvent(\"on\"+action,listener)}};exports.preventDefault=function(event){if(!event)event=window.event;if(event.preventDefault){event.preventDefault()}else{event.returnValue=false}};exports.getTarget=function(event){if(!event){event=window.event}var target;if(event.target){target=event.target}else if(event.srcElement){target=event.srcElement}if(target.nodeType!=undefined&&target.nodeType==3){target=target.parentNode}return target};exports.hasParent=function(element,parent){var e=element;while(e){if(e===parent){return true}e=e.parentNode}return false};exports.option={};exports.option.asBoolean=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return value!=false}return defaultValue||null};exports.option.asNumber=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return Number(value)||defaultValue||null}return defaultValue||null};exports.option.asString=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return String(value)}return defaultValue||null};exports.option.asSize=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(exports.isString(value)){return value}else if(exports.isNumber(value)){return value+\"px\"}else{return defaultValue||null}};exports.option.asElement=function(value,defaultValue){if(typeof value==\"function\"){value=value()}return value||defaultValue||null};exports.hexToRGB=function(hex){var shorthandRegex=/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;hex=hex.replace(shorthandRegex,function(m,r,g,b){return r+r+g+g+b+b});var result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null};exports.overrideOpacity=function(color,opacity){var rgb;if(color.indexOf(\"rgba\")!=-1){return color}else if(color.indexOf(\"rgb\")!=-1){rgb=color.substr(color.indexOf(\"(\")+1).replace(\")\",\"\").split(\",\");return\"rgba(\"+rgb[0]+\",\"+rgb[1]+\",\"+rgb[2]+\",\"+opacity+\")\"}else{rgb=exports.hexToRGB(color);if(rgb==null){return color}else{return\"rgba(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\",\"+opacity+\")\"}}};exports.RGBToHex=function(red,green,blue){return\"#\"+((1<<24)+(red<<16)+(green<<8)+blue).toString(16).slice(1)};exports.parseColor=function(color){var c;if(exports.isString(color)===true){if(exports.isValidRGB(color)===true){var rgb=color.substr(4).substr(0,color.length-5).split(\",\").map(function(value){return parseInt(value)});color=exports.RGBToHex(rgb[0],rgb[1],rgb[2])}if(exports.isValidHex(color)===true){var hsv=exports.hexToHSV(color);var lighterColorHSV={h:hsv.h,s:hsv.s*.8,v:Math.min(1,hsv.v*1.02)};var darkerColorHSV={h:hsv.h,s:Math.min(1,hsv.s*1.25),v:hsv.v*.8};var darkerColorHex=exports.HSVToHex(darkerColorHSV.h,darkerColorHSV.s,darkerColorHSV.v);var lighterColorHex=exports.HSVToHex(lighterColorHSV.h,lighterColorHSV.s,lighterColorHSV.v);c={background:color,border:darkerColorHex,highlight:{background:lighterColorHex,border:darkerColorHex},hover:{background:lighterColorHex,border:darkerColorHex}}}else{c={background:color,border:color,highlight:{background:color,border:color},hover:{background:color,border:color}}}}else{c={};c.background=color.background||undefined;c.border=color.border||undefined;if(exports.isString(color.highlight)){c.highlight={border:color.highlight,background:color.highlight}}else{c.highlight={};c.highlight.background=color.highlight&&color.highlight.background||undefined;c.highlight.border=color.highlight&&color.highlight.border||undefined}if(exports.isString(color.hover)){c.hover={border:color.hover,background:color.hover}}else{c.hover={};c.hover.background=color.hover&&color.hover.background||undefined;c.hover.border=color.hover&&color.hover.border||undefined}}return c};exports.RGBToHSV=function(red,green,blue){red=red/255;green=green/255;blue=blue/255;var minRGB=Math.min(red,Math.min(green,blue));var maxRGB=Math.max(red,Math.max(green,blue));if(minRGB==maxRGB){return{h:0,s:0,v:minRGB}}var d=red==minRGB?green-blue:blue==minRGB?red-green:blue-red;var h=red==minRGB?3:blue==minRGB?1:5;var hue=60*(h-d/(maxRGB-minRGB))/360;var saturation=(maxRGB-minRGB)/maxRGB;var value=maxRGB;return{h:hue,s:saturation,v:value}};var cssUtil={split:function split(cssText){var styles={};cssText.split(\";\").forEach(function(style){if(style.trim()!=\"\"){var parts=style.split(\":\");var key=parts[0].trim();var value=parts[1].trim();styles[key]=value}});return styles},join:function join(styles){return(0,_keys2[\"default\"])(styles).map(function(key){return key+\": \"+styles[key]}).join(\"; \")}};exports.addCssText=function(element,cssText){var currentStyles=cssUtil.split(element.style.cssText);var newStyles=cssUtil.split(cssText);var styles=exports.extend(currentStyles,newStyles);element.style.cssText=cssUtil.join(styles)};exports.removeCssText=function(element,cssText){var styles=cssUtil.split(element.style.cssText);var removeStyles=cssUtil.split(cssText);for(var key in removeStyles){if(removeStyles.hasOwnProperty(key)){delete styles[key]}}element.style.cssText=cssUtil.join(styles)};exports.HSVToRGB=function(h,s,v){var r,g,b;var i=Math.floor(h*6);var f=h*6-i;var p=v*(1-s);var q=v*(1-f*s);var t=v*(1-(1-f)*s);switch(i%6){case 0:r=v,g=t,b=p;break;case 1:r=q,g=v,b=p;break;case 2:r=p,g=v,b=t;break;case 3:r=p,g=q,b=v;break;case 4:r=t,g=p,b=v;break;case 5:r=v,g=p,b=q;break}return{r:Math.floor(r*255),g:Math.floor(g*255),b:Math.floor(b*255)}};exports.HSVToHex=function(h,s,v){var rgb=exports.HSVToRGB(h,s,v);return exports.RGBToHex(rgb.r,rgb.g,rgb.b)};exports.hexToHSV=function(hex){var rgb=exports.hexToRGB(hex);return exports.RGBToHSV(rgb.r,rgb.g,rgb.b)};exports.isValidHex=function(hex){var isOk=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(hex);return isOk};exports.isValidRGB=function(rgb){rgb=rgb.replace(\" \",\"\");var isOk=/rgb\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3})\\)/i.test(rgb);return isOk};exports.isValidRGBA=function(rgba){rgba=rgba.replace(\" \",\"\");var isOk=/rgba\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3}),(.{1,3})\\)/i.test(rgba);return isOk};exports.selectiveBridgeObject=function(fields,referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);for(var i=0;i<fields.length;i++){if(referenceObject.hasOwnProperty(fields[i])){if((0,_typeof3[\"default\"])(referenceObject[fields[i]])==\"object\"){objectTo[fields[i]]=exports.bridgeObject(referenceObject[fields[i]])}}}return objectTo}else{return null}};exports.bridgeObject=function(referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);if(referenceObject instanceof Element){objectTo=referenceObject}else{objectTo=(0,_create2[\"default\"])(referenceObject);for(var i in referenceObject){if(referenceObject.hasOwnProperty(i)){if((0,_typeof3[\"default\"])(referenceObject[i])==\"object\"){objectTo[i]=exports.bridgeObject(referenceObject[i])}}}}return objectTo}else{return null}};exports.insertSort=function(a,compare){for(var i=0;i<a.length;i++){var k=a[i];for(var j=i;j>0&&compare(k,a[j-1])<0;j--){a[j]=a[j-1]}a[j]=k}return a};exports.mergeOptions=function(mergeTarget,options,option){var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var isPresent=function isPresent(obj){return obj!==null&&obj!==undefined};var isObject=function isObject(obj){return obj!==null&&(typeof obj===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(obj))===\"object\"};var isEmpty=function isEmpty(obj){for(var x in obj){if(obj.hasOwnProperty(x))return false}return true};if(!isObject(mergeTarget)){throw new Error(\"Parameter mergeTarget must be an object\")}if(!isObject(options)){throw new Error(\"Parameter options must be an object\")}if(!isPresent(option)){throw new Error(\"Parameter option must have a value\")}if(!isObject(globalOptions)){throw new Error(\"Parameter globalOptions must be an object\")}var doMerge=function doMerge(target,options,option){if(!isObject(target[option])){target[option]={}}var src=options[option];var dst=target[option];for(var prop in src){if(src.hasOwnProperty(prop)){dst[prop]=src[prop]}}};var srcOption=options[option];var globalPassed=isObject(globalOptions)&&!isEmpty(globalOptions);var globalOption=globalPassed?globalOptions[option]:undefined;var globalEnabled=globalOption?globalOption.enabled:undefined;if(srcOption===undefined){return}if(typeof srcOption===\"boolean\"){if(!isObject(mergeTarget[option])){mergeTarget[option]={}}mergeTarget[option].enabled=srcOption;return}if(srcOption===null&&!isObject(mergeTarget[option])){if(isPresent(globalOption)){mergeTarget[option]=(0,_create2[\"default\"])(globalOption)}else{return}}if(!isObject(srcOption)){return}var enabled=true;if(srcOption.enabled!==undefined){enabled=srcOption.enabled}else{if(globalEnabled!==undefined){enabled=globalOption.enabled}}doMerge(mergeTarget,options,option);mergeTarget[option].enabled=enabled};exports.binarySearchCustom=function(orderedItems,comparator,field,field2){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;while(low<=high&&iteration<maxIterations){var middle=Math.floor((low+high)/2);var item=orderedItems[middle];var value=field2===undefined?item[field]:item[field][field2];var searchResult=comparator(value);if(searchResult==0){return middle}else if(searchResult==-1){low=middle+1}else{high=middle-1}iteration++}return-1};exports.binarySearchValue=function(orderedItems,target,field,sidePreference,comparator){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;var prevValue,value,nextValue,middle;comparator=comparator!=undefined?comparator:function(a,b){return a==b?0:a<b?-1:1};while(low<=high&&iteration<maxIterations){middle=Math.floor(.5*(high+low));prevValue=orderedItems[Math.max(0,middle-1)][field];value=orderedItems[middle][field];nextValue=orderedItems[Math.min(orderedItems.length-1,middle+1)][field];if(comparator(value,target)==0){return middle}else if(comparator(prevValue,target)<0&&comparator(value,target)>0){return sidePreference==\"before\"?Math.max(0,middle-1):middle}else if(comparator(value,target)<0&&comparator(nextValue,target)>0){return sidePreference==\"before\"?middle:Math.min(orderedItems.length-1,middle+1)}else{if(comparator(value,target)<0){low=middle+1}else{high=middle-1}}iteration++}return-1};exports.easingFunctions={linear:function linear(t){return t},easeInQuad:function easeInQuad(t){return t*t},easeOutQuad:function easeOutQuad(t){return t*(2-t)},easeInOutQuad:function easeInOutQuad(t){return t<.5?2*t*t:-1+(4-2*t)*t},easeInCubic:function easeInCubic(t){return t*t*t},easeOutCubic:function easeOutCubic(t){return--t*t*t+1},easeInOutCubic:function easeInOutCubic(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function easeInQuart(t){return t*t*t*t},easeOutQuart:function easeOutQuart(t){return 1- --t*t*t*t},easeInOutQuart:function easeInOutQuart(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function easeInQuint(t){return t*t*t*t*t},easeOutQuint:function easeOutQuint(t){return 1+--t*t*t*t*t},easeInOutQuint:function easeInOutQuint(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t}};exports.getScrollBarWidth=function(){var inner=document.createElement(\"p\");inner.style.width=\"100%\";inner.style.height=\"200px\";var outer=document.createElement(\"div\");outer.style.position=\"absolute\";outer.style.top=\"0px\";outer.style.left=\"0px\";outer.style.visibility=\"hidden\";outer.style.width=\"200px\";outer.style.height=\"150px\";outer.style.overflow=\"hidden\";outer.appendChild(inner);document.body.appendChild(outer);var w1=inner.offsetWidth;outer.style.overflow=\"scroll\";var w2=inner.offsetWidth;if(w1==w2)w2=outer.clientWidth;document.body.removeChild(outer);return w1-w2};exports.topMost=function(pile,accessors){var candidate=void 0;if(!Array.isArray(accessors)){accessors=[accessors]}var _iteratorNormalCompletion=true;var _didIteratorError=false;var _iteratorError=undefined;try{for(var _iterator=(0,_getIterator3[\"default\"])(pile),_step;!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=true){var member=_step.value;if(member){candidate=member[accessors[0]];for(var i=1;i<accessors.length;i++){if(candidate){candidate=candidate[accessors[i]]}else{continue}}if(typeof candidate!=\"undefined\"){break}}}}catch(err){_didIteratorError=true;_iteratorError=err}finally{try{if(!_iteratorNormalCompletion&&_iterator[\"return\"]){_iterator[\"return\"]()}}finally{if(_didIteratorError){throw _iteratorError}}}return candidate}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(194),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(self,call){if(!self){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return call&&((typeof call===\"undefined\"?\"undefined\":(0,_typeof3.default)(call))===\"object\"||typeof call===\"function\")?call:self}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _setPrototypeOf=__webpack_require__(196);var _setPrototypeOf2=_interopRequireDefault(_setPrototypeOf);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(subClass,superClass){if(typeof superClass!==\"function\"&&superClass!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+(typeof superClass===\"undefined\"?\"undefined\":(0,_typeof3.default)(superClass)))}subClass.prototype=(0,_create2.default)(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)_setPrototypeOf2.default?(0,_setPrototypeOf2.default)(subClass,superClass):subClass.__proto__=superClass}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _iterator=__webpack_require__(142);var _iterator2=_interopRequireDefault(_iterator);var _symbol=__webpack_require__(144);var _symbol2=_interopRequireDefault(_symbol);var _typeof=typeof _symbol2.default===\"function\"&&typeof _iterator2.default===\"symbol\"?function(obj){return typeof obj}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj};function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=typeof _symbol2.default===\"function\"&&_typeof(_iterator2.default)===\"symbol\"?function(obj){return typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}},function(module,exports){var core=module.exports={version:\"2.5.1\"};if(typeof __e==\"number\")__e=core},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(140),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";module.exports=typeof window!==\"undefined\"&&window[\"moment\"]||__webpack_require__(154)},function(module,exports,__webpack_require__){\"use strict\";function hammerMock(){var noop=function noop(){};return{on:noop,off:noop,destroy:noop,emit:noop,get:function get(m){return{set:noop}}}}if(typeof window!==\"undefined\"){var propagating=__webpack_require__(175);var Hammer=window[\"Hammer\"]||__webpack_require__(176);module.exports=propagating(Hammer,{preventDefault:\"mouse\"})}else{module.exports=function(){return hammerMock()}}},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Queue=__webpack_require__(43);function DataSet(data,options){if(data&&!Array.isArray(data)){options=data;data=null}this._options=options||{};this._data={};this.length=0;this._fieldId=this._options.fieldId||\"id\";this._type={};if(this._options.type){var fields=(0,_keys2[\"default\"])(this._options.type);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var value=this._options.type[field];if(value==\"Date\"||value==\"ISODate\"||value==\"ASPDate\"){this._type[field]=\"Date\"}else{this._type[field]=value}}}this._subscribers={};if(data){this.add(data)}this.setOptions(options)}DataSet.prototype.setOptions=function(options){if(options&&options.queue!==undefined){if(options.queue===false){if(this._queue){this._queue.destroy();delete this._queue}}else{if(!this._queue){this._queue=Queue.extend(this,{replace:[\"add\",\"update\",\"remove\"]})}if((0,_typeof3[\"default\"])(options.queue)===\"object\"){this._queue.setOptions(options.queue)}}}};DataSet.prototype.on=function(event,callback){var subscribers=this._subscribers[event];if(!subscribers){subscribers=[];this._subscribers[event]=subscribers}subscribers.push({callback:callback})};DataSet.prototype.off=function(event,callback){var subscribers=this._subscribers[event];if(subscribers){this._subscribers[event]=subscribers.filter(function(listener){return listener.callback!=callback})}};DataSet.prototype._trigger=function(event,params,senderId){if(event==\"*\"){throw new Error(\"Cannot trigger event *\")}var subscribers=[];if(event in this._subscribers){subscribers=subscribers.concat(this._subscribers[event])}if(\"*\"in this._subscribers){subscribers=subscribers.concat(this._subscribers[\"*\"])}for(var i=0,len=subscribers.length;i<len;i++){var subscriber=subscribers[i];if(subscriber.callback){subscriber.callback(event,params,senderId||null)}}};DataSet.prototype.add=function(data,senderId){var addedIds=[],id,me=this;if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){id=me._addItem(data[i]);addedIds.push(id)}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){id=me._addItem(data);addedIds.push(id)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}return addedIds};DataSet.prototype.update=function(data,senderId){var addedIds=[];var updatedIds=[];var oldData=[];var updatedData=[];var me=this;var fieldId=me._fieldId;var addOrUpdate=function addOrUpdate(item){var id=item[fieldId];if(me._data[id]){var oldItem=util.extend({},me._data[id]);id=me._updateItem(item);updatedIds.push(id);updatedData.push(item);oldData.push(oldItem)}else{id=me._addItem(item);addedIds.push(id)}};if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){if(data[i]&&(0,_typeof3[\"default\"])(data[i])===\"object\"){addOrUpdate(data[i])}else{console.warn(\"Ignoring input item, which is not an object at index \"+i)}}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){addOrUpdate(data)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){var props={items:updatedIds,oldData:oldData,data:updatedData};this._trigger(\"update\",props,senderId)}return addedIds.concat(updatedIds)};DataSet.prototype.get=function(args){var me=this;var id,ids,options;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"){id=arguments[0];options=arguments[1]}else if(firstType==\"Array\"){\nids=arguments[0];options=arguments[1]}else{options=arguments[0]}var returnType;if(options&&options.returnType){var allowedValues=[\"Array\",\"Object\"];returnType=allowedValues.indexOf(options.returnType)==-1?\"Array\":options.returnType}else{returnType=\"Array\"}var type=options&&options.type||this._options.type;var filter=options&&options.filter;var items=[],item,itemIds,itemId,i,len;if(id!=undefined){item=me._getItem(id,type);if(item&&filter&&!filter(item)){item=null}}else if(ids!=undefined){for(i=0,len=ids.length;i<len;i++){item=me._getItem(ids[i],type);if(!filter||filter(item)){items.push(item)}}}else{itemIds=(0,_keys2[\"default\"])(this._data);for(i=0,len=itemIds.length;i<len;i++){itemId=itemIds[i];item=me._getItem(itemId,type);if(!filter||filter(item)){items.push(item)}}}if(options&&options.order&&id==undefined){this._sort(items,options.order)}if(options&&options.fields){var fields=options.fields;if(id!=undefined){item=this._filterFields(item,fields)}else{for(i=0,len=items.length;i<len;i++){items[i]=this._filterFields(items[i],fields)}}}if(returnType==\"Object\"){var result={},resultant;for(i=0,len=items.length;i<len;i++){resultant=items[i];result[resultant.id]=resultant}return result}else{if(id!=undefined){return item}else{return items}}};DataSet.prototype.getIds=function(options){var data=this._data,filter=options&&options.filter,order=options&&options.order,type=options&&options.type||this._options.type,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item,items,ids=[];if(filter){if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){items.push(item)}}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){ids.push(item[this._fieldId])}}}}else{if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];items.push(data[id])}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=data[id];ids.push(item[this._fieldId])}}}return ids};DataSet.prototype.getDataSet=function(){return this};DataSet.prototype.forEach=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,item,id;if(options&&options.order){var items=this.get(options);for(i=0,len=items.length;i<len;i++){item=items[i];id=item[this._fieldId];callback(item,id)}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){callback(item,id)}}}};DataSet.prototype.map=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,mappedItems=[],data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item;for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){mappedItems.push(callback(item,id))}}if(options&&options.order){this._sort(mappedItems,options.order)}return mappedItems};DataSet.prototype._filterFields=function(item,fields){if(!item){return item}var filteredItem={},itemFields=(0,_keys2[\"default\"])(item),len=itemFields.length,i,field;if(Array.isArray(fields)){for(i=0;i<len;i++){field=itemFields[i];if(fields.indexOf(field)!=-1){filteredItem[field]=item[field]}}}else{for(i=0;i<len;i++){field=itemFields[i];if(fields.hasOwnProperty(field)){filteredItem[fields[field]]=item[field]}}}return filteredItem};DataSet.prototype._sort=function(items,order){if(util.isString(order)){var name=order;items.sort(function(a,b){var av=a[name];var bv=b[name];return av>bv?1:av<bv?-1:0})}else if(typeof order===\"function\"){items.sort(order)}else{throw new TypeError(\"Order must be a function or a string\")}};DataSet.prototype.remove=function(id,senderId){var removedIds=[],removedItems=[],ids=[],i,len,itemId,item;ids=Array.isArray(id)?id:[id];for(i=0,len=ids.length;i<len;i++){item=this._remove(ids[i]);if(item){itemId=item[this._fieldId];if(itemId!=undefined){removedIds.push(itemId);removedItems.push(item)}}}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}return removedIds};DataSet.prototype._remove=function(id){var item,ident;if(util.isNumber(id)||util.isString(id)){ident=id}else if(id&&(typeof id===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(id))===\"object\"){ident=id[this._fieldId]}if(ident!==undefined&&this._data[ident]){item=this._data[ident];delete this._data[ident];this.length--;return item}return null};DataSet.prototype.clear=function(senderId){var i,len;var ids=(0,_keys2[\"default\"])(this._data);var items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data[ids[i]])}this._data={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items},senderId);return ids};DataSet.prototype.max=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),max=null,maxField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!max||itemField>maxField)){max=item;maxField=itemField}}return max};DataSet.prototype.min=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),min=null,minField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!min||itemField<minField)){min=item;minField=itemField}}return min};DataSet.prototype.distinct=function(field){var data=this._data;var itemIds=(0,_keys2[\"default\"])(data);var values=[];var fieldType=this._options.type&&this._options.type[field]||null;var count=0;var i,j,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var value=item[field];var exists=false;for(j=0;j<count;j++){if(values[j]==value){exists=true;break}}if(!exists&&value!==undefined){values[count]=value;count++}}if(fieldType){for(i=0,len=values.length;i<len;i++){values[i]=util.convert(values[i],fieldType)}}return values};DataSet.prototype._addItem=function(item){var id=item[this._fieldId];if(id!=undefined){if(this._data[id]){throw new Error(\"Cannot add item: item with id \"+id+\" already exists\")}}else{id=util.randomUUID();item[this._fieldId]=id}var d={},fields=(0,_keys2[\"default\"])(item),i,len;for(i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}this._data[id]=d;this.length++;return id};DataSet.prototype._getItem=function(id,types){var field,value,i,len;var raw=this._data[id];if(!raw){return null}var converted={},fields=(0,_keys2[\"default\"])(raw);if(types){for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=util.convert(value,types[field])}}else{for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=value}}if(!converted[this._fieldId]){converted[this._fieldId]=raw.id}return converted};DataSet.prototype._updateItem=function(item){var id=item[this._fieldId];if(id==undefined){throw new Error(\"Cannot update item: item has no id (item: \"+(0,_stringify2[\"default\"])(item)+\")\")}var d=this._data[id];if(!d){throw new Error(\"Cannot update item: no item with id \"+id+\" found\")}var fields=(0,_keys2[\"default\"])(item);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}return id};module.exports=DataSet},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);function DataView(data,options){this._data=null;this._ids={};this.length=0;this._options=options||{};this._fieldId=\"id\";this._subscribers={};var me=this;this.listener=function(){me._onEvent.apply(me,arguments)};this.setData(data)}DataView.prototype.setData=function(data){var ids,id,i,len,items;if(this._data){if(this._data.off){this._data.off(\"*\",this.listener)}ids=this._data.getIds({filter:this._options&&this._options.filter});items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data._data[ids[i]])}this._ids={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items})}this._data=data;if(this._data){this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||\"id\";ids=this._data.getIds({filter:this._options&&this._options.filter});for(i=0,len=ids.length;i<len;i++){id=ids[i];this._ids[id]=true}this.length=ids.length;this._trigger(\"add\",{items:ids});if(this._data.on){this._data.on(\"*\",this.listener)}}};DataView.prototype.refresh=function(){var id,i,len;var ids=this._data.getIds({filter:this._options&&this._options.filter}),oldIds=(0,_keys2[\"default\"])(this._ids),newIds={},addedIds=[],removedIds=[],removedItems=[];for(i=0,len=ids.length;i<len;i++){id=ids[i];newIds[id]=true;if(!this._ids[id]){addedIds.push(id);this._ids[id]=true}}for(i=0,len=oldIds.length;i<len;i++){id=oldIds[i];if(!newIds[id]){removedIds.push(id);removedItems.push(this._data._data[id]);delete this._ids[id]}}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds})}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems})}};DataView.prototype.get=function(args){var me=this;var ids,options,data;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"||firstType==\"Array\"){ids=arguments[0];options=arguments[1];data=arguments[2]}else{options=arguments[0];data=arguments[1]}var viewOptions=util.extend({},this._options,options);if(this._options.filter&&options&&options.filter){viewOptions.filter=function(item){return me._options.filter(item)&&options.filter(item)}}var getArguments=[];if(ids!=undefined){getArguments.push(ids)}getArguments.push(viewOptions);getArguments.push(data);return this._data&&this._data.get.apply(this._data,getArguments)};DataView.prototype.getIds=function(options){var ids;if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}ids=this._data.getIds({filter:filter,order:options&&options.order})}else{ids=[]}return ids};DataView.prototype.map=function(callback,options){var mappedItems=[];if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}mappedItems=this._data.map(callback,{filter:filter,order:options&&options.order})}else{mappedItems=[]}return mappedItems};DataView.prototype.getDataSet=function(){var dataSet=this;while(dataSet instanceof DataView){dataSet=dataSet._data}return dataSet||null};DataView.prototype._onEvent=function(event,params,senderId){var i,len,id,item;var ids=params&¶ms.items;var addedIds=[],updatedIds=[],removedIds=[],oldItems=[],updatedItems=[],removedItems=[];if(ids&&this._data){switch(event){case\"add\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){this._ids[id]=true;addedIds.push(id)}}break;case\"update\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){if(this._ids[id]){updatedIds.push(id);updatedItems.push(params.data[i]);oldItems.push(params.oldData[i])}else{this._ids[id]=true;addedIds.push(id)}}else{if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}else{}}}break;case\"remove\":for(i=0,len=ids.length;i<len;i++){id=ids[i];if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}}break}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){this._trigger(\"update\",{items:updatedIds,oldData:oldItems,data:updatedItems},senderId)}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}}};DataView.prototype.on=DataSet.prototype.on;DataView.prototype.off=DataSet.prototype.off;DataView.prototype._trigger=DataSet.prototype._trigger;DataView.prototype.subscribe=DataView.prototype.on;DataView.prototype.unsubscribe=DataView.prototype.off;module.exports=DataView},function(module,exports,__webpack_require__){var store=__webpack_require__(57)(\"wks\");var uid=__webpack_require__(40);var Symbol=__webpack_require__(18).Symbol;var USE_SYMBOL=typeof Symbol==\"function\";var $exports=module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)(\"Symbol.\"+name))};$exports.store=store},function(module,exports,__webpack_require__){\"use strict\";exports.prepareElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){JSONcontainer[elementType].redundant=JSONcontainer[elementType].used;JSONcontainer[elementType].used=[]}}};exports.cleanupElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant){for(var i=0;i<JSONcontainer[elementType].redundant.length;i++){JSONcontainer[elementType].redundant[i].parentNode.removeChild(JSONcontainer[elementType].redundant[i])}JSONcontainer[elementType].redundant=[]}}}};exports.resetElements=function(JSONcontainer){exports.prepareElements(JSONcontainer);exports.cleanupElements(JSONcontainer);exports.prepareElements(JSONcontainer)};exports.getSVGElement=function(elementType,JSONcontainer,svgContainer){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);svgContainer.appendChild(element)}}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);JSONcontainer[elementType]={used:[],redundant:[]};svgContainer.appendChild(element)}JSONcontainer[elementType].used.push(element);return element};exports.getDOMElement=function(elementType,JSONcontainer,DOMContainer,insertBefore){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElement(elementType);if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}}else{element=document.createElement(elementType);JSONcontainer[elementType]={used:[],redundant:[]};if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}JSONcontainer[elementType].used.push(element);return element};exports.drawPoint=function(x,y,groupTemplate,JSONcontainer,svgContainer,labelObj){var point;if(groupTemplate.style==\"circle\"){point=exports.getSVGElement(\"circle\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"cx\",x);point.setAttributeNS(null,\"cy\",y);point.setAttributeNS(null,\"r\",.5*groupTemplate.size)}else{point=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"x\",x-.5*groupTemplate.size);point.setAttributeNS(null,\"y\",y-.5*groupTemplate.size);point.setAttributeNS(null,\"width\",groupTemplate.size);point.setAttributeNS(null,\"height\",groupTemplate.size)}if(groupTemplate.styles!==undefined){point.setAttributeNS(null,\"style\",groupTemplate.styles)}point.setAttributeNS(null,\"class\",groupTemplate.className+\" vis-point\");if(labelObj){var label=exports.getSVGElement(\"text\",JSONcontainer,svgContainer);if(labelObj.xOffset){x=x+labelObj.xOffset}if(labelObj.yOffset){y=y+labelObj.yOffset}if(labelObj.content){label.textContent=labelObj.content}if(labelObj.className){label.setAttributeNS(null,\"class\",labelObj.className+\" vis-label\")}label.setAttributeNS(null,\"x\",x);label.setAttributeNS(null,\"y\",y)}return point};exports.drawBar=function(x,y,width,height,className,JSONcontainer,svgContainer,style){if(height!=0){if(height<0){height*=-1;y-=height}var rect=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);rect.setAttributeNS(null,\"x\",x-.5*width);rect.setAttributeNS(null,\"y\",y);rect.setAttributeNS(null,\"width\",width);rect.setAttributeNS(null,\"height\",height);rect.setAttributeNS(null,\"class\",className);if(style){rect.setAttributeNS(null,\"style\",style)}}}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.printStyle=undefined;var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var errorFound=false;var allOptions=void 0;var printStyle=\"background: #FFeeee; color: #dd0000\";var Validator=function(){function Validator(){(0,_classCallCheck3[\"default\"])(this,Validator)}(0,_createClass3[\"default\"])(Validator,null,[{key:\"validate\",value:function validate(options,referenceOptions,subObject){errorFound=false;allOptions=referenceOptions;var usedOptions=referenceOptions;if(subObject!==undefined){usedOptions=referenceOptions[subObject]}Validator.parse(options,usedOptions,[]);return errorFound}},{key:\"parse\",value:function parse(options,referenceOptions,path){for(var option in options){if(options.hasOwnProperty(option)){Validator.check(option,options,referenceOptions,path)}}}},{key:\"check\",value:function check(option,options,referenceOptions,path){if(referenceOptions[option]===undefined&&referenceOptions.__any__===undefined){Validator.getSuggestion(option,referenceOptions,path);return}var referenceOption=option;var is_object=true;if(referenceOptions[option]===undefined&&referenceOptions.__any__!==undefined){referenceOption=\"__any__\";is_object=Validator.getType(options[option])===\"object\"}else{}var refOptionObj=referenceOptions[referenceOption];if(is_object&&refOptionObj.__type__!==undefined){refOptionObj=refOptionObj.__type__}Validator.checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path)}},{key:\"checkFields\",value:function checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path){var log=function log(message){console.log(\"%c\"+message+Validator.printLocation(path,option),printStyle)};var optionType=Validator.getType(options[option]);var refOptionType=refOptionObj[optionType];if(refOptionType!==undefined){if(Validator.getType(refOptionType)===\"array\"&&refOptionType.indexOf(options[option])===-1){log('Invalid option detected in \"'+option+'\".'+\" Allowed values are:\"+Validator.print(refOptionType)+' not \"'+options[option]+'\". ');errorFound=true}else if(optionType===\"object\"&&referenceOption!==\"__any__\"){path=util.copyAndExtendArray(path,option);Validator.parse(options[option],referenceOptions[referenceOption],path)}}else if(refOptionObj[\"any\"]===undefined){log('Invalid type received for \"'+option+'\". Expected: '+Validator.print((0,_keys2[\"default\"])(refOptionObj))+\". Received [\"+optionType+'] \"'+options[option]+'\"');errorFound=true}}},{key:\"getType\",value:function getType(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type===\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"boolean\"}if(object instanceof Number){return\"number\"}if(object instanceof String){return\"string\"}if(Array.isArray(object)){return\"array\"}if(object instanceof Date){return\"date\"}if(object.nodeType!==undefined){return\"dom\"}if(object._isAMomentObject===true){return\"moment\"}return\"object\"}else if(type===\"number\"){return\"number\"}else if(type===\"boolean\"){return\"boolean\"}else if(type===\"string\"){return\"string\"}else if(type===undefined){return\"undefined\"}return type}},{key:\"getSuggestion\",value:function getSuggestion(option,options,path){var localSearch=Validator.findInOptions(option,options,path,false);var globalSearch=Validator.findInOptions(option,allOptions,[],true);var localSearchThreshold=8;var globalSearchThreshold=4;var msg=void 0;if(localSearch.indexMatch!==undefined){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+'Perhaps it was incomplete? Did you mean: \"'+localSearch.indexMatch+'\"?\\n\\n'}else if(globalSearch.distance<=globalSearchThreshold&&localSearch.distance>globalSearch.distance){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+\"Perhaps it was misplaced? Matching option found at: \"+Validator.printLocation(globalSearch.path,globalSearch.closestMatch,\"\")}else if(localSearch.distance<=localSearchThreshold){msg='. Did you mean \"'+localSearch.closestMatch+'\"?'+Validator.printLocation(localSearch.path,option)}else{msg=\". Did you mean one of these: \"+Validator.print((0,_keys2[\"default\"])(options))+Validator.printLocation(path,option)}console.log('%cUnknown option detected: \"'+option+'\"'+msg,printStyle);errorFound=true}},{key:\"findInOptions\",value:function findInOptions(option,options,path){var recursive=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var min=1e9;var closestMatch=\"\";var closestMatchPath=[];var lowerCaseOption=option.toLowerCase();var indexMatch=undefined;for(var op in options){var distance=void 0;if(options[op].__type__!==undefined&&recursive===true){var result=Validator.findInOptions(option,options[op],util.copyAndExtendArray(path,op));if(min>result.distance){closestMatch=result.closestMatch;closestMatchPath=result.path;min=result.distance;indexMatch=result.indexMatch}}else{if(op.toLowerCase().indexOf(lowerCaseOption)!==-1){indexMatch=op}distance=Validator.levenshteinDistance(option,op);if(min>distance){closestMatch=op;closestMatchPath=util.copyArray(path);min=distance}}}return{closestMatch:closestMatch,path:closestMatchPath,distance:min,indexMatch:indexMatch}}},{key:\"printLocation\",value:function printLocation(path,option){var prefix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"Problem value found at: \\n\";var str=\"\\n\\n\"+prefix+\"options = {\\n\";for(var i=0;i<path.length;i++){for(var j=0;j<i+1;j++){str+=\" \"}str+=path[i]+\": {\\n\"}for(var _j=0;_j<path.length+1;_j++){str+=\" \"}str+=option+\"\\n\";for(var _i=0;_i<path.length+1;_i++){for(var _j2=0;_j2<path.length-_i;_j2++){str+=\" \"}str+=\"}\\n\"}return str+\"\\n\\n\"}},{key:\"print\",value:function print(options){return(0,_stringify2[\"default\"])(options).replace(/(\\\")|(\\[)|(\\])|(,\"__type__\")/g,\"\").replace(/(\\,)/g,\", \")}},{key:\"levenshteinDistance\",value:function levenshteinDistance(a,b){if(a.length===0)return b.length;if(b.length===0)return a.length;var matrix=[];var i;for(i=0;i<=b.length;i++){matrix[i]=[i]}var j;for(j=0;j<=a.length;j++){matrix[0][j]=j}for(i=1;i<=b.length;i++){for(j=1;j<=a.length;j++){if(b.charAt(i-1)==a.charAt(j-1)){matrix[i][j]=matrix[i-1][j-1]}else{matrix[i][j]=Math.min(matrix[i-1][j-1]+1,Math.min(matrix[i][j-1]+1,matrix[i-1][j]+1))}}}return matrix[b.length][a.length]}}]);return Validator}();exports[\"default\"]=Validator;exports.printStyle=printStyle},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Component(body,options){this.options=null;this.props=null}Component.prototype.setOptions=function(options){if(options){util.extend(this.options,options)}};Component.prototype.redraw=function(){return false};Component.prototype.destroy=function(){};Component.prototype._isResized=function(){var resized=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;this.props._previousWidth=this.props.width;this.props._previousHeight=this.props.height;return resized};module.exports=Component},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var ctx=__webpack_require__(80);var hide=__webpack_require__(26);var PROTOTYPE=\"prototype\";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var IS_WRAP=type&$export.W;var exports=IS_GLOBAL?core:core[name]||(core[name]={});var expProto=exports[PROTOTYPE];var target=IS_GLOBAL?global:IS_STATIC?global[name]:(global[name]||{})[PROTOTYPE];var key,own,out;if(IS_GLOBAL)source=name;for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;if(own&&key in exports)continue;out=own?target[key]:source[key];exports[key]=IS_GLOBAL&&typeof target[key]!=\"function\"?source[key]:IS_BIND&&own?ctx(out,global):IS_WRAP&&target[key]==out?function(C){var F=function(a,b,c){if(this instanceof C){switch(arguments.length){case 0:return new C;case 1:return new C(a);case 2:return new C(a,b)}return new C(a,b,c)}return C.apply(this,arguments)};F[PROTOTYPE]=C[PROTOTYPE];return F}(out):IS_PROTO&&typeof out==\"function\"?ctx(Function.call,out):out;if(IS_PROTO){(exports.virtual||(exports.virtual={}))[key]=out;if(type&$export.R&&expProto&&!expProto[key])hide(expProto,key,out)}}};$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;module.exports=$export},function(module,exports){var global=module.exports=typeof window!=\"undefined\"&&window.Math==Math?window:typeof self!=\"undefined\"&&self.Math==Math?self:Function(\"return this\")();if(typeof __g==\"number\")__g=global},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(160),__esModule:true}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var IE8_DOM_DEFINE=__webpack_require__(81);var toPrimitive=__webpack_require__(53);var dP=Object.defineProperty;exports.f=__webpack_require__(21)?Object.defineProperty:function defineProperty(O,P,Attributes){anObject(O);P=toPrimitive(P,true);anObject(Attributes);if(IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if(\"get\"in Attributes||\"set\"in Attributes)throw TypeError(\"Accessors not supported!\");if(\"value\"in Attributes)O[P]=Attributes.value;return O}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(28)(function(){return Object.defineProperty({},\"a\",{get:function(){return 7}}).a!=7})},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var NodeBase=function(){function NodeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,NodeBase);this.body=body;this.labelModule=labelModule;this.setOptions(options);this.top=undefined;this.left=undefined;this.height=undefined;this.width=undefined;this.radius=undefined;this.margin=undefined;this.refreshNeeded=true;this.boundingBox={top:0,left:0,right:0,bottom:0}}(0,_createClass3[\"default\"])(NodeBase,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"_setMargins\",value:function _setMargins(labelModule){this.margin={};if(this.options.margin){if((0,_typeof3[\"default\"])(this.options.margin)==\"object\"){this.margin.top=this.options.margin.top;this.margin.right=this.options.margin.right;this.margin.bottom=this.options.margin.bottom;this.margin.left=this.options.margin.left}else{this.margin.top=this.options.margin;this.margin.right=this.options.margin;this.margin.bottom=this.options.margin;this.margin.left=this.options.margin}}labelModule.adjustSizes(this.margin)}},{key:\"_distanceToBorder\",value:function _distanceToBorder(ctx,angle){var borderWidth=this.options.borderWidth;this.resize(ctx);return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}},{key:\"enableBorderDashes\",value:function enableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){var dashes=values.borderDashes;if(dashes===true){dashes=[5,15]}ctx.setLineDash(dashes)}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"disableBorderDashes\",value:function disableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){ctx.setLineDash([0])}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"needsRefresh\",value:function needsRefresh(selected,hover){if(this.refreshNeeded===true){this.refreshNeeded=false;return true}return this.width===undefined||this.labelModule.differentState(selected,hover)}},{key:\"initContextForDraw\",value:function initContextForDraw(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.strokeStyle=values.borderColor;ctx.fillStyle=values.color}},{key:\"performStroke\",value:function performStroke(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.save();if(borderWidth>0){this.enableBorderDashes(ctx,values);ctx.stroke();this.disableBorderDashes(ctx,values)}ctx.restore()}},{key:\"performFill\",value:function performFill(ctx,values){this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values);this.performStroke(ctx,values)}},{key:\"_addBoundingBoxMargin\",value:function _addBoundingBoxMargin(margin){this.boundingBox.left-=margin;this.boundingBox.top-=margin;this.boundingBox.bottom+=margin;this.boundingBox.right+=margin}},{key:\"_updateBoundingBox\",value:function _updateBoundingBox(x,y,ctx,selected,hover){if(ctx!==undefined){this.resize(ctx,selected,hover)}this.left=x-this.width/2;this.top=y-this.height/2;this.boundingBox.left=this.left;this.boundingBox.top=this.top;this.boundingBox.bottom=this.top+this.height;this.boundingBox.right=this.left+this.width}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"getDimensionsFromLabel\",value:function getDimensionsFromLabel(ctx,selected,hover){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);var width=this.textSize.width;var height=this.textSize.height;var DEFAULT_SIZE=14;if(width===0){width=DEFAULT_SIZE;height=DEFAULT_SIZE}return{width:width,height:height}}}]);return NodeBase}();exports[\"default\"]=NodeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2)\n;var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ShapeBase=function(_NodeBase){(0,_inherits3[\"default\"])(ShapeBase,_NodeBase);function ShapeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,ShapeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(ShapeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(ShapeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(ShapeBase,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var values=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{size:this.options.size};if(this.needsRefresh(selected,hover)){this.labelModule.getTextSize(ctx,selected,hover);var size=2*values.size;this.width=size;this.height=size;this.radius=.5*this.width}}},{key:\"_drawShape\",value:function _drawShape(ctx,shape,sizeMultiplier,x,y,selected,hover,values){this.resize(ctx,selected,hover,values);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx[shape](x,y,values.size);this.performFill(ctx,values);if(this.options.label!==undefined){this.labelModule.calculateLabelSize(ctx,selected,hover,x,y,\"hanging\");var yLabel=y+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height)}}}]);return ShapeBase}(_NodeBase3[\"default\"]);exports[\"default\"]=ShapeBase},function(module,exports,__webpack_require__){var IObject=__webpack_require__(78);var defined=__webpack_require__(51);module.exports=function(it){return IObject(defined(it))}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var createDesc=__webpack_require__(39);module.exports=__webpack_require__(21)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){object[key]=value;return object}},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it){if(!isObject(it))throw TypeError(it+\" is not an object!\");return it}},function(module,exports){module.exports=function(exec){try{return!!exec()}catch(e){return true}}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(138),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _isIterable2=__webpack_require__(188);var _isIterable3=_interopRequireDefault(_isIterable2);var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function sliceIterator(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=(0,_getIterator3.default)(arr),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i[\"return\"])_i[\"return\"]()}finally{if(_d)throw _e}}return _arr}return function(arr,i){if(Array.isArray(arr)){return arr}else if((0,_isIterable3.default)(Object(arr))){return sliceIterator(arr,i)}else{throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}}()},function(module,exports){module.exports={}},function(module,exports){module.exports=function(it){return typeof it===\"object\"?it!==null:typeof it===\"function\"}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var enumBugKeys=__webpack_require__(58);module.exports=Object.keys||function keys(O){return $keys(O,enumBugKeys)}},function(module,exports,__webpack_require__){\"use strict\";function Point3d(x,y,z){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0;this.z=z!==undefined?z:0}Point3d.subtract=function(a,b){var sub=new Point3d;sub.x=a.x-b.x;sub.y=a.y-b.y;sub.z=a.z-b.z;return sub};Point3d.add=function(a,b){var sum=new Point3d;sum.x=a.x+b.x;sum.y=a.y+b.y;sum.z=a.z+b.z;return sum};Point3d.avg=function(a,b){return new Point3d((a.x+b.x)/2,(a.y+b.y)/2,(a.z+b.z)/2)};Point3d.crossProduct=function(a,b){var crossproduct=new Point3d;crossproduct.x=a.y*b.z-a.z*b.y;crossproduct.y=a.z*b.x-a.x*b.z;crossproduct.z=a.x*b.y-a.y*b.x;return crossproduct};Point3d.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)};module.exports=Point3d},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(root,factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{root.keycharm=factory()}})(this,function(){function keycharm(options){var preventDefault=options&&options.preventDefault||false;var container=options&&options.container||window;var _exportFunctions={};var _bound={keydown:{},keyup:{}};var _keys={};var i;for(i=97;i<=122;i++){_keys[String.fromCharCode(i)]={code:65+(i-97),shift:false}}for(i=65;i<=90;i++){_keys[String.fromCharCode(i)]={code:i,shift:true}}for(i=0;i<=9;i++){_keys[\"\"+i]={code:48+i,shift:false}}for(i=1;i<=12;i++){_keys[\"F\"+i]={code:111+i,shift:false}}for(i=0;i<=9;i++){_keys[\"num\"+i]={code:96+i,shift:false}}_keys[\"num*\"]={code:106,shift:false};_keys[\"num+\"]={code:107,shift:false};_keys[\"num-\"]={code:109,shift:false};_keys[\"num/\"]={code:111,shift:false};_keys[\"num.\"]={code:110,shift:false};_keys[\"left\"]={code:37,shift:false};_keys[\"up\"]={code:38,shift:false};_keys[\"right\"]={code:39,shift:false};_keys[\"down\"]={code:40,shift:false};_keys[\"space\"]={code:32,shift:false};_keys[\"enter\"]={code:13,shift:false};_keys[\"shift\"]={code:16,shift:undefined};_keys[\"esc\"]={code:27,shift:false};_keys[\"backspace\"]={code:8,shift:false};_keys[\"tab\"]={code:9,shift:false};_keys[\"ctrl\"]={code:17,shift:false};_keys[\"alt\"]={code:18,shift:false};_keys[\"delete\"]={code:46,shift:false};_keys[\"pageup\"]={code:33,shift:false};_keys[\"pagedown\"]={code:34,shift:false};_keys[\"=\"]={code:187,shift:false};_keys[\"-\"]={code:189,shift:false};_keys[\"]\"]={code:221,shift:false};_keys[\"[\"]={code:219,shift:false};var down=function(event){handleEvent(event,\"keydown\")};var up=function(event){handleEvent(event,\"keyup\")};var handleEvent=function(event,type){if(_bound[type][event.keyCode]!==undefined){var bound=_bound[type][event.keyCode];for(var i=0;i<bound.length;i++){if(bound[i].shift===undefined){bound[i].fn(event)}else if(bound[i].shift==true&&event.shiftKey==true){bound[i].fn(event)}else if(bound[i].shift==false&&event.shiftKey==false){bound[i].fn(event)}}if(preventDefault==true){event.preventDefault()}}};_exportFunctions.bind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(_bound[type][_keys[key].code]===undefined){_bound[type][_keys[key].code]=[]}_bound[type][_keys[key].code].push({fn:callback,shift:_keys[key].shift})};_exportFunctions.bindAll=function(callback,type){if(type===undefined){type=\"keydown\"}for(var key in _keys){if(_keys.hasOwnProperty(key)){_exportFunctions.bind(key,callback,type)}}};_exportFunctions.getKey=function(event){for(var key in _keys){if(_keys.hasOwnProperty(key)){if(event.shiftKey==true&&_keys[key].shift==true&&event.keyCode==_keys[key].code){return key}else if(event.shiftKey==false&&_keys[key].shift==false&&event.keyCode==_keys[key].code){return key}else if(event.keyCode==_keys[key].code&&key==\"shift\"){return key}}}return\"unknown key, currently not supported\"};_exportFunctions.unbind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(callback!==undefined){var newBindings=[];var bound=_bound[type][_keys[key].code];if(bound!==undefined){for(var i=0;i<bound.length;i++){if(!(bound[i].fn==callback&&bound[i].shift==_keys[key].shift)){newBindings.push(_bound[type][_keys[key].code][i])}}}_bound[type][_keys[key].code]=newBindings}else{_bound[type][_keys[key].code]=[]}};_exportFunctions.reset=function(){_bound={keydown:{},keyup:{}}};_exportFunctions.destroy=function(){_bound={keydown:{},keyup:{}};container.removeEventListener(\"keydown\",down,true);container.removeEventListener(\"keyup\",up,true)};container.addEventListener(\"keydown\",down,true);container.addEventListener(\"keyup\",up,true);return _exportFunctions}return keycharm})},function(module,exports,__webpack_require__){\"use strict\";exports.convertHiddenOptions=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.convertHiddenOptions(moment,body,[hiddenDates])}body.hiddenDates=[];if(hiddenDates){if(Array.isArray(hiddenDates)==true){for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat===undefined){var dateItem={};dateItem.start=moment(hiddenDates[i].start).toDate().valueOf();dateItem.end=moment(hiddenDates[i].end).toDate().valueOf();body.hiddenDates.push(dateItem)}}body.hiddenDates.sort(function(a,b){return a.start-b.start})}}};exports.updateHiddenDates=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.updateHiddenDates(moment,body,[hiddenDates])}if(hiddenDates&&body.domProps.centerContainer.width!==undefined){exports.convertHiddenOptions(moment,body,hiddenDates);var start=moment(body.range.start);var end=moment(body.range.end);var totalRange=body.range.end-body.range.start;var pixelTime=totalRange/body.domProps.centerContainer.width;for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat!==undefined){var startDate=moment(hiddenDates[i].start);var endDate=moment(hiddenDates[i].end);if(startDate._d==\"Invalid Date\"){throw new Error(\"Supplied start date is not valid: \"+hiddenDates[i].start)}if(endDate._d==\"Invalid Date\"){throw new Error(\"Supplied end date is not valid: \"+hiddenDates[i].end)}var duration=endDate-startDate;if(duration>=4*pixelTime){var offset=0;var runUntil=end.clone();switch(hiddenDates[i].repeat){case\"daily\":if(startDate.day()!=endDate.day()){offset=1}startDate.dayOfYear(start.dayOfYear());startDate.year(start.year());startDate.subtract(7,\"days\");endDate.dayOfYear(start.dayOfYear());endDate.year(start.year());endDate.subtract(7-offset,\"days\");runUntil.add(1,\"weeks\");break;case\"weekly\":var dayOffset=endDate.diff(startDate,\"days\");var day=startDate.day();startDate.date(start.date());startDate.month(start.month());startDate.year(start.year());endDate=startDate.clone();startDate.day(day);endDate.day(day);endDate.add(dayOffset,\"days\");startDate.subtract(1,\"weeks\");endDate.subtract(1,\"weeks\");runUntil.add(1,\"weeks\");break;case\"monthly\":if(startDate.month()!=endDate.month()){offset=1}startDate.month(start.month());startDate.year(start.year());startDate.subtract(1,\"months\");endDate.month(start.month());endDate.year(start.year());endDate.subtract(1,\"months\");endDate.add(offset,\"months\");runUntil.add(1,\"months\");break;case\"yearly\":if(startDate.year()!=endDate.year()){offset=1}startDate.year(start.year());startDate.subtract(1,\"years\");endDate.year(start.year());endDate.subtract(1,\"years\");endDate.add(offset,\"years\");runUntil.add(1,\"years\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}while(startDate<runUntil){body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()});switch(hiddenDates[i].repeat){case\"daily\":startDate.add(1,\"days\");endDate.add(1,\"days\");break;case\"weekly\":startDate.add(1,\"weeks\");endDate.add(1,\"weeks\");break;case\"monthly\":startDate.add(1,\"months\");endDate.add(1,\"months\");break;case\"yearly\":startDate.add(1,\"y\");endDate.add(1,\"y\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}}body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()})}}}exports.removeDuplicates(body);var startHidden=exports.isHidden(body.range.start,body.hiddenDates);var endHidden=exports.isHidden(body.range.end,body.hiddenDates);var rangeStart=body.range.start;var rangeEnd=body.range.end;if(startHidden.hidden==true){rangeStart=body.range.startToFront==true?startHidden.startDate-1:startHidden.endDate+1}if(endHidden.hidden==true){rangeEnd=body.range.endToFront==true?endHidden.startDate-1:endHidden.endDate+1}if(startHidden.hidden==true||endHidden.hidden==true){body.range._applyRange(rangeStart,rangeEnd)}}};exports.removeDuplicates=function(body){var hiddenDates=body.hiddenDates;var safeDates=[];for(var i=0;i<hiddenDates.length;i++){for(var j=0;j<hiddenDates.length;j++){if(i!=j&&hiddenDates[j].remove!=true&&hiddenDates[i].remove!=true){if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[j].remove=true}else if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].start<=hiddenDates[i].end){hiddenDates[i].end=hiddenDates[j].end;hiddenDates[j].remove=true}else if(hiddenDates[j].end>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[i].start=hiddenDates[j].start;hiddenDates[j].remove=true}}}}for(i=0;i<hiddenDates.length;i++){if(hiddenDates[i].remove!==true){safeDates.push(hiddenDates[i])}}body.hiddenDates=safeDates;body.hiddenDates.sort(function(a,b){return a.start-b.start})};exports.printDates=function(dates){for(var i=0;i<dates.length;i++){console.log(i,new Date(dates[i].start),new Date(dates[i].end),dates[i].start,dates[i].end,dates[i].remove)}};exports.stepOverHiddenDates=function(moment,timeStep,previousTime){var stepInHidden=false;var currentValue=timeStep.current.valueOf();for(var i=0;i<timeStep.hiddenDates.length;i++){var startDate=timeStep.hiddenDates[i].start;var endDate=timeStep.hiddenDates[i].end;if(currentValue>=startDate&¤tValue<endDate){stepInHidden=true;break}}if(stepInHidden==true&¤tValue<timeStep._end.valueOf()&¤tValue!=previousTime){var prevValue=moment(previousTime);var newValue=moment(endDate);if(prevValue.year()!=newValue.year()){timeStep.switchedYear=true}else if(prevValue.month()!=newValue.month()){timeStep.switchedMonth=true}else if(prevValue.dayOfYear()!=newValue.dayOfYear()){timeStep.switchedDay=true}timeStep.current=newValue}};exports.toScreen=function(Core,time,width){var conversion;if(Core.body.hiddenDates.length==0){conversion=Core.range.conversion(width);return(time.valueOf()-conversion.offset)*conversion.scale}else{var hidden=exports.isHidden(time,Core.body.hiddenDates);if(hidden.hidden==true){time=hidden.startDate}var duration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);if(time<Core.range.start){conversion=Core.range.conversion(width,duration);var hiddenBeforeStart=exports.getHiddenDurationBeforeStart(Core.body.hiddenDates,time,conversion.offset);time=Core.options.moment(time).toDate().valueOf();time=time+hiddenBeforeStart;return-(conversion.offset-time.valueOf())*conversion.scale}else if(time>Core.range.end){var rangeAfterEnd={start:Core.range.start,end:time};time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,rangeAfterEnd,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}else{time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,Core.range,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}}};exports.toTime=function(Core,x,width){if(Core.body.hiddenDates.length==0){var conversion=Core.range.conversion(width);return new Date(x/conversion.scale+conversion.offset)}else{var hiddenDuration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);var totalDuration=Core.range.end-Core.range.start-hiddenDuration;var partialDuration=totalDuration*x/width;var accumulatedHiddenDuration=exports.getAccumulatedHiddenDuration(Core.body.hiddenDates,Core.range,partialDuration);return new Date(accumulatedHiddenDuration+partialDuration+Core.range.start)}};exports.getHiddenDurationBetween=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<end){duration+=endDate-startDate}}return duration};exports.getHiddenDurationBeforeStart=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<=end){duration+=endDate-startDate}}return duration};exports.correctTimeForHidden=function(moment,hiddenDates,range,time){time=moment(time).toDate().valueOf();time-=exports.getHiddenDurationBefore(moment,hiddenDates,range,time);return time};exports.getHiddenDurationBefore=function(moment,hiddenDates,range,time){var timeOffset=0;time=moment(time).toDate().valueOf();for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){if(time>=endDate){timeOffset+=endDate-startDate}}}return timeOffset};exports.getAccumulatedHiddenDuration=function(hiddenDates,range,requiredDuration){var hiddenDuration=0;var duration=0;var previousPoint=range.start;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){duration+=startDate-previousPoint;previousPoint=endDate;if(duration>=requiredDuration){break}else{hiddenDuration+=endDate-startDate}}}return hiddenDuration};exports.snapAwayFromHidden=function(hiddenDates,time,direction,correctionEnabled){var isHidden=exports.isHidden(time,hiddenDates);if(isHidden.hidden==true){if(direction<0){if(correctionEnabled==true){return isHidden.startDate-(isHidden.endDate-time)-1}else{return isHidden.startDate-1}}else{if(correctionEnabled==true){return isHidden.endDate+(time-isHidden.startDate)+1}else{return isHidden.endDate+1}}}else{return time}};exports.isHidden=function(time,hiddenDates){for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(time>=startDate&&time<endDate){return{hidden:true,startDate:startDate,endDate:endDate}}}return{hidden:false,startDate:startDate,endDate:endDate}}},function(module,exports,__webpack_require__){\"use strict\";exports.onTouch=function(hammer,callback){callback.inputHandler=function(event){if(event.isFirst){callback(event)}};hammer.on(\"hammer.input\",callback.inputHandler)};exports.onRelease=function(hammer,callback){callback.inputHandler=function(event){if(event.isFinal){callback(event)}};return hammer.on(\"hammer.input\",callback.inputHandler)};exports.offTouch=function(hammer,callback){hammer.off(\"hammer.input\",callback.inputHandler)};exports.offRelease=exports.offTouch;exports.disablePreventDefaultVertically=function(pinchRecognizer){var TOUCH_ACTION_PAN_Y=\"pan-y\";pinchRecognizer.getTouchAction=function(){return[TOUCH_ACTION_PAN_Y]};return pinchRecognizer}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var moment=__webpack_require__(9);function Item(data,conversion,options){this.id=null;this.parent=null;this.data=data;this.dom=null;this.conversion=conversion||{};this.options=options||{};this.selected=false;this.displayed=false;this.groupShowing=true;this.dirty=true;this.top=null;this.right=null;this.left=null;this.width=null;this.height=null;this.editable=null;this._updateEditStatus()}Item.prototype.stack=true;Item.prototype.select=function(){this.selected=true;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.unselect=function(){this.selected=false;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setData=function(data){var groupChanged=data.group!=undefined&&this.data.group!=data.group;if(groupChanged&&this.parent!=null){this.parent.itemSet._moveToGroup(this,data.group)}if(this.parent){this.parent.stackDirty=true}var subGroupChanged=data.subgroup!=undefined&&this.data.subgroup!=data.subgroup;if(subGroupChanged&&this.parent!=null){this.parent.changeSubgroup(this,this.data.subgroup,data.subgroup)}this.data=data;this._updateEditStatus();this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setParent=function(parent){if(this.displayed){this.hide();this.parent=parent;if(this.parent){this.show()}}else{this.parent=parent}};Item.prototype.isVisible=function(range){return false};Item.prototype.show=function(){return false};Item.prototype.hide=function(){return false};Item.prototype.redraw=function(){};Item.prototype.repositionX=function(){};Item.prototype.repositionY=function(){};Item.prototype._repaintDragCenter=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragCenter){var me=this;var dragCenter=document.createElement(\"div\");dragCenter.className=\"vis-drag-center\";dragCenter.dragCenterItem=this;var hammer=new Hammer(dragCenter);hammer.on(\"tap\",function(event){me.parent.itemSet.body.emitter.emit(\"click\",{event:event,item:me.id})});hammer.on(\"doubletap\",function(event){event.stopPropagation();me.parent.itemSet._onUpdateItem(me);me.parent.itemSet.body.emitter.emit(\"doubleClick\",{event:event,item:me.id})});if(this.dom.box){if(this.dom.dragLeft){this.dom.box.insertBefore(dragCenter,this.dom.dragLeft)}else{this.dom.box.appendChild(dragCenter)}}else if(this.dom.point){this.dom.point.appendChild(dragCenter)}this.dom.dragCenter=dragCenter}else if(!this.selected&&this.dom.dragCenter){if(this.dom.dragCenter.parentNode){this.dom.dragCenter.parentNode.removeChild(this.dom.dragCenter)}this.dom.dragCenter=null}};Item.prototype._repaintDeleteButton=function(anchor){var editable=(this.options.editable.overrideItems||this.editable==null)&&this.options.editable.remove||!this.options.editable.overrideItems&&this.editable!=null&&this.editable.remove;if(this.selected&&editable&&!this.dom.deleteButton){var me=this;var deleteButton=document.createElement(\"div\");if(this.options.rtl){deleteButton.className=\"vis-delete-rtl\"}else{deleteButton.className=\"vis-delete\"}deleteButton.title=\"Delete this item\";new Hammer(deleteButton).on(\"tap\",function(event){event.stopPropagation();me.parent.removeFromDataSet(me)});anchor.appendChild(deleteButton);this.dom.deleteButton=deleteButton}else if(!this.selected&&this.dom.deleteButton){if(this.dom.deleteButton.parentNode){this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton)}this.dom.deleteButton=null}};Item.prototype._repaintOnItemUpdateTimeTooltip=function(anchor){if(!this.options.tooltipOnItemUpdateTime)return;var editable=(this.options.editable.updateTime||this.data.editable===true)&&this.data.editable!==false;if(this.selected&&editable&&!this.dom.onItemUpdateTimeTooltip){var onItemUpdateTimeTooltip=document.createElement(\"div\");onItemUpdateTimeTooltip.className=\"vis-onUpdateTime-tooltip\";anchor.appendChild(onItemUpdateTimeTooltip);this.dom.onItemUpdateTimeTooltip=onItemUpdateTimeTooltip}else if(!this.selected&&this.dom.onItemUpdateTimeTooltip){if(this.dom.onItemUpdateTimeTooltip.parentNode){this.dom.onItemUpdateTimeTooltip.parentNode.removeChild(this.dom.onItemUpdateTimeTooltip)}this.dom.onItemUpdateTimeTooltip=null}if(this.dom.onItemUpdateTimeTooltip){this.dom.onItemUpdateTimeTooltip.style.visibility=this.parent.itemSet.touchParams.itemIsDragging?\"visible\":\"hidden\";if(this.options.rtl){this.dom.onItemUpdateTimeTooltip.style.right=this.dom.content.style.right}else{this.dom.onItemUpdateTimeTooltip.style.left=this.dom.content.style.left}var tooltipOffset=50;var scrollTop=this.parent.itemSet.body.domProps.scrollTop;var itemDistanceFromTop;if(this.options.orientation.item==\"top\"){itemDistanceFromTop=this.top}else{itemDistanceFromTop=this.parent.height-this.top-this.height}var isCloseToTop=itemDistanceFromTop+this.parent.top-tooltipOffset<-scrollTop;if(isCloseToTop){this.dom.onItemUpdateTimeTooltip.style.bottom=\"\";this.dom.onItemUpdateTimeTooltip.style.top=this.height+2+\"px\"}else{this.dom.onItemUpdateTimeTooltip.style.top=\"\";this.dom.onItemUpdateTimeTooltip.style.bottom=this.height+2+\"px\"}var content;var templateFunction;if(this.options.tooltipOnItemUpdateTime&&this.options.tooltipOnItemUpdateTime.template){templateFunction=this.options.tooltipOnItemUpdateTime.template.bind(this);content=templateFunction(this.data)}else{content=\"start: \"+moment(this.data.start).format(\"MM/DD/YYYY hh:mm\");if(this.data.end){content+=\"<br> end: \"+moment(this.data.end).format(\"MM/DD/YYYY hh:mm\")}}this.dom.onItemUpdateTimeTooltip.innerHTML=content}};Item.prototype._updateContents=function(element){var content;var changed;var templateFunction;var itemVisibleFrameContent;var visibleFrameTemplateFunction;var itemData=this.parent.itemSet.itemsData.get(this.id);var frameElement=this.dom.box||this.dom.point;var itemVisibleFrameContentElement=frameElement.getElementsByClassName(\"vis-item-visible-frame\")[0];if(this.options.visibleFrameTemplate){visibleFrameTemplateFunction=this.options.visibleFrameTemplate.bind(this);itemVisibleFrameContent=visibleFrameTemplateFunction(itemData,frameElement)}else{itemVisibleFrameContent=\"\"}if(itemVisibleFrameContentElement){if(itemVisibleFrameContent instanceof Object&&!(itemVisibleFrameContent instanceof Element)){visibleFrameTemplateFunction(itemData,itemVisibleFrameContentElement)}else{changed=this._contentToString(this.itemVisibleFrameContent)!==this._contentToString(itemVisibleFrameContent);if(changed){if(itemVisibleFrameContent instanceof Element){itemVisibleFrameContentElement.innerHTML=\"\";itemVisibleFrameContentElement.appendChild(itemVisibleFrameContent)}else if(itemVisibleFrameContent!=undefined){itemVisibleFrameContentElement.innerHTML=itemVisibleFrameContent}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.itemVisibleFrameContent=itemVisibleFrameContent}}}if(this.options.template){templateFunction=this.options.template.bind(this);content=templateFunction(itemData,element,this.data)}else{content=this.data.content}if(content instanceof Object&&!(content instanceof Element)){templateFunction(itemData,element)}else{changed=this._contentToString(this.content)!==this._contentToString(content);if(changed){if(content instanceof Element){element.innerHTML=\"\";element.appendChild(content)}else if(content!=undefined){element.innerHTML=content}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.content=content}}};Item.prototype._updateDataAttributes=function(element){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var attributes=[];if(Array.isArray(this.options.dataAttributes)){attributes=this.options.dataAttributes}else if(this.options.dataAttributes==\"all\"){attributes=(0,_keys2[\"default\"])(this.data)}else{return}for(var i=0;i<attributes.length;i++){var name=attributes[i];var value=this.data[name];if(value!=null){element.setAttribute(\"data-\"+name,value)}else{element.removeAttribute(\"data-\"+name)}}}};Item.prototype._updateStyle=function(element){if(this.style){util.removeCssText(element,this.style);this.style=null}if(this.data.style){util.addCssText(element,this.data.style);this.style=this.data.style}};Item.prototype._contentToString=function(content){if(typeof content===\"string\")return content;if(content&&\"outerHTML\"in content)return content.outerHTML;return content};Item.prototype._updateEditStatus=function(){if(this.options){if(typeof this.options.editable===\"boolean\"){this.editable={updateTime:this.options.editable,updateGroup:this.options.editable,remove:this.options.editable}}else if((0,_typeof3[\"default\"])(this.options.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.options.editable)}}if(!this.options||!this.options.editable||this.options.editable.overrideItems!==true){if(this.data){if(typeof this.data.editable===\"boolean\"){this.editable={updateTime:this.data.editable,updateGroup:this.data.editable,remove:this.data.editable}}else if((0,_typeof3[\"default\"])(this.data.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.data.editable)}}}};Item.prototype.getWidthLeft=function(){return 0};Item.prototype.getWidthRight=function(){return 0};Item.prototype.getTitle=function(){return this.data.title};module.exports=Item},function(module,exports){module.exports=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}},function(module,exports){var id=0;var px=Math.random();module.exports=function(key){return\"Symbol(\".concat(key===undefined?\"\":key,\")_\",(++id+px).toString(36))}},function(module,exports,__webpack_require__){var defined=__webpack_require__(51);module.exports=function(it){return Object(defined(it))}},function(module,exports){exports.f={}.propertyIsEnumerable},function(module,exports,__webpack_require__){\"use strict\";function Queue(options){this.delay=null;this.max=Infinity;this._queue=[];this._timeout=null;this._extended=null;this.setOptions(options)}Queue.prototype.setOptions=function(options){if(options&&typeof options.delay!==\"undefined\"){this.delay=options.delay}if(options&&typeof options.max!==\"undefined\"){this.max=options.max}this._flushIfNeeded()};Queue.extend=function(object,options){var queue=new Queue(options);if(object.flush!==undefined){throw new Error(\"Target object already has a property flush\")}object.flush=function(){queue.flush()};var methods=[{name:\"flush\",original:undefined}];if(options&&options.replace){for(var i=0;i<options.replace.length;i++){var name=options.replace[i];methods.push({name:name,original:object[name]});queue.replace(object,name)}}queue._extended={object:object,methods:methods};return queue};Queue.prototype.destroy=function(){this.flush();if(this._extended){var object=this._extended.object;var methods=this._extended.methods;for(var i=0;i<methods.length;i++){var method=methods[i];if(method.original){object[method.name]=method.original}else{delete object[method.name]}}this._extended=null}};Queue.prototype.replace=function(object,method){var me=this;var original=object[method];if(!original){throw new Error(\"Method \"+method+\" undefined\")}object[method]=function(){var args=[];for(var i=0;i<arguments.length;i++){args[i]=arguments[i]}me.queue({args:args,fn:original,context:this})}};Queue.prototype.queue=function(entry){if(typeof entry===\"function\"){this._queue.push({fn:entry})}else{this._queue.push(entry)}this._flushIfNeeded()};Queue.prototype._flushIfNeeded=function(){\nif(this._queue.length>this.max){this.flush()}clearTimeout(this._timeout);if(this.queue.length>0&&typeof this.delay===\"number\"){var me=this;this._timeout=setTimeout(function(){me.flush()},this.delay)}};Queue.prototype.flush=function(){while(this._queue.length>0){var entry=this._queue.shift();entry.fn.apply(entry.context||entry.fn,entry.args||[])}};module.exports=Queue},function(module,exports){module.exports=Emitter;function Emitter(obj){if(obj)return mixin(obj)}function mixin(obj){for(var key in Emitter.prototype){obj[key]=Emitter.prototype[key]}return obj}Emitter.prototype.on=Emitter.prototype.addEventListener=function(event,fn){this._callbacks=this._callbacks||{};(this._callbacks[event]=this._callbacks[event]||[]).push(fn);return this};Emitter.prototype.once=function(event,fn){var self=this;this._callbacks=this._callbacks||{};function on(){self.off(event,on);fn.apply(this,arguments)}on.fn=fn;this.on(event,on);return this};Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(event,fn){this._callbacks=this._callbacks||{};if(0==arguments.length){this._callbacks={};return this}var callbacks=this._callbacks[event];if(!callbacks)return this;if(1==arguments.length){delete this._callbacks[event];return this}var cb;for(var i=0;i<callbacks.length;i++){cb=callbacks[i];if(cb===fn||cb.fn===fn){callbacks.splice(i,1);break}}return this};Emitter.prototype.emit=function(event){this._callbacks=this._callbacks||{};var args=[].slice.call(arguments,1),callbacks=this._callbacks[event];if(callbacks){callbacks=callbacks.slice(0);for(var i=0,len=callbacks.length;i<len;++i){callbacks[i].apply(this,args)}}return this};Emitter.prototype.listeners=function(event){this._callbacks=this._callbacks||{};return this._callbacks[event]||[]};Emitter.prototype.hasListeners=function(event){return!!this.listeners(event).length}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Component=__webpack_require__(16);var TimeStep=__webpack_require__(66);var DateUtil=__webpack_require__(36);var moment=__webpack_require__(9);function TimeAxis(body,options){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}};this.props={range:{start:0,end:0,minimumStep:0},lineTop:0};this.defaultOptions={orientation:{axis:\"bottom\"},showMinorLabels:true,showMajorLabels:true,maxMinorChars:7,format:TimeStep.FORMAT,moment:moment,timeAxis:null};this.options=util.extend({},this.defaultOptions);this.body=body;this._create();this.setOptions(options)}TimeAxis.prototype=new Component;TimeAxis.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"showMinorLabels\",\"showMajorLabels\",\"maxMinorChars\",\"hiddenDates\",\"timeAxis\",\"moment\",\"rtl\"],this.options,options);util.selectiveDeepExtend([\"format\"],this.options,options);if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.axis=options.orientation}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}if(\"locale\"in options){if(typeof moment.locale===\"function\"){moment.locale(options.locale)}else{moment.lang(options.locale)}}}};TimeAxis.prototype._create=function(){this.dom.foreground=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.foreground.className=\"vis-time-axis vis-foreground\";this.dom.background.className=\"vis-time-axis vis-background\"};TimeAxis.prototype.destroy=function(){if(this.dom.foreground.parentNode){this.dom.foreground.parentNode.removeChild(this.dom.foreground)}if(this.dom.background.parentNode){this.dom.background.parentNode.removeChild(this.dom.background)}this.body=null};TimeAxis.prototype.redraw=function(){var props=this.props;var foreground=this.dom.foreground;var background=this.dom.background;var parent=this.options.orientation.axis==\"top\"?this.body.dom.top:this.body.dom.bottom;var parentChanged=foreground.parentNode!==parent;this._calculateCharSize();var showMinorLabels=this.options.showMinorLabels&&this.options.orientation.axis!==\"none\";var showMajorLabels=this.options.showMajorLabels&&this.options.orientation.axis!==\"none\";props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.height=props.minorLabelHeight+props.majorLabelHeight;props.width=foreground.offsetWidth;props.minorLineHeight=this.body.domProps.root.height-props.majorLabelHeight-(this.options.orientation.axis==\"top\"?this.body.domProps.bottom.height:this.body.domProps.top.height);props.minorLineWidth=1;props.majorLineHeight=props.minorLineHeight+props.majorLabelHeight;props.majorLineWidth=1;var foregroundNextSibling=foreground.nextSibling;var backgroundNextSibling=background.nextSibling;foreground.parentNode&&foreground.parentNode.removeChild(foreground);background.parentNode&&background.parentNode.removeChild(background);foreground.style.height=this.props.height+\"px\";this._repaintLabels();if(foregroundNextSibling){parent.insertBefore(foreground,foregroundNextSibling)}else{parent.appendChild(foreground)}if(backgroundNextSibling){this.body.dom.backgroundVertical.insertBefore(background,backgroundNextSibling)}else{this.body.dom.backgroundVertical.appendChild(background)}return this._isResized()||parentChanged};TimeAxis.prototype._repaintLabels=function(){var orientation=this.options.orientation.axis;var start=util.convert(this.body.range.start,\"Number\");var end=util.convert(this.body.range.end,\"Number\");var timeLabelsize=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf();var minimumStep=timeLabelsize-DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,timeLabelsize);minimumStep-=this.body.util.toTime(0).valueOf();var step=new TimeStep(new Date(start),new Date(end),minimumStep,this.body.hiddenDates,this.options);step.setMoment(this.options.moment);if(this.options.format){step.setFormat(this.options.format)}if(this.options.timeAxis){step.setScale(this.options.timeAxis)}this.step=step;var dom=this.dom;dom.redundant.lines=dom.lines;dom.redundant.majorTexts=dom.majorTexts;dom.redundant.minorTexts=dom.minorTexts;dom.lines=[];dom.majorTexts=[];dom.minorTexts=[];var current;var next;var x;var xNext;var isMajor;var nextIsMajor;var showMinorGrid;var width=0,prevWidth;var line;var labelMinor;var xFirstMajorLabel=undefined;var count=0;var MAX=1e3;var className;step.start();next=step.getCurrent();xNext=this.body.util.toScreen(next);while(step.hasNext()&&count<MAX){count++;isMajor=step.isMajor();className=step.getClassName();labelMinor=step.getLabelMinor();current=next;x=xNext;step.next();next=step.getCurrent();nextIsMajor=step.isMajor();xNext=this.body.util.toScreen(next);prevWidth=width;width=xNext-x;switch(step.scale){case\"week\":showMinorGrid=true;break;default:showMinorGrid=width>=prevWidth*.4;break}if(this.options.showMinorLabels&&showMinorGrid){var label=this._repaintMinorText(x,labelMinor,orientation,className);label.style.width=width+\"px\"}if(isMajor&&this.options.showMajorLabels){if(x>0){if(xFirstMajorLabel==undefined){xFirstMajorLabel=x}label=this._repaintMajorText(x,step.getLabelMajor(),orientation,className)}line=this._repaintMajorLine(x,width,orientation,className)}else{if(showMinorGrid){line=this._repaintMinorLine(x,width,orientation,className)}else{if(line){line.style.width=parseInt(line.style.width)+width+\"px\"}}}}if(count===MAX&&!warnedForOverflow){console.warn(\"Something is wrong with the Timeline scale. Limited drawing of grid lines to \"+MAX+\" lines.\");warnedForOverflow=true}if(this.options.showMajorLabels){var leftTime=this.body.util.toTime(0),leftText=step.getLabelMajor(leftTime),widthText=leftText.length*(this.props.majorCharWidth||10)+10;if(xFirstMajorLabel==undefined||widthText<xFirstMajorLabel){this._repaintMajorText(0,leftText,orientation,className)}}util.forEach(this.dom.redundant,function(arr){while(arr.length){var elem=arr.pop();if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}})};TimeAxis.prototype._repaintMinorText=function(x,text,orientation,className){var label=this.dom.redundant.minorTexts.shift();if(!label){var content=document.createTextNode(\"\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}this.dom.minorTexts.push(label);label.innerHTML=text;label.style.top=orientation==\"top\"?this.props.majorLabelHeight+\"px\":\"0\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}label.className=\"vis-text vis-minor \"+className;return label};TimeAxis.prototype._repaintMajorText=function(x,text,orientation,className){var label=this.dom.redundant.majorTexts.shift();if(!label){var content=document.createElement(\"div\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}label.childNodes[0].innerHTML=text;label.className=\"vis-text vis-major \"+className;label.style.top=orientation==\"top\"?\"0\":this.props.minorLabelHeight+\"px\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}this.dom.majorTexts.push(label);return label};TimeAxis.prototype._repaintMinorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=props.majorLabelHeight+\"px\"}else{line.style.top=this.body.domProps.top.height+\"px\"}line.style.height=props.minorLineHeight+\"px\";if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-minor \"+className}else{line.style.left=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-minor \"+className}line.style.width=width+\"px\";return line};TimeAxis.prototype._repaintMajorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=\"0\"}else{line.style.top=this.body.domProps.top.height+\"px\"}if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-major \"+className}else{line.style.left=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-major \"+className}line.style.height=props.majorLineHeight+\"px\";line.style.width=width+\"px\";return line};TimeAxis.prototype._calculateCharSize=function(){if(!this.dom.measureCharMinor){this.dom.measureCharMinor=document.createElement(\"DIV\");this.dom.measureCharMinor.className=\"vis-text vis-minor vis-measure\";this.dom.measureCharMinor.style.position=\"absolute\";this.dom.measureCharMinor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMinor)}this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight;this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth;if(!this.dom.measureCharMajor){this.dom.measureCharMajor=document.createElement(\"DIV\");this.dom.measureCharMajor.className=\"vis-text vis-major vis-measure\";this.dom.measureCharMajor.style.position=\"absolute\";this.dom.measureCharMajor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMajor)}this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight;this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var warnedForOverflow=false;module.exports=TimeAxis},function(module,exports,__webpack_require__){\"use strict\";var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CustomTime(body,options){this.body=body;this.defaultOptions={moment:moment,locales:locales,locale:\"en\",id:undefined,title:undefined};this.options=util.extend({},this.defaultOptions);if(options&&options.time){this.customTime=options.time}else{this.customTime=new Date}this.eventParams={};this.setOptions(options);this._create()}CustomTime.prototype=new Component;CustomTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"moment\",\"locale\",\"locales\",\"id\"],this.options,options)}};CustomTime.prototype._create=function(){var bar=document.createElement(\"div\");bar[\"custom-time\"]=this;bar.className=\"vis-custom-time \"+(this.options.id||\"\");bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar;var drag=document.createElement(\"div\");drag.style.position=\"relative\";drag.style.top=\"0px\";drag.style.left=\"-10px\";drag.style.height=\"100%\";drag.style.width=\"20px\";function onMouseWheel(e){this.body.range._onMouseWheel(e)}if(drag.addEventListener){drag.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);drag.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{drag.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}bar.appendChild(drag);this.hammer=new Hammer(drag);this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL})};CustomTime.prototype.destroy=function(){this.hide();this.hammer.destroy();this.hammer=null;this.body=null};CustomTime.prototype.redraw=function(){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar)}var x=this.body.util.toScreen(this.customTime);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=this.options.title;if(title===undefined){title=locale.time+\": \"+this.options.moment(this.customTime).format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1)}else if(typeof title===\"function\"){title=title.call(this.customTime)}this.bar.style.left=x+\"px\";this.bar.title=title;return false};CustomTime.prototype.hide=function(){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}};CustomTime.prototype.setCustomTime=function(time){this.customTime=util.convert(time,\"Date\");this.redraw()};CustomTime.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())};CustomTime.prototype.setCustomTitle=function(title){this.options.title=title};CustomTime.prototype._onDragStart=function(event){this.eventParams.dragging=true;this.eventParams.customTime=this.customTime;event.stopPropagation()};CustomTime.prototype._onDrag=function(event){if(!this.eventParams.dragging)return;var x=this.body.util.toScreen(this.eventParams.customTime)+event.deltaX;var time=this.body.util.toTime(x);this.setCustomTime(time);this.body.emitter.emit(\"timechange\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.prototype._onDragEnd=function(event){if(!this.eventParams.dragging)return;this.body.emitter.emit(\"timechanged\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.customTimeFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"custom-time\")){return target[\"custom-time\"]}target=target.parentNode}return null};module.exports=CustomTime},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var Box=__webpack_require__(193)[\"default\"];var Circle=__webpack_require__(200)[\"default\"];var CircularImage=__webpack_require__(201)[\"default\"];var Database=__webpack_require__(202)[\"default\"];var Diamond=__webpack_require__(203)[\"default\"];var Dot=__webpack_require__(204)[\"default\"];var Ellipse=__webpack_require__(205)[\"default\"];var Icon=__webpack_require__(206)[\"default\"];var Image=__webpack_require__(207)[\"default\"];var Square=__webpack_require__(208)[\"default\"];var Hexagon=__webpack_require__(209)[\"default\"];var Star=__webpack_require__(210)[\"default\"];var Text=__webpack_require__(211)[\"default\"];var Triangle=__webpack_require__(212)[\"default\"];var TriangleDown=__webpack_require__(213)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var Node=function(){function Node(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Node);this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.edges=[];this.id=undefined;this.imagelist=imagelist;this.grouplist=grouplist;this.x=undefined;this.y=undefined;this.baseSize=this.options.size;this.baseFontSize=this.options.font.size;this.predefinedPosition=false;this.selected=false;this.hover=false;this.labelModule=new Label(this.body,this.options,false);this.setOptions(options)}(0,_createClass3[\"default\"])(Node,[{key:\"attachEdge\",value:function attachEdge(edge){if(this.edges.indexOf(edge)===-1){this.edges.push(edge)}}},{key:\"detachEdge\",value:function detachEdge(edge){var index=this.edges.indexOf(edge);if(index!=-1){this.edges.splice(index,1)}}},{key:\"setOptions\",value:function setOptions(options){var currentShape=this.options.shape;if(!options){return}if(options.id!==undefined){this.id=options.id}if(this.id===undefined){throw new Error(\"Node must have an id\")}Node.checkMass(options,this.id);if(options.x!==undefined){if(options.x===null){this.x=undefined;this.predefinedPosition=false}else{this.x=parseInt(options.x);this.predefinedPosition=true}}if(options.y!==undefined){if(options.y===null){this.y=undefined;this.predefinedPosition=false}else{this.y=parseInt(options.y);this.predefinedPosition=true}}if(options.size!==undefined){this.baseSize=options.size}if(options.value!==undefined){options.value=parseFloat(options.value)}Node.parseOptions(this.options,options,true,this.globalOptions,this.grouplist);var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"node\",pile);this._load_images();this.updateLabelModule(options);this.updateShape(currentShape);return options.hidden!==undefined||options.physics!==undefined}},{key:\"_load_images\",value:function _load_images(){if(this.options.shape!==\"circularImage\"&&this.options.shape!==\"image\"){return}if(this.options.image===undefined){throw new Error(\"Option image must be defined for node type '\"+this.options.shape+\"'\")}if(this.imagelist===undefined){throw new Error(\"Internal Error: No images provided\")}if(typeof this.options.image===\"string\"){this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}else{if(this.options.image.unselected===undefined){throw new Error(\"No unselected image provided\")}this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id);if(this.options.image.selected!==undefined){this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id)}else{this.imageObjAlt=undefined}}}},{key:\"getFormattingValues\",value:function getFormattingValues(){var values={color:this.options.color.background,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){values.borderWidth*=2;values.color=this.options.color.highlight.background;values.borderColor=this.options.color.highlight.border;values.shadow=this.options.shadow.enabled}else if(this.hover){values.color=this.options.color.hover.background;values.borderColor=this.options.color.hover.border;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){if(this.options.label===undefined||this.options.label===null){this.options.label=\"\"}Node.updateGroupOptions(this.options,options,this.grouplist);var currentGroup=this.grouplist.get(this.options.group,false);var pile=[options,this.options,currentGroup,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateShape\",value:function updateShape(currentShape){if(currentShape===this.options.shape&&this.shape){this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt)}else{switch(this.options.shape){case\"box\":this.shape=new Box(this.options,this.body,this.labelModule);break;case\"circle\":this.shape=new Circle(this.options,this.body,this.labelModule);break;case\"circularImage\":this.shape=new CircularImage(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"database\":this.shape=new Database(this.options,this.body,this.labelModule);break;case\"diamond\":this.shape=new Diamond(this.options,this.body,this.labelModule);break;case\"dot\":this.shape=new Dot(this.options,this.body,this.labelModule);break;case\"ellipse\":this.shape=new Ellipse(this.options,this.body,this.labelModule);break;case\"icon\":this.shape=new Icon(this.options,this.body,this.labelModule);break;case\"image\":this.shape=new Image(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"square\":this.shape=new Square(this.options,this.body,this.labelModule);break;case\"hexagon\":this.shape=new Hexagon(this.options,this.body,this.labelModule);break;case\"star\":this.shape=new Star(this.options,this.body,this.labelModule);break;case\"text\":this.shape=new Text(this.options,this.body,this.labelModule);break;case\"triangle\":this.shape=new Triangle(this.options,this.body,this.labelModule);break;case\"triangleDown\":this.shape=new TriangleDown(this.options,this.body,this.labelModule);break;default:this.shape=new Ellipse(this.options,this.body,this.labelModule);break}}this.needsRefresh()}},{key:\"select\",value:function select(){this.selected=true;this.needsRefresh()}},{key:\"unselect\",value:function unselect(){this.selected=false;this.needsRefresh()}},{key:\"needsRefresh\",value:function needsRefresh(){this.shape.refreshNeeded=true}},{key:\"getTitle\",value:function getTitle(){return this.options.title}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this.shape.distanceToBorder(ctx,angle)}},{key:\"isFixed\",value:function isFixed(){return this.options.fixed.x&&this.options.fixed.y}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"getLabelSize\",value:function getLabelSize(){return this.labelModule.size()}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var sizeDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.size=this.options.scaling.min+scale*sizeDiff}else{this.options.size=this.baseSize;this.options.font.size=this.baseFontSize}this.updateLabelModule()}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();this.shape.draw(ctx,this.x,this.y,this.selected,this.hover,values)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(ctx){this.shape.updateBoundingBox(this.x,this.y,ctx)}},{key:\"resize\",value:function resize(ctx){var values=this.getFormattingValues();this.shape.resize(ctx,this.selected,this.hover,values)}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){if(ComponentUtil.pointInRect(this.labelModule.getSize(),point)){ret.push({nodeId:this.id,labelId:0})}}if(ComponentUtil.pointInRect(this.shape.boundingBox,point)){ret.push({nodeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){return this.shape.left<obj.right&&this.shape.left+this.shape.width>obj.left&&this.shape.top<obj.bottom&&this.shape.top+this.shape.height>obj.top}},{key:\"isBoundingBoxOverlappingWith\",value:function isBoundingBoxOverlappingWith(obj){return this.shape.boundingBox.left<obj.right&&this.shape.boundingBox.right>obj.left&&this.shape.boundingBox.top<obj.bottom&&this.shape.boundingBox.bottom>obj.top}}],[{key:\"updateGroupOptions\",value:function updateGroupOptions(parentOptions,newOptions,groupList){if(groupList===undefined)return;var group=parentOptions.group;if(newOptions!==undefined&&newOptions.group!==undefined&&group!==newOptions.group){throw new Error(\"updateGroupOptions: group values in options don't match.\")}var hasGroup=typeof group===\"number\"||typeof group===\"string\"&&group!=\"\";if(!hasGroup)return;var groupObj=groupList.get(group);util.selectiveNotDeepExtend([\"font\"],parentOptions,groupObj);parentOptions.color=util.parseColor(parentOptions.color)}},{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var groupList=arguments[4];var fields=[\"color\",\"fixed\",\"shadow\"];util.selectiveNotDeepExtend(fields,parentOptions,newOptions,allowDeletion);Node.checkMass(newOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.color!==undefined&&newOptions.color!==null){var parsedColor=util.parseColor(newOptions.color);util.fillIfDefined(parentOptions.color,parsedColor)}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(newOptions.fixed!==undefined&&newOptions.fixed!==null){if(typeof newOptions.fixed===\"boolean\"){parentOptions.fixed.x=newOptions.fixed;parentOptions.fixed.y=newOptions.fixed}else{if(newOptions.fixed.x!==undefined&&typeof newOptions.fixed.x===\"boolean\"){parentOptions.fixed.x=newOptions.fixed.x}if(newOptions.fixed.y!==undefined&&typeof newOptions.fixed.y===\"boolean\"){parentOptions.fixed.y=newOptions.fixed.y}}}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}Node.updateGroupOptions(parentOptions,newOptions,groupList);if(newOptions.scaling!==undefined){util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}}},{key:\"checkMass\",value:function checkMass(options,id){if(options.mass!==undefined&&options.mass<=0){var strId=\"\";if(id!==undefined){strId=\" in node id: \"+id}console.log(\"%cNegative or zero mass disallowed\"+strId+\", setting mass to 1.\",printStyle);options.mass=1}}}]);return Node}();exports[\"default\"]=Node},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=function(){function ComponentUtil(){(0,_classCallCheck3[\"default\"])(this,ComponentUtil)}(0,_createClass3[\"default\"])(ComponentUtil,null,[{key:\"choosify\",value:function choosify(subOption,pile){var allowed=[\"node\",\"edge\",\"label\"];var value=true;var chosen=util.topMost(pile,\"chosen\");if(typeof chosen===\"boolean\"){value=chosen}else if((typeof chosen===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(chosen))===\"object\"){if(allowed.indexOf(subOption)===-1){throw new Error(\"choosify: subOption '\"+subOption+\"' should be one of \"+\"'\"+allowed.join(\"', '\")+\"'\")}var chosenEdge=util.topMost(pile,[\"chosen\",subOption]);if(typeof chosenEdge===\"boolean\"||typeof chosenEdge===\"function\"){value=chosenEdge}}return value}},{key:\"pointInRect\",value:function pointInRect(rect,point,rotationPoint){if(rect.width<=0||rect.height<=0){return false}if(rotationPoint!==undefined){var tmp={x:point.x-rotationPoint.x,y:point.y-rotationPoint.y};if(rotationPoint.angle!==0){var angle=-rotationPoint.angle;var tmp2={x:Math.cos(angle)*tmp.x-Math.sin(angle)*tmp.y,y:Math.sin(angle)*tmp.x+Math.cos(angle)*tmp.y};point=tmp2}else{point=tmp}}var right=rect.x+rect.width;var bottom=rect.y+rect.width;return rect.left<point.x&&right>point.x&&rect.top<point.y&&bottom>point.y}},{key:\"isValidLabel\",value:function isValidLabel(text){return typeof text===\"string\"&&text!==\"\"}}]);return ComponentUtil}();exports[\"default\"]=ComponentUtil},function(module,exports,__webpack_require__){__webpack_require__(125);var global=__webpack_require__(18);var hide=__webpack_require__(26);var Iterators=__webpack_require__(31);var TO_STRING_TAG=__webpack_require__(13)(\"toStringTag\");var DOMIterables=(\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,\"+\"DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,\"+\"MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,\"+\"SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,\"+\"TextTrackList,TouchList\").split(\",\");for(var i=0;i<DOMIterables.length;i++){var NAME=DOMIterables[i];var Collection=global[NAME];var proto=Collection&&Collection.prototype;if(proto&&!proto[TO_STRING_TAG])hide(proto,TO_STRING_TAG,NAME);Iterators[NAME]=Iterators.Array}},function(module,exports){var toString={}.toString;module.exports=function(it){return toString.call(it).slice(8,-1)}},function(module,exports){module.exports=function(it){if(it==undefined)throw TypeError(\"Can't call method on \"+it);return it}},function(module,exports){module.exports=true},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it,S){if(!isObject(it))return it;var fn,val;if(S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;if(typeof(fn=it.valueOf)==\"function\"&&!isObject(val=fn.call(it)))return val;if(!S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;throw TypeError(\"Can't convert object to primitive value\")}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var dPs=__webpack_require__(130);var enumBugKeys=__webpack_require__(58);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\")\n;var Empty=function(){};var PROTOTYPE=\"prototype\";var createDict=function(){var iframe=__webpack_require__(82)(\"iframe\");var i=enumBugKeys.length;var lt=\"<\";var gt=\">\";var iframeDocument;iframe.style.display=\"none\";__webpack_require__(134).appendChild(iframe);iframe.src=\"javascript:\";iframeDocument=iframe.contentWindow.document;iframeDocument.open();iframeDocument.write(lt+\"script\"+gt+\"document.F=Object\"+lt+\"/script\"+gt);iframeDocument.close();createDict=iframeDocument.F;while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];return createDict()};module.exports=Object.create||function create(O,Properties){var result;if(O!==null){Empty[PROTOTYPE]=anObject(O);result=new Empty;Empty[PROTOTYPE]=null;result[IE_PROTO]=O}else result=createDict();return Properties===undefined?result:dPs(result,Properties)}},function(module,exports){var ceil=Math.ceil;var floor=Math.floor;module.exports=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)}},function(module,exports,__webpack_require__){var shared=__webpack_require__(57)(\"keys\");var uid=__webpack_require__(40);module.exports=function(key){return shared[key]||(shared[key]=uid(key))}},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var SHARED=\"__core-js_shared__\";var store=global[SHARED]||(global[SHARED]={});module.exports=function(key){return store[key]||(store[key]={})}},function(module,exports){module.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(module,exports,__webpack_require__){var def=__webpack_require__(20).f;var has=__webpack_require__(22);var TAG=__webpack_require__(13)(\"toStringTag\");module.exports=function(it,tag,stat){if(it&&!has(it=stat?it:it.prototype,TAG))def(it,TAG,{configurable:true,value:tag})}},function(module,exports,__webpack_require__){\"use strict\";var $at=__webpack_require__(135)(true);__webpack_require__(79)(String,\"String\",function(iterated){this._t=String(iterated);this._i=0},function(){var O=this._t;var index=this._i;var point;if(index>=O.length)return{value:undefined,done:true};point=$at(O,index);this._i+=point.length;return{value:point,done:false}})},function(module,exports,__webpack_require__){exports.f=__webpack_require__(13)},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var LIBRARY=__webpack_require__(52);var wksExt=__webpack_require__(61);var defineProperty=__webpack_require__(20).f;module.exports=function(name){var $Symbol=core.Symbol||(core.Symbol=LIBRARY?{}:global.Symbol||{});if(name.charAt(0)!=\"_\"&&!(name in $Symbol))defineProperty($Symbol,name,{value:wksExt.f(name)})}},function(module,exports){exports.f=Object.getOwnPropertySymbols},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var moment=__webpack_require__(9);var Component=__webpack_require__(16);var DateUtil=__webpack_require__(36);function Range(body,options){var now=moment().hours(0).minutes(0).seconds(0).milliseconds(0);var start=now.clone().add(-3,\"days\").valueOf();var end=now.clone().add(3,\"days\").valueOf();this.millisecondsPerPixelCache=undefined;if(options===undefined){this.start=start;this.end=end}else{this.start=options.start||start;this.end=options.end||end}this.rolling=false;this.body=body;this.deltaDifference=0;this.scaleOffset=0;this.startToFront=false;this.endToFront=true;this.defaultOptions={rtl:false,start:null,end:null,moment:moment,direction:\"horizontal\",moveable:true,zoomable:true,min:null,max:null,zoomMin:10,zoomMax:1e3*60*60*24*365*1e4,rollingMode:{follow:false,offset:.5}};this.options=util.extend({},this.defaultOptions);this.props={touch:{}};this.animationTimer=null;this.body.emitter.on(\"panstart\",this._onDragStart.bind(this));this.body.emitter.on(\"panmove\",this._onDrag.bind(this));this.body.emitter.on(\"panend\",this._onDragEnd.bind(this));this.body.emitter.on(\"mousewheel\",this._onMouseWheel.bind(this));this.body.emitter.on(\"touch\",this._onTouch.bind(this));this.body.emitter.on(\"pinch\",this._onPinch.bind(this));this.body.dom.rollingModeBtn.addEventListener(\"click\",this.startRolling.bind(this));this.setOptions(options)}Range.prototype=new Component;Range.prototype.setOptions=function(options){if(options){var fields=[\"animation\",\"direction\",\"min\",\"max\",\"zoomMin\",\"zoomMax\",\"moveable\",\"zoomable\",\"moment\",\"activate\",\"hiddenDates\",\"zoomKey\",\"rtl\",\"showCurrentTime\",\"rollingMode\",\"horizontalScroll\"];util.selectiveExtend(fields,this.options,options);if(options.rollingMode&&options.rollingMode.follow){this.startRolling()}if(\"start\"in options||\"end\"in options){this.setRange(options.start,options.end)}}};function validateDirection(direction){if(direction!=\"horizontal\"&&direction!=\"vertical\"){throw new TypeError('Unknown direction \"'+direction+'\". '+'Choose \"horizontal\" or \"vertical\".')}}Range.prototype.startRolling=function(){var me=this;function update(){me.stopRolling();me.rolling=true;var interval=me.end-me.start;var t=util.convert(new Date,\"Date\").valueOf();var start=t-interval*me.options.rollingMode.offset;var end=t+interval*(1-me.options.rollingMode.offset);var options={animation:false};me.setRange(start,end,options);var scale=me.conversion(me.body.domProps.center.width).scale;interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.body.dom.rollingModeBtn.style.visibility=\"hidden\";me.currentTimeTimer=setTimeout(update,interval)}update()};Range.prototype.stopRolling=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);this.rolling=false;this.body.dom.rollingModeBtn.style.visibility=\"visible\"}};Range.prototype.setRange=function(start,end,options,callback,frameCallback){if(!options){options={}}if(options.byUser!==true){options.byUser=false}var me=this;var finalStart=start!=undefined?util.convert(start,\"Date\").valueOf():null;var finalEnd=end!=undefined?util.convert(end,\"Date\").valueOf():null;this._cancelAnimation();this.millisecondsPerPixelCache=undefined;if(options.animation){var initStart=this.start;var initEnd=this.end;var duration=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"duration\"in options.animation?options.animation.duration:500;var easingName=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"easingFunction\"in options.animation?options.animation.easingFunction:\"easeInOutQuad\";var easingFunction=util.easingFunctions[easingName];if(!easingFunction){throw new Error(\"Unknown easing function \"+(0,_stringify2[\"default\"])(easingName)+\". \"+\"Choose from: \"+(0,_keys2[\"default\"])(util.easingFunctions).join(\", \"))}var initTime=(new Date).valueOf();var anyChanged=false;var next=function next(){if(!me.props.touch.dragging){var now=(new Date).valueOf();var time=now-initTime;var ease=easingFunction(time/duration);var done=time>duration;var s=done||finalStart===null?finalStart:initStart+(finalStart-initStart)*ease;var e=done||finalEnd===null?finalEnd:initEnd+(finalEnd-initEnd)*ease;changed=me._applyRange(s,e);DateUtil.updateHiddenDates(me.options.moment,me.body,me.options.hiddenDates);anyChanged=anyChanged||changed;var params={start:new Date(me.start),end:new Date(me.end),byUser:options.byUser,event:options.event};if(frameCallback){frameCallback(ease,changed,done)}if(changed){me.body.emitter.emit(\"rangechange\",params)}if(done){if(anyChanged){me.body.emitter.emit(\"rangechanged\",params);if(callback){return callback()}}}else{me.animationTimer=setTimeout(next,20)}}};return next()}else{var changed=this._applyRange(finalStart,finalEnd);DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(changed){var params={start:new Date(this.start),end:new Date(this.end),byUser:options.byUser,event:options.event};this.body.emitter.emit(\"rangechange\",params);clearTimeout(me.timeoutID);me.timeoutID=setTimeout(function(){me.body.emitter.emit(\"rangechanged\",params)},200);if(callback){return callback()}}}};Range.prototype.getMillisecondsPerPixel=function(){if(this.millisecondsPerPixelCache===undefined){this.millisecondsPerPixelCache=(this.end-this.start)/this.body.dom.center.clientWidth}return this.millisecondsPerPixelCache};Range.prototype._cancelAnimation=function(){if(this.animationTimer){clearTimeout(this.animationTimer);this.animationTimer=null}};Range.prototype._applyRange=function(start,end){var newStart=start!=null?util.convert(start,\"Date\").valueOf():this.start,newEnd=end!=null?util.convert(end,\"Date\").valueOf():this.end,max=this.options.max!=null?util.convert(this.options.max,\"Date\").valueOf():null,min=this.options.min!=null?util.convert(this.options.min,\"Date\").valueOf():null,diff;if(isNaN(newStart)||newStart===null){throw new Error('Invalid start \"'+start+'\"')}if(isNaN(newEnd)||newEnd===null){throw new Error('Invalid end \"'+end+'\"')}if(newEnd<newStart){newEnd=newStart}if(min!==null){if(newStart<min){diff=min-newStart;newStart+=diff;newEnd+=diff;if(max!=null){if(newEnd>max){newEnd=max}}}}if(max!==null){if(newEnd>max){diff=newEnd-max;newStart-=diff;newEnd-=diff;if(min!=null){if(newStart<min){newStart=min}}}}if(this.options.zoomMin!==null){var zoomMin=parseFloat(this.options.zoomMin);if(zoomMin<0){zoomMin=0}if(newEnd-newStart<zoomMin){var compensation=.5;if(this.end-this.start===zoomMin&&newStart>=this.start-compensation&&newEnd<=this.end){newStart=this.start;newEnd=this.end}else{diff=zoomMin-(newEnd-newStart);newStart-=diff/2;newEnd+=diff/2}}}if(this.options.zoomMax!==null){var zoomMax=parseFloat(this.options.zoomMax);if(zoomMax<0){zoomMax=0}if(newEnd-newStart>zoomMax){if(this.end-this.start===zoomMax&&newStart<this.start&&newEnd>this.end){newStart=this.start;newEnd=this.end}else{diff=newEnd-newStart-zoomMax;newStart+=diff/2;newEnd-=diff/2}}}var changed=this.start!=newStart||this.end!=newEnd;if(!(newStart>=this.start&&newStart<=this.end||newEnd>=this.start&&newEnd<=this.end)&&!(this.start>=newStart&&this.start<=newEnd||this.end>=newStart&&this.end<=newEnd)){this.body.emitter.emit(\"checkRangedItems\")}this.start=newStart;this.end=newEnd;return changed};Range.prototype.getRange=function(){return{start:this.start,end:this.end}};Range.prototype.conversion=function(width,totalHidden){return Range.conversion(this.start,this.end,width,totalHidden)};Range.conversion=function(start,end,width,totalHidden){if(totalHidden===undefined){totalHidden=0}if(width!=0&&end-start!=0){return{offset:start,scale:width/(end-start-totalHidden)}}else{return{offset:0,scale:1}}};Range.prototype._onDragStart=function(event){this.deltaDifference=0;this.previousDelta=0;if(!this.options.moveable)return;if(!this._isInsideRange(event))return;if(!this.props.touch.allowDragging)return;this.stopRolling();this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.dragging=true;if(this.body.dom.root){this.body.dom.root.style.cursor=\"move\"}};Range.prototype._onDrag=function(event){if(!event)return;if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;var direction=this.options.direction;validateDirection(direction);var delta=direction==\"horizontal\"?event.deltaX:event.deltaY;delta-=this.deltaDifference;var interval=this.props.touch.end-this.props.touch.start;var duration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);interval-=duration;var width=direction==\"horizontal\"?this.body.domProps.center.width:this.body.domProps.center.height;var diffRange;if(this.options.rtl){diffRange=delta/width*interval}else{diffRange=-delta/width*interval}var newStart=this.props.touch.start+diffRange;var newEnd=this.props.touch.end+diffRange;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,this.previousDelta-delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,this.previousDelta-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){this.deltaDifference+=delta;this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this._onDrag(event);return}this.previousDelta=delta;this._applyRange(newStart,newEnd);var startDate=new Date(this.start);var endDate=new Date(this.end);this.body.emitter.emit(\"rangechange\",{start:startDate,end:endDate,byUser:true,event:event});this.body.emitter.emit(\"panmove\")};Range.prototype._onDragEnd=function(event){if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;this.props.touch.dragging=false;if(this.body.dom.root){this.body.dom.root.style.cursor=\"auto\"}this.body.emitter.emit(\"rangechanged\",{start:new Date(this.start),end:new Date(this.end),byUser:true,event:event})};Range.prototype._onMouseWheel=function(event){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(this.options.zoomKey&&!event[this.options.zoomKey]&&this.options.zoomable||!this.options.zoomable&&this.options.moveable){return}if(!(this.options.zoomable&&this.options.moveable))return;if(!this._isInsideRange(event))return;if(delta){var scale;if(delta<0){scale=1-delta/5}else{scale=1/(1+delta/5)}var pointerDate;if(this.rolling){pointerDate=this.start+(this.end-this.start)*this.options.rollingMode.offset}else{var pointer=this.getPointer({x:event.clientX,y:event.clientY},this.body.dom.center);pointerDate=this._pointerToDate(pointer)}this.zoom(scale,pointerDate,delta,event);event.preventDefault()}};Range.prototype._onTouch=function(event){this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.allowDragging=true;this.props.touch.center=null;this.scaleOffset=0;this.deltaDifference=0;util.preventDefault(event)};Range.prototype._onPinch=function(event){if(!(this.options.zoomable&&this.options.moveable))return;util.preventDefault(event);this.props.touch.allowDragging=false;if(!this.props.touch.center){this.props.touch.center=this.getPointer(event.center,this.body.dom.center)}this.stopRolling();var scale=1/(event.scale+this.scaleOffset);var centerDate=this._pointerToDate(this.props.touch.center);var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,centerDate);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=centerDate-hiddenDurationBefore+(this.props.touch.start-(centerDate-hiddenDurationBefore))*scale;var newEnd=centerDate+hiddenDurationAfter+(this.props.touch.end-(centerDate+hiddenDurationAfter))*scale;this.startToFront=1-scale<=0;this.endToFront=scale-1<=0;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,1-scale,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,scale-1,true);if(safeStart!=newStart||safeEnd!=newEnd){this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this.scaleOffset=1-event.scale;newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype._isInsideRange=function(event){var clientX=event.center?event.center.x:event.clientX;var x;if(this.options.rtl){x=clientX-util.getAbsoluteLeft(this.body.dom.centerContainer)}else{x=util.getAbsoluteRight(this.body.dom.centerContainer)-clientX}var time=this.body.util.toTime(x);return time>=this.start&&time<=this.end};Range.prototype._pointerToDate=function(pointer){var conversion;var direction=this.options.direction;validateDirection(direction);if(direction==\"horizontal\"){return this.body.util.toTime(pointer.x).valueOf()}else{var height=this.body.domProps.center.height;conversion=this.conversion(height);return pointer.y/conversion.scale+conversion.offset}};Range.prototype.getPointer=function(touch,element){if(this.options.rtl){return{x:util.getAbsoluteRight(element)-touch.x,y:touch.y-util.getAbsoluteTop(element)}}else{return{x:touch.x-util.getAbsoluteLeft(element),y:touch.y-util.getAbsoluteTop(element)}}};Range.prototype.zoom=function(scale,center,delta,event){if(center==null){center=(this.start+this.end)/2}var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,center);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=center-hiddenDurationBefore+(this.start-(center-hiddenDurationBefore))*scale;var newEnd=center+hiddenDurationAfter+(this.end-(center+hiddenDurationAfter))*scale;this.startToFront=delta>0?false:true;this.endToFront=-delta>0?false:true;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype.move=function(delta){var diff=this.end-this.start;var newStart=this.start+diff*delta;var newEnd=this.end+diff*delta;this.start=newStart;this.end=newEnd};Range.prototype.moveTo=function(moveTo){var center=(this.start+this.end)/2;var diff=center-moveTo;var newStart=this.start-diff;var newEnd=this.end-diff;var options={animation:false,byUser:true,event:null};this.setRange(newStart,newEnd,options)};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var TimeAxis=__webpack_require__(45);var Activator=__webpack_require__(97);var DateUtil=__webpack_require__(36);var CustomTime=__webpack_require__(46);function Core(){}Emitter(Core.prototype);Core.prototype._create=function(container){this.dom={};this.dom.container=container;this.dom.root=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.backgroundVertical=document.createElement(\"div\");this.dom.backgroundHorizontal=document.createElement(\"div\");this.dom.centerContainer=document.createElement(\"div\");this.dom.leftContainer=document.createElement(\"div\");this.dom.rightContainer=document.createElement(\"div\");this.dom.center=document.createElement(\"div\");this.dom.left=document.createElement(\"div\");this.dom.right=document.createElement(\"div\");this.dom.top=document.createElement(\"div\");this.dom.bottom=document.createElement(\"div\");this.dom.shadowTop=document.createElement(\"div\");this.dom.shadowBottom=document.createElement(\"div\");this.dom.shadowTopLeft=document.createElement(\"div\");this.dom.shadowBottomLeft=document.createElement(\"div\");this.dom.shadowTopRight=document.createElement(\"div\");this.dom.shadowBottomRight=document.createElement(\"div\");this.dom.rollingModeBtn=document.createElement(\"div\");this.dom.root.className=\"vis-timeline\";this.dom.background.className=\"vis-panel vis-background\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical\";this.dom.backgroundHorizontal.className=\"vis-panel vis-background vis-horizontal\";this.dom.centerContainer.className=\"vis-panel vis-center\";this.dom.leftContainer.className=\"vis-panel vis-left\";this.dom.rightContainer.className=\"vis-panel vis-right\";this.dom.top.className=\"vis-panel vis-top\";this.dom.bottom.className=\"vis-panel vis-bottom\";this.dom.left.className=\"vis-content\";this.dom.center.className=\"vis-content\";this.dom.right.className=\"vis-content\";this.dom.shadowTop.className=\"vis-shadow vis-top\";this.dom.shadowBottom.className=\"vis-shadow vis-bottom\";this.dom.shadowTopLeft.className=\"vis-shadow vis-top\";this.dom.shadowBottomLeft.className=\"vis-shadow vis-bottom\";this.dom.shadowTopRight.className=\"vis-shadow vis-top\";this.dom.shadowBottomRight.className=\"vis-shadow vis-bottom\";this.dom.rollingModeBtn.className=\"vis-rolling-mode-btn\";this.dom.root.appendChild(this.dom.background);this.dom.root.appendChild(this.dom.backgroundVertical);this.dom.root.appendChild(this.dom.backgroundHorizontal);this.dom.root.appendChild(this.dom.centerContainer);this.dom.root.appendChild(this.dom.leftContainer);this.dom.root.appendChild(this.dom.rightContainer);this.dom.root.appendChild(this.dom.top);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.rollingModeBtn);this.dom.centerContainer.appendChild(this.dom.center);this.dom.leftContainer.appendChild(this.dom.left);this.dom.rightContainer.appendChild(this.dom.right);this.dom.centerContainer.appendChild(this.dom.shadowTop);this.dom.centerContainer.appendChild(this.dom.shadowBottom);this.dom.leftContainer.appendChild(this.dom.shadowTopLeft);this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft);this.dom.rightContainer.appendChild(this.dom.shadowTopRight);this.dom.rightContainer.appendChild(this.dom.shadowBottomRight);this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0};this.on(\"rangechange\",function(){if(this.initialDrawDone===true){this._redraw()}}.bind(this));this.on(\"rangechanged\",function(){if(!this.initialRangeChangeDone){this.initialRangeChangeDone=true}}.bind(this));this.on(\"touch\",this._onTouch.bind(this));this.on(\"panmove\",this._onDrag.bind(this));var me=this;this._origRedraw=this._redraw.bind(this);this._redraw=util.throttle(this._origRedraw);this.on(\"_change\",function(properties){if(me.itemSet&&me.itemSet.initialItemSetDrawn&&properties&&properties.queue==true){me._redraw()}else{me._origRedraw()}});this.hammer=new Hammer(this.dom.root);var pinchRecognizer=this.hammer.get(\"pinch\").set({enable:true});hammerUtil.disablePreventDefaultVertically(pinchRecognizer);this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.listeners={};var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(type){var listener=function listener(event){if(me.isActive()){me.emit(type,event)}};me.hammer.on(type,listener);me.listeners[type]=listener});hammerUtil.onTouch(this.hammer,function(event){me.emit(\"touch\",event)}.bind(this));hammerUtil.onRelease(this.hammer,function(event){me.emit(\"release\",event)}.bind(this));function onMouseWheel(event){if(this.isActive()){this.emit(\"mousewheel\",event)}var deltaX=0;var deltaY=0;if(\"detail\"in event){deltaY=event.detail*-1}if(\"wheelDelta\"in event){deltaY=event.wheelDelta}if(\"wheelDeltaY\"in event){deltaY=event.wheelDeltaY}if(\"wheelDeltaX\"in event){deltaX=event.wheelDeltaX*-1}if(\"axis\"in event&&event.axis===event.HORIZONTAL_AXIS){deltaX=deltaY*-1;deltaY=0}if(\"deltaY\"in event){deltaY=event.deltaY*-1}if(\"deltaX\"in event){deltaX=event.deltaX}if(!this.options.zoomKey||event[this.options.zoomKey])return;event.preventDefault();if(this.options.verticalScroll&&Math.abs(deltaY)>=Math.abs(deltaX)){var current=this.props.scrollTop;var adjusted=current+deltaY;if(this.isActive()){this._setScrollTop(adjusted);this._redraw();this.emit(\"scroll\",event)}}else if(this.options.horizontalScroll){var delta=Math.abs(deltaX)>=Math.abs(deltaY)?deltaX:deltaY;var diff=delta/120*(this.range.end-this.range.start)/20;var newStart=this.range.start+diff;var newEnd=this.range.end+diff;var options={animation:false,byUser:true,event:event};this.range.setRange(newStart,newEnd,options)}}if(this.dom.centerContainer.addEventListener){this.dom.centerContainer.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);this.dom.centerContainer.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{this.dom.centerContainer.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}function onMouseScrollSide(event){if(!me.options.verticalScroll)return;event.preventDefault();if(me.isActive()){var adjusted=-event.target.scrollTop;me._setScrollTop(adjusted);me._redraw();me.emit(\"scrollSide\",event)}}this.dom.left.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));this.dom.right.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));var itemAddedToTimeline=false;function handleDragOver(event){if(event.preventDefault){event.preventDefault()}if(!event.target.className.indexOf(\"vis\")>-1)return;if(itemAddedToTimeline)return;event.dataTransfer.dropEffect=\"move\";itemAddedToTimeline=true;return false}function handleDrop(event){if(event.preventDefault){event.preventDefault()}if(event.stopPropagation){event.stopPropagation()}try{var itemData=JSON.parse(event.dataTransfer.getData(\"text\"));if(!itemData||!itemData.content)return}catch(err){return false}itemAddedToTimeline=false;event.center={x:event.clientX,y:event.clientY};if(itemData.target!==\"item\"){me.itemSet._onAddItem(event)}else{me.itemSet._onDropObjectOnItem(event)}me.emit(\"drop\",me.getEventProperties(event));return false}this.dom.center.addEventListener(\"dragover\",handleDragOver.bind(this),false);this.dom.center.addEventListener(\"drop\",handleDrop.bind(this),false);this.customTimes=[];this.touch={};this.redrawCount=0;this.initialDrawDone=false;this.initialRangeChangeDone=false;if(!container)throw new Error(\"No container provided\");container.appendChild(this.dom.root)};Core.prototype.setOptions=function(options){if(options){var fields=[\"width\",\"height\",\"minHeight\",\"maxHeight\",\"autoResize\",\"start\",\"end\",\"clickToUse\",\"dataAttributes\",\"hiddenDates\",\"locale\",\"locales\",\"moment\",\"rtl\",\"zoomKey\",\"horizontalScroll\",\"verticalScroll\"];util.selectiveExtend(fields,this.options,options);this.dom.rollingModeBtn.style.visibility=\"hidden\";if(this.options.rtl){this.dom.container.style.direction=\"rtl\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical-rtl\"}if(this.options.verticalScroll){if(this.options.rtl){this.dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\"}else{this.dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\"}}if((0,_typeof3[\"default\"])(this.options.orientation)!==\"object\"){this.options.orientation={item:undefined,axis:undefined}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation={item:options.orientation,axis:options.orientation}}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"){if(\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}if(\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}}if(this.options.orientation.axis===\"both\"){if(!this.timeAxis2){var timeAxis2=this.timeAxis2=new TimeAxis(this.body);timeAxis2.setOptions=function(options){var _options=options?util.extend({},options):{};_options.orientation=\"top\";TimeAxis.prototype.setOptions.call(timeAxis2,_options)};this.components.push(timeAxis2)}}else{if(this.timeAxis2){var index=this.components.indexOf(this.timeAxis2);if(index!==-1){this.components.splice(index,1)}this.timeAxis2.destroy();this.timeAxis2=null}}if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}if(\"hiddenDates\"in this.options){DateUtil.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates)}if(\"clickToUse\"in options){if(options.clickToUse){if(!this.activator){this.activator=new Activator(this.dom.root)}}else{if(this.activator){this.activator.destroy();delete this.activator}}}if(\"showCustomTime\"in options){throw new Error(\"Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])\")}this._initAutoResize()}this.components.forEach(function(component){return component.setOptions(options)});if(\"configure\"in options){if(!this.configurator){this.configurator=this._createConfigurator()}this.configurator.setOptions(options.configure);var appliedOptions=util.deepExtend({},this.options);this.components.forEach(function(component){util.deepExtend(appliedOptions,component.options)});this.configurator.setModuleOptions({global:appliedOptions})}this._redraw()};Core.prototype.isActive=function(){return!this.activator||this.activator.active};Core.prototype.destroy=function(){this.setItems(null);this.setGroups(null);this.off();this._stopAutoResize();if(this.dom.root.parentNode){this.dom.root.parentNode.removeChild(this.dom.root)}this.dom=null;if(this.activator){this.activator.destroy();delete this.activator}for(var event in this.listeners){if(this.listeners.hasOwnProperty(event)){delete this.listeners[event]}}this.listeners=null;this.hammer=null;this.components.forEach(function(component){return component.destroy()});this.body=null};Core.prototype.setCustomTime=function(time,id){var customTimes=this.customTimes.filter(function(component){return id===component.options.id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){customTimes[0].setCustomTime(time)}};Core.prototype.getCustomTime=function(id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}return customTimes[0].getCustomTime()};Core.prototype.setCustomTimeTitle=function(title,id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){return customTimes[0].setCustomTitle(title)}};Core.prototype.getEventProperties=function(event){return{event:event}};Core.prototype.addCustomTime=function(time,id){var timestamp=time!==undefined?util.convert(time,\"Date\").valueOf():new Date;var exists=this.customTimes.some(function(customTime){return customTime.options.id===id});if(exists){throw new Error(\"A custom time with id \"+(0,_stringify2[\"default\"])(id)+\" already exists\")}var customTime=new CustomTime(this.body,util.extend({},this.options,{time:timestamp,id:id}));this.customTimes.push(customTime);this.components.push(customTime);this._redraw();return id};Core.prototype.removeCustomTime=function(id){var customTimes=this.customTimes.filter(function(bar){return bar.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}customTimes.forEach(function(customTime){this.customTimes.splice(this.customTimes.indexOf(customTime),1);this.components.splice(this.components.indexOf(customTime),1);customTime.destroy()}.bind(this))};Core.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]};Core.prototype.fit=function(options,callback){var range=this.getDataRange();if(range.min===null&&range.max===null){return}var interval=range.max-range.min;var min=new Date(range.min.valueOf()-interval*.01);var max=new Date(range.max.valueOf()+interval*.01);var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(min,max,{animation:animation},callback)};Core.prototype.getDataRange=function(){throw new Error(\"Cannot invoke abstract method getDataRange\")};Core.prototype.setWindow=function(start,end,options,callback){if(typeof arguments[2]==\"function\"){callback=arguments[2];options={}}var animation;var range;if(arguments.length==1){range=arguments[0];animation=range.animation!==undefined?range.animation:true;this.range.setRange(range.start,range.end,{animation:animation})}else if(arguments.length==2&&typeof arguments[1]==\"function\"){range=arguments[0];callback=arguments[1];animation=range.animation!==undefined?range.animation:true\n;this.range.setRange(range.start,range.end,{animation:animation},callback)}else{animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)}};Core.prototype.moveTo=function(time,options,callback){if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var interval=this.range.end-this.range.start;var t=util.convert(time,\"Date\").valueOf();var start=t-interval/2;var end=t+interval/2;var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)};Core.prototype.getWindow=function(){var range=this.range.getRange();return{start:new Date(range.start),end:new Date(range.end)}};Core.prototype.zoomIn=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newInterval=interval/(1+percentage);var distance=(interval-newInterval)/2;var newStart=start+distance;var newEnd=end-distance;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.zoomOut=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newStart=start-interval*percentage/2;var newEnd=end+interval*percentage/2;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.redraw=function(){this._redraw()};Core.prototype._redraw=function(){this.redrawCount++;var resized=false;var options=this.options;var props=this.props;var dom=this.dom;if(!dom||!dom.container||dom.root.offsetWidth==0)return;DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(options.orientation==\"top\"){util.addClassName(dom.root,\"vis-top\");util.removeClassName(dom.root,\"vis-bottom\")}else{util.removeClassName(dom.root,\"vis-top\");util.addClassName(dom.root,\"vis-bottom\")}dom.root.style.maxHeight=util.option.asSize(options.maxHeight,\"\");dom.root.style.minHeight=util.option.asSize(options.minHeight,\"\");dom.root.style.width=util.option.asSize(options.width,\"\");props.border.left=(dom.centerContainer.offsetWidth-dom.centerContainer.clientWidth)/2;props.border.right=props.border.left;props.border.top=(dom.centerContainer.offsetHeight-dom.centerContainer.clientHeight)/2;props.border.bottom=props.border.top;props.borderRootHeight=dom.root.offsetHeight-dom.root.clientHeight;props.borderRootWidth=dom.root.offsetWidth-dom.root.clientWidth;if(dom.centerContainer.clientHeight===0){props.border.left=props.border.top;props.border.right=props.border.left}if(dom.root.clientHeight===0){props.borderRootWidth=props.borderRootHeight}props.center.height=dom.center.offsetHeight;props.left.height=dom.left.offsetHeight;props.right.height=dom.right.offsetHeight;props.top.height=dom.top.clientHeight||-props.border.top;props.bottom.height=dom.bottom.clientHeight||-props.border.bottom;var contentHeight=Math.max(props.left.height,props.center.height,props.right.height);var autoHeight=props.top.height+contentHeight+props.bottom.height+props.borderRootHeight+props.border.top+props.border.bottom;dom.root.style.height=util.option.asSize(options.height,autoHeight+\"px\");props.root.height=dom.root.offsetHeight;props.background.height=props.root.height-props.borderRootHeight;var containerHeight=props.root.height-props.top.height-props.bottom.height-props.borderRootHeight;props.centerContainer.height=containerHeight;props.leftContainer.height=containerHeight;props.rightContainer.height=props.leftContainer.height;props.root.width=dom.root.offsetWidth;props.background.width=props.root.width-props.borderRootWidth;if(!this.initialDrawDone){props.scrollbarWidth=util.getScrollBarWidth()}if(options.verticalScroll){if(options.rtl){props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth+props.scrollbarWidth||-props.border.right}else{props.left.width=dom.leftContainer.clientWidth+props.scrollbarWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}}else{props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}this._setDOM();var offset=this._updateScrollTop();if(options.orientation.item!=\"top\"){offset+=Math.max(props.centerContainer.height-props.center.height-props.border.top-props.border.bottom,0)}dom.center.style.top=offset+\"px\";var visibilityTop=props.scrollTop==0?\"hidden\":\"\";var visibilityBottom=props.scrollTop==props.scrollTopMin?\"hidden\":\"\";dom.shadowTop.style.visibility=visibilityTop;dom.shadowBottom.style.visibility=visibilityBottom;dom.shadowTopLeft.style.visibility=visibilityTop;dom.shadowBottomLeft.style.visibility=visibilityBottom;dom.shadowTopRight.style.visibility=visibilityTop;dom.shadowBottomRight.style.visibility=visibilityBottom;if(options.verticalScroll){dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\";dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\";dom.shadowTopRight.style.visibility=\"hidden\";dom.shadowBottomRight.style.visibility=\"hidden\";dom.shadowTopLeft.style.visibility=\"hidden\";dom.shadowBottomLeft.style.visibility=\"hidden\";dom.left.style.top=\"0px\";dom.right.style.top=\"0px\"}if(!options.verticalScroll||props.center.height<props.centerContainer.height){dom.left.style.top=offset+\"px\";dom.right.style.top=offset+\"px\";dom.rightContainer.className=dom.rightContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");dom.leftContainer.className=dom.leftContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right;this._setDOM()}var contentsOverflow=props.center.height>props.centerContainer.height;this.hammer.get(\"pan\").set({direction:contentsOverflow?Hammer.DIRECTION_ALL:Hammer.DIRECTION_HORIZONTAL});this.components.forEach(function(component){resized=component.redraw()||resized});var MAX_REDRAW=5;if(resized){if(this.redrawCount<MAX_REDRAW){this.body.emitter.emit(\"_change\");return}else{console.log(\"WARNING: infinite loop in redraw?\")}}else{this.redrawCount=0}this.body.emitter.emit(\"changed\")};Core.prototype._setDOM=function(){var props=this.props;var dom=this.dom;props.leftContainer.width=props.left.width;props.rightContainer.width=props.right.width;var centerWidth=props.root.width-props.left.width-props.right.width-props.borderRootWidth;props.center.width=centerWidth;props.centerContainer.width=centerWidth;props.top.width=centerWidth;props.bottom.width=centerWidth;dom.background.style.height=props.background.height+\"px\";dom.backgroundVertical.style.height=props.background.height+\"px\";dom.backgroundHorizontal.style.height=props.centerContainer.height+\"px\";dom.centerContainer.style.height=props.centerContainer.height+\"px\";dom.leftContainer.style.height=props.leftContainer.height+\"px\";dom.rightContainer.style.height=props.rightContainer.height+\"px\";dom.background.style.width=props.background.width+\"px\";dom.backgroundVertical.style.width=props.centerContainer.width+\"px\";dom.backgroundHorizontal.style.width=props.background.width+\"px\";dom.centerContainer.style.width=props.center.width+\"px\";dom.top.style.width=props.top.width+\"px\";dom.bottom.style.width=props.bottom.width+\"px\";dom.background.style.left=\"0\";dom.background.style.top=\"0\";dom.backgroundVertical.style.left=props.left.width+props.border.left+\"px\";dom.backgroundVertical.style.top=\"0\";dom.backgroundHorizontal.style.left=\"0\";dom.backgroundHorizontal.style.top=props.top.height+\"px\";dom.centerContainer.style.left=props.left.width+\"px\";dom.centerContainer.style.top=props.top.height+\"px\";dom.leftContainer.style.left=\"0\";dom.leftContainer.style.top=props.top.height+\"px\";dom.rightContainer.style.left=props.left.width+props.center.width+\"px\";dom.rightContainer.style.top=props.top.height+\"px\";dom.top.style.left=props.left.width+\"px\";dom.top.style.top=\"0\";dom.bottom.style.left=props.left.width+\"px\";dom.bottom.style.top=props.top.height+props.centerContainer.height+\"px\";dom.center.style.left=\"0\";dom.left.style.left=\"0\";dom.right.style.left=\"0\"};Core.prototype.repaint=function(){throw new Error(\"Function repaint is deprecated. Use redraw instead.\")};Core.prototype.setCurrentTime=function(time){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}this.currentTime.setCurrentTime(time)};Core.prototype.getCurrentTime=function(){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}return this.currentTime.getCurrentTime()};Core.prototype._toTime=function(x){return DateUtil.toTime(this,x,this.props.center.width)};Core.prototype._toGlobalTime=function(x){return DateUtil.toTime(this,x,this.props.root.width)};Core.prototype._toScreen=function(time){return DateUtil.toScreen(this,time,this.props.center.width)};Core.prototype._toGlobalScreen=function(time){return DateUtil.toScreen(this,time,this.props.root.width)};Core.prototype._initAutoResize=function(){if(this.options.autoResize==true){this._startAutoResize()}else{this._stopAutoResize()}};Core.prototype._startAutoResize=function(){var me=this;this._stopAutoResize();this._onResize=function(){if(me.options.autoResize!=true){me._stopAutoResize();return}if(me.dom.root){if(me.dom.root.offsetWidth!=me.props.lastWidth||me.dom.root.offsetHeight!=me.props.lastHeight){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight;me.props.scrollbarWidth=util.getScrollBarWidth();me.body.emitter.emit(\"_change\")}}};util.addEventListener(window,\"resize\",this._onResize);if(me.dom.root){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight}this.watchTimer=setInterval(this._onResize,1e3)};Core.prototype._stopAutoResize=function(){if(this.watchTimer){clearInterval(this.watchTimer);this.watchTimer=undefined}if(this._onResize){util.removeEventListener(window,\"resize\",this._onResize);this._onResize=null}};Core.prototype._onTouch=function(event){this.touch.allowDragging=true;this.touch.initialScrollTop=this.props.scrollTop};Core.prototype._onPinch=function(event){this.touch.allowDragging=false};Core.prototype._onDrag=function(event){if(!event)return;if(!this.touch.allowDragging)return;var delta=event.deltaY;var oldScrollTop=this._getScrollTop();var newScrollTop=this._setScrollTop(this.touch.initialScrollTop+delta);if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}if(newScrollTop!=oldScrollTop){this.emit(\"verticalDrag\")}};Core.prototype._setScrollTop=function(scrollTop){this.props.scrollTop=scrollTop;this._updateScrollTop();return this.props.scrollTop};Core.prototype._updateScrollTop=function(){var scrollTopMin=Math.min(this.props.centerContainer.height-this.props.center.height,0);if(scrollTopMin!=this.props.scrollTopMin){if(this.options.orientation.item!=\"top\"){this.props.scrollTop+=scrollTopMin-this.props.scrollTopMin}this.props.scrollTopMin=scrollTopMin}if(this.props.scrollTop>0)this.props.scrollTop=0;if(this.props.scrollTop<scrollTopMin)this.props.scrollTop=scrollTopMin;if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}return this.props.scrollTop};Core.prototype._getScrollTop=function(){return this.props.scrollTop};Core.prototype._createConfigurator=function(){throw new Error(\"Cannot invoke abstract method _createConfigurator\")};module.exports=Core},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var DateUtil=__webpack_require__(36);var util=__webpack_require__(2);function TimeStep(start,end,minimumStep,hiddenDates,options){this.moment=moment;this.current=this.moment();this._start=this.moment();this._end=this.moment();this.autoScale=true;this.scale=\"day\";this.step=1;this.setRange(start,end,minimumStep);this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;if(Array.isArray(hiddenDates)){this.hiddenDates=hiddenDates}else if(hiddenDates!=undefined){this.hiddenDates=[hiddenDates]}else{this.hiddenDates=[]}this.format=TimeStep.FORMAT;this.options=options?options:{}}TimeStep.FORMAT={minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}};TimeStep.prototype.setMoment=function(moment){this.moment=moment;this.current=this.moment(this.current.valueOf());this._start=this.moment(this._start.valueOf());this._end=this.moment(this._end.valueOf())};TimeStep.prototype.setFormat=function(format){var defaultFormat=util.deepExtend({},TimeStep.FORMAT);this.format=util.deepExtend(defaultFormat,format)};TimeStep.prototype.setRange=function(start,end,minimumStep){if(!(start instanceof Date)||!(end instanceof Date)){throw\"No legal start or end date in method setRange\"}this._start=start!=undefined?this.moment(start.valueOf()):new Date;this._end=end!=undefined?this.moment(end.valueOf()):new Date;if(this.autoScale){this.setMinimumStep(minimumStep)}};TimeStep.prototype.start=function(){this.current=this._start.clone();this.roundToMinor()};TimeStep.prototype.roundToMinor=function(){if(this.scale==\"week\"){this.current.weekday(0)}switch(this.scale){case\"year\":this.current.year(this.step*Math.floor(this.current.year()/this.step));this.current.month(0);case\"month\":this.current.date(1);case\"week\":case\"day\":case\"weekday\":this.current.hours(0);case\"hour\":this.current.minutes(0);case\"minute\":this.current.seconds(0);case\"second\":this.current.milliseconds(0)}if(this.step!=1){switch(this.scale){case\"millisecond\":this.current.subtract(this.current.milliseconds()%this.step,\"milliseconds\");break;case\"second\":this.current.subtract(this.current.seconds()%this.step,\"seconds\");break;case\"minute\":this.current.subtract(this.current.minutes()%this.step,\"minutes\");break;case\"hour\":this.current.subtract(this.current.hours()%this.step,\"hours\");break;case\"weekday\":case\"day\":this.current.subtract((this.current.date()-1)%this.step,\"day\");break;case\"week\":this.current.subtract(this.current.week()%this.step,\"week\");break;case\"month\":this.current.subtract(this.current.month()%this.step,\"month\");break;case\"year\":this.current.subtract(this.current.year()%this.step,\"year\");break;default:break}}};TimeStep.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()};TimeStep.prototype.next=function(){var prev=this.current.valueOf();switch(this.scale){case\"millisecond\":this.current.add(this.step,\"millisecond\");break;case\"second\":this.current.add(this.step,\"second\");break;case\"minute\":this.current.add(this.step,\"minute\");break;case\"hour\":this.current.add(this.step,\"hour\");if(this.current.month()<6){this.current.subtract(this.current.hours()%this.step,\"hour\")}else{if(this.current.hours()%this.step!==0){this.current.add(this.step-this.current.hours()%this.step,\"hour\")}}break;case\"weekday\":case\"day\":this.current.add(this.step,\"day\");break;case\"week\":if(this.current.weekday()!==0){this.current.weekday(0);this.current.add(this.step,\"week\")}else if(this.options.showMajorLabels===false){this.current.add(this.step,\"week\")}else{var nextWeek=this.current.clone();nextWeek.add(1,\"week\");if(nextWeek.isSame(this.current,\"month\")){this.current.add(this.step,\"week\")}else{this.current.add(this.step,\"week\");this.current.date(1)}}break;case\"month\":this.current.add(this.step,\"month\");break;case\"year\":this.current.add(this.step,\"year\");break;default:break}if(this.step!=1){switch(this.scale){case\"millisecond\":if(this.current.milliseconds()>0&&this.current.milliseconds()<this.step)this.current.milliseconds(0);break;case\"second\":if(this.current.seconds()>0&&this.current.seconds()<this.step)this.current.seconds(0);break;case\"minute\":if(this.current.minutes()>0&&this.current.minutes()<this.step)this.current.minutes(0);break;case\"hour\":if(this.current.hours()>0&&this.current.hours()<this.step)this.current.hours(0);break;case\"weekday\":case\"day\":if(this.current.date()<this.step+1)this.current.date(1);break;case\"week\":if(this.current.week()<this.step)this.current.week(1);break;case\"month\":if(this.current.month()<this.step)this.current.month(0);break;case\"year\":break;default:break}}if(this.current.valueOf()==prev){this.current=this._end.clone()}this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;DateUtil.stepOverHiddenDates(this.moment,this,prev)};TimeStep.prototype.getCurrent=function(){return this.current};TimeStep.prototype.setScale=function(params){if(params&&typeof params.scale==\"string\"){this.scale=params.scale;this.step=params.step>0?params.step:1;this.autoScale=false}};TimeStep.prototype.setAutoScale=function(enable){this.autoScale=enable};TimeStep.prototype.setMinimumStep=function(minimumStep){if(minimumStep==undefined){return}var stepYear=1e3*60*60*24*30*12;var stepMonth=1e3*60*60*24*30;var stepDay=1e3*60*60*24;var stepHour=1e3*60*60;var stepMinute=1e3*60;var stepSecond=1e3;var stepMillisecond=1;if(stepYear*1e3>minimumStep){this.scale=\"year\";this.step=1e3}if(stepYear*500>minimumStep){this.scale=\"year\";this.step=500}if(stepYear*100>minimumStep){this.scale=\"year\";this.step=100}if(stepYear*50>minimumStep){this.scale=\"year\";this.step=50}if(stepYear*10>minimumStep){this.scale=\"year\";this.step=10}if(stepYear*5>minimumStep){this.scale=\"year\";this.step=5}if(stepYear>minimumStep){this.scale=\"year\";this.step=1}if(stepMonth*3>minimumStep){this.scale=\"month\";this.step=3}if(stepMonth>minimumStep){this.scale=\"month\";this.step=1}if(stepDay*5>minimumStep){this.scale=\"day\";this.step=5}if(stepDay*2>minimumStep){this.scale=\"day\";this.step=2}if(stepDay>minimumStep){this.scale=\"day\";this.step=1}if(stepDay/2>minimumStep){this.scale=\"weekday\";this.step=1}if(stepHour*4>minimumStep){this.scale=\"hour\";this.step=4}if(stepHour>minimumStep){this.scale=\"hour\";this.step=1}if(stepMinute*15>minimumStep){this.scale=\"minute\";this.step=15}if(stepMinute*10>minimumStep){this.scale=\"minute\";this.step=10}if(stepMinute*5>minimumStep){this.scale=\"minute\";this.step=5}if(stepMinute>minimumStep){this.scale=\"minute\";this.step=1}if(stepSecond*15>minimumStep){this.scale=\"second\";this.step=15}if(stepSecond*10>minimumStep){this.scale=\"second\";this.step=10}if(stepSecond*5>minimumStep){this.scale=\"second\";this.step=5}if(stepSecond>minimumStep){this.scale=\"second\";this.step=1}if(stepMillisecond*200>minimumStep){this.scale=\"millisecond\";this.step=200}if(stepMillisecond*100>minimumStep){this.scale=\"millisecond\";this.step=100}if(stepMillisecond*50>minimumStep){this.scale=\"millisecond\";this.step=50}if(stepMillisecond*10>minimumStep){this.scale=\"millisecond\";this.step=10}if(stepMillisecond*5>minimumStep){this.scale=\"millisecond\";this.step=5}if(stepMillisecond>minimumStep){this.scale=\"millisecond\";this.step=1}};TimeStep.snap=function(date,scale,step){var clone=moment(date);if(scale==\"year\"){var year=clone.year()+Math.round(clone.month()/12);clone.year(Math.round(year/step)*step);clone.month(0);clone.date(0);clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"month\"){if(clone.date()>15){clone.date(1);clone.add(1,\"month\")}else{clone.date(1)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"week\"){if(clone.weekday()>2){clone.weekday(0);clone.add(1,\"week\")}else{clone.weekday(0)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"day\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/24)*24);break;default:clone.hours(Math.round(clone.hours()/12)*12);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"weekday\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/12)*12);break;default:clone.hours(Math.round(clone.hours()/6)*6);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"hour\"){switch(step){case 4:clone.minutes(Math.round(clone.minutes()/60)*60);break;default:clone.minutes(Math.round(clone.minutes()/30)*30);break}clone.seconds(0);clone.milliseconds(0)}else if(scale==\"minute\"){switch(step){case 15:case 10:clone.minutes(Math.round(clone.minutes()/5)*5);clone.seconds(0);break;case 5:clone.seconds(Math.round(clone.seconds()/60)*60);break;default:clone.seconds(Math.round(clone.seconds()/30)*30);break}clone.milliseconds(0)}else if(scale==\"second\"){switch(step){case 15:case 10:clone.seconds(Math.round(clone.seconds()/5)*5);clone.milliseconds(0);break;case 5:clone.milliseconds(Math.round(clone.milliseconds()/1e3)*1e3);break;default:clone.milliseconds(Math.round(clone.milliseconds()/500)*500);break}}else if(scale==\"millisecond\"){var _step=step>5?step/2:1;clone.milliseconds(Math.round(clone.milliseconds()/_step)*_step)}return clone};TimeStep.prototype.isMajor=function(){if(this.switchedYear==true){switch(this.scale){case\"year\":case\"month\":case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedMonth==true){switch(this.scale){case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedDay==true){switch(this.scale){case\"millisecond\":case\"second\":case\"minute\":case\"hour\":return true;default:return false}}var date=this.moment(this.current);switch(this.scale){case\"millisecond\":return date.milliseconds()==0;case\"second\":return date.seconds()==0;case\"minute\":return date.hours()==0&&date.minutes()==0;case\"hour\":return date.hours()==0;case\"weekday\":case\"day\":return date.date()==1;case\"week\":return date.date()==1;case\"month\":return date.month()==0;case\"year\":return false;default:return false}};TimeStep.prototype.getLabelMinor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.minorLabels===\"function\"){return this.format.minorLabels(date,this.scale,this.step)}var format=this.format.minorLabels[this.scale];switch(this.scale){case\"week\":if(this.isMajor()&&date.weekday()!==0){return\"\"}default:return format&&format.length>0?this.moment(date).format(format):\"\"}};TimeStep.prototype.getLabelMajor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.majorLabels===\"function\"){return this.format.majorLabels(date,this.scale,this.step)}var format=this.format.majorLabels[this.scale];return format&&format.length>0?this.moment(date).format(format):\"\"};TimeStep.prototype.getClassName=function(){var _moment=this.moment;var m=this.moment(this.current);var current=m.locale?m.locale(\"en\"):m.lang(\"en\");var step=this.step;var classNames=[];function even(value){return value/step%2==0?\" vis-even\":\" vis-odd\"}function today(date){if(date.isSame(new Date,\"day\")){return\" vis-today\"}if(date.isSame(_moment().add(1,\"day\"),\"day\")){return\" vis-tomorrow\"}if(date.isSame(_moment().add(-1,\"day\"),\"day\")){return\" vis-yesterday\"}return\"\"}function currentWeek(date){return date.isSame(new Date,\"week\")?\" vis-current-week\":\"\"}function currentMonth(date){return date.isSame(new Date,\"month\")?\" vis-current-month\":\"\"}function currentYear(date){return date.isSame(new Date,\"year\")?\" vis-current-year\":\"\"}switch(this.scale){case\"millisecond\":classNames.push(today(current));classNames.push(even(current.milliseconds()));break;case\"second\":classNames.push(today(current));classNames.push(even(current.seconds()));break;case\"minute\":classNames.push(today(current));classNames.push(even(current.minutes()));break;case\"hour\":classNames.push(\"vis-h\"+current.hours()+(this.step==4?\"-h\"+(current.hours()+4):\"\"));classNames.push(today(current));classNames.push(even(current.hours()));break;case\"weekday\":classNames.push(\"vis-\"+current.format(\"dddd\").toLowerCase());classNames.push(today(current));classNames.push(currentWeek(current));classNames.push(even(current.date()));break;case\"day\":classNames.push(\"vis-day\"+current.date());classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(today(current));classNames.push(currentMonth(current));classNames.push(this.step<=2?today(current):\"\");classNames.push(this.step<=2?\"vis-\"+current.format(\"dddd\").toLowerCase():\"\");classNames.push(even(current.date()-1));break;case\"week\":classNames.push(\"vis-week\"+current.format(\"w\"));classNames.push(currentWeek(current));classNames.push(even(current.week()));break;case\"month\":classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(currentMonth(current));classNames.push(even(current.month()));break;case\"year\":classNames.push(\"vis-year\"+current.year());classNames.push(currentYear(current));classNames.push(even(current.year()));break}return classNames.filter(String).join(\" \")};module.exports=TimeStep},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CurrentTime(body,options){this.body=body;this.defaultOptions={rtl:false,showCurrentTime:true,moment:moment,locales:locales,locale:\"en\"};this.options=util.extend({},this.defaultOptions);this.offset=0;this._create();this.setOptions(options)}CurrentTime.prototype=new Component;CurrentTime.prototype._create=function(){var bar=document.createElement(\"div\");bar.className=\"vis-current-time\";bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar};CurrentTime.prototype.destroy=function(){this.options.showCurrentTime=false;this.redraw();this.body=null};CurrentTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"rtl\",\"showCurrentTime\",\"moment\",\"locale\",\"locales\"],this.options,options)}};CurrentTime.prototype.redraw=function(){if(this.options.showCurrentTime){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar);this.start()}var now=this.options.moment((new Date).valueOf()+this.offset);var x=this.body.util.toScreen(now);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=locale.current+\" \"+locale.time+\": \"+now.format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1);if(this.options.rtl){this.bar.style.right=x+\"px\"}else{this.bar.style.left=x+\"px\"}this.bar.title=title}else{if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}this.stop()}return false};CurrentTime.prototype.start=function(){var me=this;function update(){me.stop();var scale=me.body.range.conversion(me.body.domProps.center.width).scale;var interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.redraw();me.body.emitter.emit(\"currentTimeTick\");me.currentTimeTimer=setTimeout(update,interval)}update()};CurrentTime.prototype.stop=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);delete this.currentTimeTimer}};CurrentTime.prototype.setCurrentTime=function(time){var t=util.convert(time,\"Date\").valueOf();var now=(new Date).valueOf();this.offset=t-now;this.redraw()};CurrentTime.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)};module.exports=CurrentTime},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var stack=__webpack_require__(100);function Group(groupId,data,itemSet){this.groupId=groupId;this.subgroups={};this.subgroupStack={};this.subgroupStackAll=false;this.doInnerStack=false;this.subgroupIndex=0;this.subgroupOrderer=data&&data.subgroupOrder;this.itemSet=itemSet;this.isVisible=null;this.stackDirty=true;if(data&&data.nestedGroups){this.nestedGroups=data.nestedGroups;if(data.showNested==false){this.showNested=false}else{this.showNested=true}}if(data&&data.subgroupStack){if(typeof data.subgroupStack===\"boolean\"){this.doInnerStack=data.subgroupStack;this.subgroupStackAll=data.subgroupStack}else{for(var key in data.subgroupStack){this.subgroupStack[key]=data.subgroupStack[key];this.doInnerStack=this.doInnerStack||data.subgroupStack[key]}}}this.nestedInGroup=null;this.dom={};this.props={label:{width:0,height:0}};this.className=null;this.items={};this.visibleItems=[];this.itemsInRange=[];this.orderedItems={byStart:[],byEnd:[]};this.checkRangedItems=false;var me=this;this.itemSet.body.emitter.on(\"checkRangedItems\",function(){me.checkRangedItems=true});this._create();this.setData(data)}Group.prototype._create=function(){var label=document.createElement(\"div\");if(this.itemSet.options.groupEditable.order){label.className=\"vis-label draggable\"}else{label.className=\"vis-label\"}this.dom.label=label;var inner=document.createElement(\"div\");inner.className=\"vis-inner\";label.appendChild(inner);this.dom.inner=inner;var foreground=document.createElement(\"div\");foreground.className=\"vis-group\";foreground[\"timeline-group\"]=this;this.dom.foreground=foreground;this.dom.background=document.createElement(\"div\");this.dom.background.className=\"vis-group\";this.dom.axis=document.createElement(\"div\");this.dom.axis.className=\"vis-group\";this.dom.marker=document.createElement(\"div\");this.dom.marker.style.visibility=\"hidden\";this.dom.marker.style.position=\"absolute\";this.dom.marker.innerHTML=\"\";this.dom.background.appendChild(this.dom.marker)};Group.prototype.setData=function(data){var content;var templateFunction;if(this.itemSet.options&&this.itemSet.options.groupTemplate){templateFunction=this.itemSet.options.groupTemplate.bind(this);content=templateFunction(data,this.dom.inner)}else{content=data&&data.content}if(content instanceof Element){this.dom.inner.appendChild(content);while(this.dom.inner.firstChild){this.dom.inner.removeChild(this.dom.inner.firstChild)}this.dom.inner.appendChild(content)}else if(content instanceof Object){templateFunction(data,this.dom.inner)}else if(content!==undefined&&content!==null){this.dom.inner.innerHTML=content}else{this.dom.inner.innerHTML=this.groupId||\"\"}this.dom.label.title=data&&data.title||\"\";if(!this.dom.inner.firstChild){util.addClassName(this.dom.inner,\"vis-hidden\")}else{util.removeClassName(this.dom.inner,\"vis-hidden\")}if(data&&data.nestedGroups){if(!this.nestedGroups||this.nestedGroups!=data.nestedGroups){this.nestedGroups=data.nestedGroups}if(data.showNested!==undefined||this.showNested===undefined){if(data.showNested==false){this.showNested=false}else{this.showNested=true}}util.addClassName(this.dom.label,\"vis-nesting-group\");var collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";if(this.showNested){util.removeClassName(this.dom.label,collapsedDirClassName);util.addClassName(this.dom.label,\"expanded\")}else{util.removeClassName(this.dom.label,\"expanded\");util.addClassName(this.dom.label,collapsedDirClassName)}}else if(this.nestedGroups){this.nestedGroups=null;collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";util.removeClassName(this.dom.label,collapsedDirClassName);util.removeClassName(this.dom.label,\"expanded\");util.removeClassName(this.dom.label,\"vis-nesting-group\")}if(data&&data.nestedInGroup){util.addClassName(this.dom.label,\"vis-nested-group\");if(this.itemSet.options&&this.itemSet.options.rtl){this.dom.inner.style.paddingRight=\"30px\"}else{\nthis.dom.inner.style.paddingLeft=\"30px\"}}var className=data&&data.className||null;if(className!=this.className){if(this.className){util.removeClassName(this.dom.label,this.className);util.removeClassName(this.dom.foreground,this.className);util.removeClassName(this.dom.background,this.className);util.removeClassName(this.dom.axis,this.className)}util.addClassName(this.dom.label,className);util.addClassName(this.dom.foreground,className);util.addClassName(this.dom.background,className);util.addClassName(this.dom.axis,className);this.className=className}if(this.style){util.removeCssText(this.dom.label,this.style);this.style=null}if(data&&data.style){util.addCssText(this.dom.label,data.style);this.style=data.style}};Group.prototype.getLabelWidth=function(){return this.props.label.width};Group.prototype._didMarkerHeightChange=function(){var markerHeight=this.dom.marker.clientHeight;if(markerHeight!=this.lastMarkerHeight){this.lastMarkerHeight=markerHeight;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){item.dirty=true;if(item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}return true}};Group.prototype._calculateGroupSizeAndPosition=function(){var offsetTop=this.dom.foreground.offsetTop;var offsetLeft=this.dom.foreground.offsetLeft;var offsetWidth=this.dom.foreground.offsetWidth;this.top=offsetTop;this.right=offsetLeft;this.width=offsetWidth};Group.prototype._redrawItems=function(forceRestack,lastIsVisible,margin,range){var restack=forceRestack||this.stackDirty||this.isVisible&&!lastIsVisible;if(restack){var visibleSubgroups={};var subgroup=null;if(typeof this.itemSet.options.order===\"function\"){var me=this;var limitSize=false;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){if(!item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length;me.visibleItems.push(item)}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.items,function(item){item.repositionX(limitSize)});if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)})}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{var customOrderedItems=this.orderedItems.byStart.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)});stack.stack(customOrderedItems,margin,true)}this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range)}else{this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);if(this.itemSet.options.stack){if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{stack.stack(this.visibleItems,margin,true)}}else{stack.nostack(this.visibleItems,margin,this.subgroups,this.itemSet.options.stackSubgroups)}}this.stackDirty=false}};Group.prototype._didResize=function(resized,height){resized=util.updateProperty(this,\"height\",height)||resized;var labelWidth=this.dom.inner.clientWidth;var labelHeight=this.dom.inner.clientHeight;resized=util.updateProperty(this.props.label,\"width\",labelWidth)||resized;resized=util.updateProperty(this.props.label,\"height\",labelHeight)||resized;return resized};Group.prototype._applyGroupHeight=function(height){this.dom.background.style.height=height+\"px\";this.dom.foreground.style.height=height+\"px\";this.dom.label.style.height=height+\"px\"};Group.prototype._updateItemsVerticalPosition=function(margin){for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin);if(!this.isVisible&&this.groupId!=\"__background__\"){if(item.displayed)item.hide()}}};Group.prototype.redraw=function(range,margin,forceRestack,returnQueue){var resized=false;var lastIsVisible=this.isVisible;var height;var queue=[function(){forceRestack=this._didMarkerHeightChange.bind(this)}.bind(this),this._updateSubGroupHeights.bind(this,margin),this._calculateGroupSizeAndPosition.bind(this),function(){this.isVisible=this._isGroupVisible.bind(this)(range,margin)}.bind(this),function(){this._redrawItems.bind(this)(forceRestack,lastIsVisible,margin,range)}.bind(this),this._updateSubgroupsSizes.bind(this),function(){height=this._calculateHeight.bind(this)(margin)}.bind(this),this._calculateGroupSizeAndPosition.bind(this),function(){resized=this._didResize.bind(this)(resized,height)}.bind(this),function(){this._applyGroupHeight.bind(this)(height)}.bind(this),function(){this._updateItemsVerticalPosition.bind(this)(margin)}.bind(this),function(){if(!this.isVisible&&this.height){resized=false}return resized}];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};Group.prototype._updateSubGroupHeights=function(margin){if((0,_keys2[\"default\"])(this.subgroups).length>0){var me=this;this.resetSubgroups();util.forEach(this.visibleItems,function(item){if(item.data.subgroup!==undefined){me.subgroups[item.data.subgroup].height=Math.max(me.subgroups[item.data.subgroup].height,item.height+margin.item.vertical);me.subgroups[item.data.subgroup].visible=true}})}};Group.prototype._isGroupVisible=function(range,margin){return this.top<=range.body.domProps.centerContainer.height-range.body.domProps.scrollTop+margin.axis&&this.top+this.height+margin.axis>=-range.body.domProps.scrollTop};Group.prototype._calculateHeight=function(margin){var height;var itemsInRange=this.visibleItems;if(itemsInRange.length>0){var min=itemsInRange[0].top;var max=itemsInRange[0].top+itemsInRange[0].height;util.forEach(itemsInRange,function(item){min=Math.min(min,item.top);max=Math.max(max,item.top+item.height)});if(min>margin.axis){var offset=min-margin.axis;max-=offset;util.forEach(itemsInRange,function(item){item.top-=offset})}height=max+margin.item.vertical/2}else{height=0}height=Math.max(height,this.props.label.height);return height};Group.prototype.show=function(){if(!this.dom.label.parentNode){this.itemSet.dom.labelSet.appendChild(this.dom.label)}if(!this.dom.foreground.parentNode){this.itemSet.dom.foreground.appendChild(this.dom.foreground)}if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}if(!this.dom.axis.parentNode){this.itemSet.dom.axis.appendChild(this.dom.axis)}};Group.prototype.hide=function(){var label=this.dom.label;if(label.parentNode){label.parentNode.removeChild(label)}var foreground=this.dom.foreground;if(foreground.parentNode){foreground.parentNode.removeChild(foreground)}var background=this.dom.background;if(background.parentNode){background.parentNode.removeChild(background)}var axis=this.dom.axis;if(axis.parentNode){axis.parentNode.removeChild(axis)}};Group.prototype.add=function(item){this.items[item.id]=item;item.setParent(this);this.stackDirty=true;if(item.data.subgroup!==undefined){this._addToSubgroup(item);this.orderSubgroups()}if(this.visibleItems.indexOf(item)==-1){var range=this.itemSet.body.range;this._checkIfVisible(item,this.visibleItems,range)}};Group.prototype._addToSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined&&this.subgroups[subgroupId]===undefined){this.subgroups[subgroupId]={height:0,top:0,start:item.data.start,end:item.data.end||item.data.start,visible:false,index:this.subgroupIndex,items:[],stack:this.subgroupStackAll||this.subgroupStack[subgroupId]||false};this.subgroupIndex++}if(new Date(item.data.start)<new Date(this.subgroups[subgroupId].start)){this.subgroups[subgroupId].start=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(this.subgroups[subgroupId].end)){this.subgroups[subgroupId].end=itemEnd}this.subgroups[subgroupId].items.push(item)};Group.prototype._updateSubgroupsSizes=function(){var me=this;if(me.subgroups){for(var subgroup in me.subgroups){var initialEnd=me.subgroups[subgroup].items[0].data.end||me.subgroups[subgroup].items[0].data.start;var newStart=me.subgroups[subgroup].items[0].data.start;var newEnd=initialEnd-1;me.subgroups[subgroup].items.forEach(function(item){if(new Date(item.data.start)<new Date(newStart)){newStart=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(newEnd)){newEnd=itemEnd}});me.subgroups[subgroup].start=newStart;me.subgroups[subgroup].end=new Date(newEnd-1)}}};Group.prototype.orderSubgroups=function(){if(this.subgroupOrderer!==undefined){var sortArray=[];var subgroup;if(typeof this.subgroupOrderer==\"string\"){for(subgroup in this.subgroups){sortArray.push({subgroup:subgroup,sortField:this.subgroups[subgroup].items[0].data[this.subgroupOrderer]})}sortArray.sort(function(a,b){return a.sortField-b.sortField})}else if(typeof this.subgroupOrderer==\"function\"){for(subgroup in this.subgroups){sortArray.push(this.subgroups[subgroup].items[0].data)}sortArray.sort(this.subgroupOrderer)}if(sortArray.length>0){for(var i=0;i<sortArray.length;i++){this.subgroups[sortArray[i].subgroup].index=i}}}};Group.prototype.resetSubgroups=function(){for(var subgroup in this.subgroups){if(this.subgroups.hasOwnProperty(subgroup)){this.subgroups[subgroup].visible=false;this.subgroups[subgroup].height=0}}};Group.prototype.remove=function(item){delete this.items[item.id];item.setParent(null);this.stackDirty=true;var index=this.visibleItems.indexOf(item);if(index!=-1)this.visibleItems.splice(index,1);if(item.data.subgroup!==undefined){this._removeFromSubgroup(item);this.orderSubgroups()}};Group.prototype._removeFromSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined){var subgroup=this.subgroups[subgroupId];if(subgroup){var itemIndex=subgroup.items.indexOf(item);if(itemIndex>=0){subgroup.items.splice(itemIndex,1);if(!subgroup.items.length){delete this.subgroups[subgroupId]}else{this._updateSubgroupsSizes()}}}}};Group.prototype.removeFromDataSet=function(item){this.itemSet.removeItem(item.id)};Group.prototype.order=function(){var array=util.toArray(this.items);var startArray=[];var endArray=[];for(var i=0;i<array.length;i++){if(array[i].data.end!==undefined){endArray.push(array[i])}startArray.push(array[i])}this.orderedItems={byStart:startArray,byEnd:endArray};stack.orderByStart(this.orderedItems.byStart);stack.orderByEnd(this.orderedItems.byEnd)};Group.prototype._updateItemsInRange=function(orderedItems,oldVisibleItems,range){var visibleItems=[];var visibleItemsLookup={};var interval=(range.end-range.start)/4;var lowerBound=range.start-interval;var upperBound=range.end+interval;var searchFunction=function searchFunction(value){if(value<lowerBound){return-1}else if(value<=upperBound){return 0}else{return 1}};if(oldVisibleItems.length>0){for(var i=0;i<oldVisibleItems.length;i++){this._checkIfVisibleWithReference(oldVisibleItems[i],visibleItems,visibleItemsLookup,range)}}var initialPosByStart=util.binarySearchCustom(orderedItems.byStart,searchFunction,\"data\",\"start\");this._traceVisible(initialPosByStart,orderedItems.byStart,visibleItems,visibleItemsLookup,function(item){return item.data.start<lowerBound||item.data.start>upperBound});if(this.checkRangedItems==true){this.checkRangedItems=false;for(i=0;i<orderedItems.byEnd.length;i++){this._checkIfVisibleWithReference(orderedItems.byEnd[i],visibleItems,visibleItemsLookup,range)}}else{var initialPosByEnd=util.binarySearchCustom(orderedItems.byEnd,searchFunction,\"data\",\"end\");this._traceVisible(initialPosByEnd,orderedItems.byEnd,visibleItems,visibleItemsLookup,function(item){return item.data.end<lowerBound||item.data.end>upperBound})}var redrawQueue={};var redrawQueueLength=0;for(i=0;i<visibleItems.length;i++){var item=visibleItems[i];if(!item.displayed){var returnQueue=true;redrawQueue[i]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[i].length}}var needRedraw=redrawQueueLength>0;if(needRedraw){for(var j=0;j<redrawQueueLength;j++){util.forEach(redrawQueue,function(fns){fns[j]()})}}for(i=0;i<visibleItems.length;i++){visibleItems[i].repositionX()}return visibleItems};Group.prototype._traceVisible=function(initialPos,items,visibleItems,visibleItemsLookup,breakCondition){if(initialPos!=-1){var i,item;for(i=initialPos;i>=0;i--){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}for(i=initialPos+1;i<items.length;i++){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}}};Group.prototype._checkIfVisible=function(item,visibleItems,range){if(item.isVisible(range)){if(!item.displayed)item.show();item.repositionX();visibleItems.push(item)}else{if(item.displayed)item.hide()}};Group.prototype._checkIfVisibleWithReference=function(item,visibleItems,visibleItemsLookup,range){if(item.isVisible(range)){if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}else{if(item.displayed)item.hide()}};Group.prototype.changeSubgroup=function(item,oldSubgroup,newSubgroup){this._removeFromSubgroup(item,oldSubgroup);this._addToSubgroup(item,newSubgroup);this.orderSubgroups()};module.exports=Group},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Group=__webpack_require__(68);function BackgroundGroup(groupId,data,itemSet){Group.call(this,groupId,data,itemSet);this.width=0;this.height=0;this.top=0;this.left=0}BackgroundGroup.prototype=(0,_create2[\"default\"])(Group.prototype);BackgroundGroup.prototype.redraw=function(range,margin,forceRestack){var resized=false;this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);this.width=this.dom.background.offsetWidth;this.dom.background.style.height=\"0\";for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin)}return resized};BackgroundGroup.prototype.show=function(){if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}};module.exports=BackgroundGroup},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function RangeItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}RangeItem.prototype=new Item(null,null,null);RangeItem.prototype.baseClassName=\"vis-item vis-range\";RangeItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};RangeItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.visibleFrame=document.createElement(\"div\");this.dom.visibleFrame.className=\"vis-item-visible-frame\";this.dom.box.appendChild(this.dom.visibleFrame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dom.box[\"timeline-item\"]=this;this.dirty=true}};RangeItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.box)}this.displayed=true};RangeItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=this.baseClassName+className;this.dom.content.style.maxWidth=\"none\"}};RangeItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.frame).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth},box:{height:this.dom.box.offsetHeight}}};RangeItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=sizes.box.height;this.dom.content.style.maxWidth=\"\";this.dirty=false};RangeItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDeleteButton(this.dom.box);this._repaintDragCenter();this._repaintDragLeft();this._repaintDragRight()};RangeItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};RangeItem.prototype.show=function(){if(!this.displayed){this.redraw()}};RangeItem.prototype.hide=function(){if(this.displayed){var box=this.dom.box;if(box.parentNode){box.parentNode.removeChild(box)}this.displayed=false}};RangeItem.prototype.repositionX=function(limitSize){var parentWidth=this.parent.width;var start=this.conversion.toScreen(this.data.start);var end=this.conversion.toScreen(this.data.end);var align=this.data.align===undefined?this.options.align:this.data.align;var contentStartPosition;var contentWidth;if(this.data.limitSize!==false&&(limitSize===undefined||limitSize===true)){if(start<-parentWidth){start=-parentWidth}if(end>2*parentWidth){end=2*parentWidth}}var boxWidth=Math.max(end-start+.5,1);if(this.overflow){if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth+this.props.content.width;contentWidth=this.props.content.width}else{if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth;contentWidth=Math.min(end-start,this.props.content.width)}if(this.options.rtl){this.dom.box.style.right=this.right+\"px\"}else{this.dom.box.style.left=this.left+\"px\"}this.dom.box.style.width=boxWidth+\"px\";switch(align){case\"left\":if(this.options.rtl){this.dom.content.style.right=\"0\"}else{this.dom.content.style.left=\"0\"}break;case\"right\":if(this.options.rtl){this.dom.content.style.right=Math.max(boxWidth-contentWidth,0)+\"px\"}else{this.dom.content.style.left=Math.max(boxWidth-contentWidth,0)+\"px\"}break;case\"center\":if(this.options.rtl){this.dom.content.style.right=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}else{this.dom.content.style.left=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}break;default:if(this.overflow){if(end>0){contentStartPosition=Math.max(-start,0)}else{contentStartPosition=-contentWidth}}else{if(start<0){contentStartPosition=-start}else{contentStartPosition=0}}if(this.options.rtl){this.dom.content.style.right=contentStartPosition+\"px\"}else{this.dom.content.style.left=contentStartPosition+\"px\";this.dom.content.style.width=\"calc(100% - \"+contentStartPosition+\"px)\"}}};RangeItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;if(orientation==\"top\"){box.style.top=this.top+\"px\"}else{box.style.top=this.parent.height-this.top-this.height+\"px\"}};RangeItem.prototype._repaintDragLeft=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragLeft){var dragLeft=document.createElement(\"div\");dragLeft.className=\"vis-drag-left\";dragLeft.dragLeftItem=this;this.dom.box.appendChild(dragLeft);this.dom.dragLeft=dragLeft}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragLeft){if(this.dom.dragLeft.parentNode){this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft)}this.dom.dragLeft=null}};RangeItem.prototype._repaintDragRight=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragRight){var dragRight=document.createElement(\"div\");dragRight.className=\"vis-drag-right\";dragRight.dragRightItem=this;this.dom.box.appendChild(dragRight);this.dom.dragRight=dragRight}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragRight){if(this.dom.dragRight.parentNode){this.dom.dragRight.parentNode.removeChild(this.dom.dragRight)}this.dom.dragRight=null}};module.exports=RangeItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ColorPicker=__webpack_require__(179)[\"default\"];var Configurator=function(){function Configurator(parentModule,defaultContainer,configureOptions){var pixelRatio=arguments.length>3&&arguments[3]!==undefined?arguments[3]:1;(0,_classCallCheck3[\"default\"])(this,Configurator);this.parent=parentModule;this.changedOptions=[];this.container=defaultContainer;this.allowCreation=false;this.options={};this.initialized=false;this.popupCounter=0;this.defaultOptions={enabled:false,filter:true,container:undefined,showButton:true};util.extend(this.options,this.defaultOptions);this.configureOptions=configureOptions;this.moduleOptions={};this.domElements=[];this.popupDiv={};this.popupLimit=5;this.popupHistory={};this.colorPicker=new ColorPicker(pixelRatio);this.wrapper=undefined}(0,_createClass3[\"default\"])(Configurator,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.popupHistory={};this._removePopup();var enabled=true;if(typeof options===\"string\"){this.options.filter=options}else if(options instanceof Array){this.options.filter=options.join()}else if((typeof options===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(options))===\"object\"){if(options.container!==undefined){this.options.container=options.container}if(options.filter!==undefined){this.options.filter=options.filter}if(options.showButton!==undefined){this.options.showButton=options.showButton}if(options.enabled!==undefined){enabled=options.enabled}}else if(typeof options===\"boolean\"){this.options.filter=true;enabled=options}else if(typeof options===\"function\"){this.options.filter=options;enabled=true}if(this.options.filter===false){enabled=false}this.options.enabled=enabled}this._clean()}},{key:\"setModuleOptions\",value:function setModuleOptions(moduleOptions){this.moduleOptions=moduleOptions;if(this.options.enabled===true){this._clean();if(this.options.container!==undefined){this.container=this.options.container}this._create()}}},{key:\"_create\",value:function _create(){var _this=this;this._clean();this.changedOptions=[];var filter=this.options.filter;var counter=0;var show=false;for(var option in this.configureOptions){if(this.configureOptions.hasOwnProperty(option)){this.allowCreation=false;show=false;if(typeof filter===\"function\"){show=filter(option,[]);show=show||this._handleObject(this.configureOptions[option],[option],true)}else if(filter===true||filter.indexOf(option)!==-1){show=true}if(show!==false){this.allowCreation=true;if(counter>0){this._makeItem([])}this._makeHeader(option);this._handleObject(this.configureOptions[option],[option])}counter++}}if(this.options.showButton===true){var generateButton=document.createElement(\"div\");generateButton.className=\"vis-configuration vis-config-button\";generateButton.innerHTML=\"generate options\";generateButton.onclick=function(){_this._printOptions()};generateButton.onmouseover=function(){generateButton.className=\"vis-configuration vis-config-button hover\"};generateButton.onmouseout=function(){generateButton.className=\"vis-configuration vis-config-button\"};this.optionsContainer=document.createElement(\"div\");this.optionsContainer.className=\"vis-configuration vis-config-option-container\";this.domElements.push(this.optionsContainer);this.domElements.push(generateButton)}this._push()}},{key:\"_push\",value:function _push(){this.wrapper=document.createElement(\"div\");this.wrapper.className=\"vis-configuration-wrapper\";this.container.appendChild(this.wrapper);for(var i=0;i<this.domElements.length;i++){this.wrapper.appendChild(this.domElements[i])}this._showPopupIfNeeded()}},{key:\"_clean\",value:function _clean(){for(var i=0;i<this.domElements.length;i++){this.wrapper.removeChild(this.domElements[i])}if(this.wrapper!==undefined){this.container.removeChild(this.wrapper);this.wrapper=undefined}this.domElements=[];this._removePopup()}},{key:\"_getValue\",value:function _getValue(path){var base=this.moduleOptions;for(var i=0;i<path.length;i++){if(base[path[i]]!==undefined){base=base[path[i]]}else{base=undefined;break}}return base}},{key:\"_makeItem\",value:function _makeItem(path){if(this.allowCreation===true){var item=document.createElement(\"div\");item.className=\"vis-configuration vis-config-item vis-config-s\"+path.length;for(var _len=arguments.length,domElements=Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){domElements[_key-1]=arguments[_key]}domElements.forEach(function(element){item.appendChild(element)});this.domElements.push(item);return this.domElements.length}return 0}},{key:\"_makeHeader\",value:function _makeHeader(name){var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-header\";div.innerHTML=name;this._makeItem([],div)}},{key:\"_makeLabel\",value:function _makeLabel(name,path){var objectLabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-label vis-config-s\"+path.length;if(objectLabel===true){div.innerHTML=\"<i><b>\"+name+\":</b></i>\"}else{div.innerHTML=name+\":\"}return div}},{key:\"_makeDropdown\",value:function _makeDropdown(arr,value,path){var select=document.createElement(\"select\");select.className=\"vis-configuration vis-config-select\";var selectedValue=0;if(value!==undefined){if(arr.indexOf(value)!==-1){selectedValue=arr.indexOf(value)}}for(var i=0;i<arr.length;i++){var option=document.createElement(\"option\");option.value=arr[i];if(i===selectedValue){option.selected=\"selected\"}option.innerHTML=arr[i];select.appendChild(option)}var me=this;select.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,select)}},{key:\"_makeRange\",value:function _makeRange(arr,value,path){var defaultValue=arr[0];var min=arr[1];var max=arr[2];var step=arr[3];var range=document.createElement(\"input\");range.className=\"vis-configuration vis-config-range\";try{range.type=\"range\";range.min=min;range.max=max}catch(err){}range.step=step;var popupString=\"\";var popupValue=0;if(value!==undefined){var factor=1.2;if(value<0&&value*factor<min){range.min=Math.ceil(value*factor);popupValue=range.min;popupString=\"range increased\"}else if(value/factor<min){range.min=Math.ceil(value/factor);popupValue=range.min;popupString=\"range increased\"}if(value*factor>max&&max!==1){range.max=Math.ceil(value*factor);popupValue=range.max;popupString=\"range increased\"}range.value=value}else{range.value=defaultValue}var input=document.createElement(\"input\");input.className=\"vis-configuration vis-config-rangeinput\";input.value=range.value;var me=this;range.onchange=function(){input.value=this.value;me._update(Number(this.value),path)};range.oninput=function(){input.value=this.value};var label=this._makeLabel(path[path.length-1],path);var itemIndex=this._makeItem(path,label,range,input);if(popupString!==\"\"&&this.popupHistory[itemIndex]!==popupValue){this.popupHistory[itemIndex]=popupValue;this._setupPopup(popupString,itemIndex)}}},{key:\"_setupPopup\",value:function _setupPopup(string,index){var _this2=this;if(this.initialized===true&&this.allowCreation===true&&this.popupCounter<this.popupLimit){var div=document.createElement(\"div\");div.id=\"vis-configuration-popup\";div.className=\"vis-configuration-popup\";div.innerHTML=string;div.onclick=function(){_this2._removePopup()};this.popupCounter+=1;this.popupDiv={html:div,index:index}}}},{key:\"_removePopup\",value:function _removePopup(){if(this.popupDiv.html!==undefined){this.popupDiv.html.parentNode.removeChild(this.popupDiv.html);clearTimeout(this.popupDiv.hideTimeout);clearTimeout(this.popupDiv.deleteTimeout);this.popupDiv={}}}},{key:\"_showPopupIfNeeded\",value:function _showPopupIfNeeded(){var _this3=this;if(this.popupDiv.html!==undefined){var correspondingElement=this.domElements[this.popupDiv.index];var rect=correspondingElement.getBoundingClientRect();this.popupDiv.html.style.left=rect.left+\"px\";this.popupDiv.html.style.top=rect.top-30+\"px\";document.body.appendChild(this.popupDiv.html);this.popupDiv.hideTimeout=setTimeout(function(){_this3.popupDiv.html.style.opacity=0},1500);this.popupDiv.deleteTimeout=setTimeout(function(){_this3._removePopup()},1800)}}},{key:\"_makeCheckbox\",value:function _makeCheckbox(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"checkbox\";checkbox.className=\"vis-configuration vis-config-checkbox\";checkbox.checked=defaultValue;if(value!==undefined){checkbox.checked=value;if(value!==defaultValue){if((typeof defaultValue===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(defaultValue))===\"object\"){if(value!==defaultValue.enabled){this.changedOptions.push({path:path,value:value})}}else{this.changedOptions.push({path:path,value:value})}}}var me=this;checkbox.onchange=function(){me._update(this.checked,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeTextInput\",value:function _makeTextInput(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"text\";checkbox.className=\"vis-configuration vis-config-text\";checkbox.value=value;if(value!==defaultValue){this.changedOptions.push({path:path,value:value})}var me=this;checkbox.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeColorField\",value:function _makeColorField(arr,value,path){var _this4=this;var defaultColor=arr[1];var div=document.createElement(\"div\");value=value===undefined?defaultColor:value;if(value!==\"none\"){div.className=\"vis-configuration vis-config-colorBlock\";div.style.backgroundColor=value}else{div.className=\"vis-configuration vis-config-colorBlock none\"}value=value===undefined?defaultColor:value;div.onclick=function(){_this4._showColorPicker(value,div,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,div)}},{key:\"_showColorPicker\",value:function _showColorPicker(value,div,path){var _this5=this;div.onclick=function(){};this.colorPicker.insertTo(div);this.colorPicker.show();this.colorPicker.setColor(value);this.colorPicker.setUpdateCallback(function(color){\nvar colorString=\"rgba(\"+color.r+\",\"+color.g+\",\"+color.b+\",\"+color.a+\")\";div.style.backgroundColor=colorString;_this5._update(colorString,path)});this.colorPicker.setCloseCallback(function(){div.onclick=function(){_this5._showColorPicker(value,div,path)}})}},{key:\"_handleObject\",value:function _handleObject(obj){var path=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var checkOnly=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var show=false;var filter=this.options.filter;var visibleInSet=false;for(var subObj in obj){if(obj.hasOwnProperty(subObj)){show=true;var item=obj[subObj];var newPath=util.copyAndExtendArray(path,subObj);if(typeof filter===\"function\"){show=filter(subObj,path);if(show===false){if(!(item instanceof Array)&&typeof item!==\"string\"&&typeof item!==\"boolean\"&&item instanceof Object){this.allowCreation=false;show=this._handleObject(item,newPath,true);this.allowCreation=checkOnly===false}}}if(show!==false){visibleInSet=true;var value=this._getValue(newPath);if(item instanceof Array){this._handleArray(item,value,newPath)}else if(typeof item===\"string\"){this._makeTextInput(item,value,newPath)}else if(typeof item===\"boolean\"){this._makeCheckbox(item,value,newPath)}else if(item instanceof Object){var draw=true;if(path.indexOf(\"physics\")!==-1){if(this.moduleOptions.physics.solver!==subObj){draw=false}}if(draw===true){if(item.enabled!==undefined){var enabledPath=util.copyAndExtendArray(newPath,\"enabled\");var enabledValue=this._getValue(enabledPath);if(enabledValue===true){var label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}else{this._makeCheckbox(item,enabledValue,newPath)}}else{var _label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,_label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}}}else{console.error(\"dont know how to handle\",item,subObj,newPath)}}}}return visibleInSet}},{key:\"_handleArray\",value:function _handleArray(arr,value,path){if(typeof arr[0]===\"string\"&&arr[0]===\"color\"){this._makeColorField(arr,value,path);if(arr[1]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"string\"){this._makeDropdown(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"number\"){this._makeRange(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:Number(value)})}}}},{key:\"_update\",value:function _update(value,path){var options=this._constructOptions(value,path);if(this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit){this.parent.body.emitter.emit(\"configChange\",options)}this.initialized=true;this.parent.setOptions(options)}},{key:\"_constructOptions\",value:function _constructOptions(value,path){var optionsObj=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var pointer=optionsObj;value=value===\"true\"?true:value;value=value===\"false\"?false:value;for(var i=0;i<path.length;i++){if(path[i]!==\"global\"){if(pointer[path[i]]===undefined){pointer[path[i]]={}}if(i!==path.length-1){pointer=pointer[path[i]]}else{pointer[path[i]]=value}}}return optionsObj}},{key:\"_printOptions\",value:function _printOptions(){var options=this.getOptions();this.optionsContainer.innerHTML=\"<pre>var options = \"+(0,_stringify2[\"default\"])(options,null,2)+\"</pre>\"}},{key:\"getOptions\",value:function getOptions(){var options={};for(var i=0;i<this.changedOptions.length;i++){this._constructOptions(this.changedOptions[i].value,this.changedOptions[i].path,options)}return options}}]);return Configurator}();exports[\"default\"]=Configurator},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DOMutil=__webpack_require__(14);function Points(groupId,options){}Points.draw=function(dataset,group,framework,offset){offset=offset||0;var callback=getCallback(framework,group);for(var i=0;i<dataset.length;i++){if(!callback){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group),framework.svgElements,framework.svg,dataset[i].label)}else{var callbackResult=callback(dataset[i],group);if(callbackResult===true||(typeof callbackResult===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(callbackResult))===\"object\"){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group,callbackResult),framework.svgElements,framework.svg,dataset[i].label)}}}};Points.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");DOMutil.drawPoint(x+.5*iconWidth,y,getGroupTemplate(group),framework.svgElements,framework.svg)};function getGroupTemplate(group,callbackResult){callbackResult=typeof callbackResult===\"undefined\"?{}:callbackResult;return{style:callbackResult.style||group.options.drawPoints.style,styles:callbackResult.styles||group.options.drawPoints.styles,size:callbackResult.size||group.options.drawPoints.size,className:callbackResult.className||group.className}}function getCallback(framework,group){var callback=undefined;if(framework.options&&framework.options.drawPoints&&framework.options.drawPoints.onRender&&typeof framework.options.drawPoints.onRender==\"function\"){callback=framework.options.drawPoints.onRender}if(group.group.options&&group.group.options.drawPoints&&group.group.options.drawPoints.onRender&&typeof group.group.options.drawPoints.onRender==\"function\"){callback=group.group.options.drawPoints.onRender}return callback}module.exports=Points},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircleImageBase=function(_NodeBase){(0,_inherits3[\"default\"])(CircleImageBase,_NodeBase);function CircleImageBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CircleImageBase);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircleImageBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CircleImageBase)).call(this,options,body,labelModule));_this.labelOffset=0;_this.selected=false;return _this}(0,_createClass3[\"default\"])(CircleImageBase,[{key:\"setOptions\",value:function setOptions(options,imageObj,imageObjAlt){this.options=options;if(!(imageObj===undefined&&imageObjAlt===undefined)){this.setImages(imageObj,imageObjAlt)}}},{key:\"setImages\",value:function setImages(imageObj,imageObjAlt){if(imageObjAlt&&this.selected){this.imageObj=imageObjAlt;this.imageObjAlt=imageObj}else{this.imageObj=imageObj;this.imageObjAlt=imageObjAlt}}},{key:\"switchImages\",value:function switchImages(selected){var selection_changed=selected&&!this.selected||!selected&&this.selected;this.selected=selected;if(this.imageObjAlt!==undefined&&selection_changed){var imageTmp=this.imageObj;this.imageObj=this.imageObjAlt;this.imageObjAlt=imageTmp}}},{key:\"_resizeImage\",value:function _resizeImage(){var width,height;if(this.options.shapeProperties.useImageSize===false){var ratio_width=1;var ratio_height=1;if(this.imageObj.width&&this.imageObj.height){if(this.imageObj.width>this.imageObj.height){ratio_width=this.imageObj.width/this.imageObj.height}else{ratio_height=this.imageObj.height/this.imageObj.width}}width=this.options.size*2*ratio_width;height=this.options.size*2*ratio_height}else{width=this.imageObj.width;height=this.imageObj.height}this.width=width;this.height=height;this.radius=.5*this.width}},{key:\"_drawRawCircle\",value:function _drawRawCircle(ctx,x,y,values){this.initContextForDraw(ctx,values);ctx.circle(x,y,values.size);this.performFill(ctx,values)}},{key:\"_drawImageAtPosition\",value:function _drawImageAtPosition(ctx,values){if(this.imageObj.width!=0){ctx.globalAlpha=1;this.enableShadow(ctx,values);var factor=1;if(this.options.shapeProperties.interpolation===true){factor=this.imageObj.width/this.width/this.body.view.scale}this.imageObj.drawImageAtPosition(ctx,factor,this.left,this.top,this.width,this.height);this.disableShadow(ctx,values)}}},{key:\"_drawImageLabel\",value:function _drawImageLabel(ctx,x,y,selected,hover){var yLabel;var offset=0;if(this.height!==undefined){offset=this.height*.5;var labelDimensions=this.labelModule.getTextSize(ctx,selected,hover);if(labelDimensions.lineCount>=1){offset+=labelDimensions.height/2}}yLabel=y+offset;if(this.options.label){this.labelOffset=offset}this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}}]);return CircleImageBase}(_NodeBase3[\"default\"]);exports[\"default\"]=CircleImageBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var CubicBezierEdge=__webpack_require__(215)[\"default\"];var BezierEdgeDynamic=__webpack_require__(217)[\"default\"];var BezierEdgeStatic=__webpack_require__(218)[\"default\"];var StraightEdge=__webpack_require__(219)[\"default\"];var Edge=function(){function Edge(options,body,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Edge);if(body===undefined){throw new Error(\"No body provided\")}this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.id=undefined;this.fromId=undefined;this.toId=undefined;this.selected=false;this.hover=false;this.labelDirty=true;this.baseWidth=this.options.width;this.baseFontSize=this.options.font.size;this.from=undefined;this.to=undefined;this.edgeType=undefined;this.connected=false;this.labelModule=new Label(this.body,this.options,true);this.setOptions(options)}(0,_createClass3[\"default\"])(Edge,[{key:\"setOptions\",value:function setOptions(options){if(!options){return}Edge.parseOptions(this.options,options,true,this.globalOptions);if(options.id!==undefined){this.id=options.id}if(options.from!==undefined){this.fromId=options.from}if(options.to!==undefined){this.toId=options.to}if(options.title!==undefined){this.title=options.title}if(options.value!==undefined){options.value=parseFloat(options.value)}var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"edge\",pile);this.updateLabelModule(options);var dataChanged=this.updateEdgeType();this._setInteractionWidths();this.connect();if(options.hidden!==undefined||options.physics!==undefined){dataChanged=true}return dataChanged}},{key:\"getFormattingValues\",value:function getFormattingValues(){var toArrow=this.options.arrows.to===true||this.options.arrows.to.enabled===true;var fromArrow=this.options.arrows.from===true||this.options.arrows.from.enabled===true;var middleArrow=this.options.arrows.middle===true||this.options.arrows.middle.enabled===true;var inheritsColor=this.options.color.inherit;var values={toArrow:toArrow,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,middleArrow:middleArrow,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,fromArrow:fromArrow,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,arrowStrikethrough:this.options.arrowStrikethrough,color:inheritsColor?undefined:this.options.color.color,inheritsColor:inheritsColor,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){var selectedWidth=this.options.selectionWidth;if(typeof selectedWidth===\"function\"){values.width=selectedWidth(values.width)}else if(typeof selectedWidth===\"number\"){values.width+=selectedWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.highlight;values.shadow=this.options.shadow.enabled}else if(this.hover){var hoverWidth=this.options.hoverWidth;if(typeof hoverWidth===\"function\"){values.width=hoverWidth(values.width)}else if(typeof hoverWidth===\"number\"){values.width+=hoverWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.hover;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.color!==undefined){values.inheritsColor=false}if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled;values.width=Math.max(values.width,.3/this.body.view.scale)}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){var pile=[options,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateEdgeType\",value:function updateEdgeType(){var smooth=this.options.smooth;var dataChanged=false;var changeInType=true;if(this.edgeType!==undefined){if(this.edgeType instanceof BezierEdgeDynamic&&smooth.enabled===true&&smooth.type===\"dynamic\"||this.edgeType instanceof CubicBezierEdge&&smooth.enabled===true&&smooth.type===\"cubicBezier\"||this.edgeType instanceof BezierEdgeStatic&&smooth.enabled===true&&smooth.type!==\"dynamic\"&&smooth.type!==\"cubicBezier\"||this.edgeType instanceof StraightEdge&&smooth.type.enabled===false){changeInType=false}if(changeInType===true){dataChanged=this.cleanup()}}if(changeInType===true){if(smooth.enabled===true){if(smooth.type===\"dynamic\"){dataChanged=true;this.edgeType=new BezierEdgeDynamic(this.options,this.body,this.labelModule)}else if(smooth.type===\"cubicBezier\"){this.edgeType=new CubicBezierEdge(this.options,this.body,this.labelModule)}else{this.edgeType=new BezierEdgeStatic(this.options,this.body,this.labelModule)}}else{this.edgeType=new StraightEdge(this.options,this.body,this.labelModule)}}else{this.edgeType.setOptions(this.options)}return dataChanged}},{key:\"connect\",value:function connect(){this.disconnect();this.from=this.body.nodes[this.fromId]||undefined;this.to=this.body.nodes[this.toId]||undefined;this.connected=this.from!==undefined&&this.to!==undefined;if(this.connected===true){this.from.attachEdge(this);this.to.attachEdge(this)}else{if(this.from){this.from.detachEdge(this)}if(this.to){this.to.detachEdge(this)}}this.edgeType.connect()}},{key:\"disconnect\",value:function disconnect(){if(this.from){this.from.detachEdge(this);this.from=undefined}if(this.to){this.to.detachEdge(this);this.to=undefined}this.connected=false}},{key:\"getTitle\",value:function getTitle(){return this.title}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var widthDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.width=this.options.scaling.min+scale*widthDiff}else{this.options.width=this.baseWidth;this.options.font.size=this.baseFontSize}this._setInteractionWidths();this.updateLabelModule()}},{key:\"_setInteractionWidths\",value:function _setInteractionWidths(){if(typeof this.options.hoverWidth===\"function\"){this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width)}else{this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width}if(typeof this.options.selectionWidth===\"function\"){this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width)}else{this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();if(values.hidden){return}var viaNode=this.edgeType.getViaNode();var arrowData={};this.edgeType.fromPoint=this.edgeType.from;this.edgeType.toPoint=this.edgeType.to;if(values.fromArrow){arrowData.from=this.edgeType.getArrowData(ctx,\"from\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.fromPoint=arrowData.from.core}if(values.toArrow){arrowData.to=this.edgeType.getArrowData(ctx,\"to\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.toPoint=arrowData.to.core}if(values.middleArrow){arrowData.middle=this.edgeType.getArrowData(ctx,\"middle\",viaNode,this.selected,this.hover,values)}this.edgeType.drawLine(ctx,values,this.selected,this.hover,viaNode);this.drawArrows(ctx,arrowData,values);this.drawLabel(ctx,viaNode)}},{key:\"drawArrows\",value:function drawArrows(ctx,arrowData,values){if(values.fromArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.from)}if(values.middleArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.middle)}if(values.toArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.to)}}},{key:\"drawLabel\",value:function drawLabel(ctx,viaNode){if(this.options.label!==undefined){var node1=this.from;var node2=this.to;if(this.labelModule.differentState(this.selected,this.hover)){this.labelModule.getTextSize(ctx,this.selected,this.hover)}if(node1.id!=node2.id){this.labelModule.pointToSelf=false;var point=this.edgeType.getPoint(.5,viaNode);ctx.save();var rotationPoint=this._getRotation(ctx);if(rotationPoint.angle!=0){ctx.translate(rotationPoint.x,rotationPoint.y);ctx.rotate(rotationPoint.angle)}this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover);ctx.restore()}else{this.labelModule.pointToSelf=true;var x,y;var radius=this.options.selfReferenceSize;if(node1.shape.width>node1.shape.height){x=node1.x+node1.shape.width*.5;y=node1.y-radius}else{x=node1.x+radius;y=node1.y-node1.shape.height*.5}point=this._pointOnCircle(x,y,radius,.125);this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover)}}}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){var rotationPoint=this._getRotation();if(ComponentUtil.pointInRect(this.labelModule.getSize(),point,rotationPoint)){ret.push({edgeId:this.id,labelId:0})}}var obj={left:point.x,top:point.y};if(this.isOverlappingWith(obj)){ret.push({edgeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){if(this.connected){var distMax=10;var xFrom=this.from.x;var yFrom=this.from.y;var xTo=this.to.x;var yTo=this.to.y;var xObj=obj.left;var yObj=obj.top;var dist=this.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,xObj,yObj);return dist<distMax}else{return false}}},{key:\"_getRotation\",value:function _getRotation(ctx){var viaNode=this.edgeType.getViaNode();var point=this.edgeType.getPoint(.5,viaNode);if(ctx!==undefined){this.labelModule.calculateLabelSize(ctx,this.selected,this.hover,point.x,point.y)}var ret={x:point.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()){return ret}if(this.options.font.align===\"horizontal\"){return ret}var dy=this.from.y-this.to.y;var dx=this.from.x-this.to.x;var angle=Math.atan2(dy,dx);if(angle<-1&&dx<0||angle>0&&dx<0){angle+=Math.PI}ret.angle=angle;return ret}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"select\",value:function select(){this.selected=true}},{key:\"unselect\",value:function unselect(){this.selected=false}},{key:\"cleanup\",value:function cleanup(){return this.edgeType.cleanup()}},{key:\"remove\",value:function remove(){this.cleanup();this.disconnect();delete this.body.edges[this.id]}},{key:\"endPointsValid\",value:function endPointsValid(){return this.body.nodes[this.fromId]!==undefined&&this.body.nodes[this.toId]!==undefined}}],[{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var copyFromGlobals=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var fields=[\"arrowStrikethrough\",\"id\",\"from\",\"hidden\",\"hoverWidth\",\"labelHighlightBold\",\"length\",\"line\",\"opacity\",\"physics\",\"scaling\",\"selectionWidth\",\"selfReferenceSize\",\"to\",\"title\",\"value\",\"width\",\"font\",\"chosen\",\"widthConstraint\"];util.selectiveDeepExtend(fields,parentOptions,newOptions,allowDeletion);if(ComponentUtil.isValidLabel(newOptions.label)){parentOptions.label=newOptions.label}else{parentOptions.label=undefined}util.mergeOptions(parentOptions,newOptions,\"smooth\",globalOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.dashes!==undefined&&newOptions.dashes!==null){parentOptions.dashes=newOptions.dashes}else if(allowDeletion===true&&newOptions.dashes===null){parentOptions.dashes=(0,_create2[\"default\"])(globalOptions.dashes)}if(newOptions.scaling!==undefined&&newOptions.scaling!==null){if(newOptions.scaling.min!==undefined){parentOptions.scaling.min=newOptions.scaling.min}if(newOptions.scaling.max!==undefined){parentOptions.scaling.max=newOptions.scaling.max}util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}else if(allowDeletion===true&&newOptions.scaling===null){parentOptions.scaling=(0,_create2[\"default\"])(globalOptions.scaling)}if(newOptions.arrows!==undefined&&newOptions.arrows!==null){if(typeof newOptions.arrows===\"string\"){var arrows=newOptions.arrows.toLowerCase();parentOptions.arrows.to.enabled=arrows.indexOf(\"to\")!=-1;parentOptions.arrows.middle.enabled=arrows.indexOf(\"middle\")!=-1;parentOptions.arrows.from.enabled=arrows.indexOf(\"from\")!=-1}else if((0,_typeof3[\"default\"])(newOptions.arrows)===\"object\"){util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"to\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"middle\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"from\",globalOptions.arrows)}else{throw new Error(\"The arrow newOptions can only be an object or a string. Refer to the documentation. You used:\"+(0,_stringify2[\"default\"])(newOptions.arrows))}}else if(allowDeletion===true&&newOptions.arrows===null){parentOptions.arrows=(0,_create2[\"default\"])(globalOptions.arrows)}if(newOptions.color!==undefined&&newOptions.color!==null){var fromColor=newOptions.color;var toColor=parentOptions.color;if(copyFromGlobals){util.deepExtend(toColor,globalOptions.color,false,allowDeletion)}else{for(var i in toColor){if(toColor.hasOwnProperty(i)){delete toColor[i]}}}if(util.isString(toColor)){toColor.color=toColor;toColor.highlight=toColor;toColor.hover=toColor;toColor.inherit=false;if(fromColor.opacity===undefined){toColor.opacity=1}}else{var colorsDefined=false;if(fromColor.color!==undefined){toColor.color=fromColor.color;colorsDefined=true}if(fromColor.highlight!==undefined){toColor.highlight=fromColor.highlight;colorsDefined=true}if(fromColor.hover!==undefined){toColor.hover=fromColor.hover;colorsDefined=true}if(fromColor.inherit!==undefined){toColor.inherit=fromColor.inherit}if(fromColor.opacity!==undefined){toColor.opacity=Math.min(1,Math.max(0,fromColor.opacity))}if(colorsDefined===true){toColor.inherit=false}else{if(toColor.inherit===undefined){toColor.inherit=\"from\"}}}}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}}}]);return Edge}();exports[\"default\"]=Edge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeBase=function(_EdgeBase){(0,_inherits3[\"default\"])(BezierEdgeBase,_EdgeBase);function BezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeBase,[{key:\"_findBorderPositionBezier\",value:function _findBorderPositionBezier(nearNode,ctx){var viaNode=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this._getViaCoordinates();var maxIterations=10;var iteration=0;var low=0;var high=1;var pos,angle,distanceToBorder,distanceToPoint,difference;var threshold=.2;var node=this.to;var from=false;if(nearNode.id===this.from.id){node=this.from;from=true}while(low<=high&&iteration<maxIterations){var middle=(low+high)*.5;pos=this.getPoint(middle,viaNode);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference<0){if(from===false){low=middle}else{high=middle}}else{if(from===false){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;for(i=1;i<10;i++){t=.1*i;x=Math.pow(1-t,2)*x1+2*t*(1-t)*via.x+Math.pow(t,2)*x2;y=Math.pow(1-t,2)*y1+2*t*(1-t)*via.y+Math.pow(t,2)*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}},{key:\"_bezierCurve\",value:function _bezierCurve(ctx,values,viaNode1,viaNode2){var hasNode1=viaNode1!==undefined&&viaNode1.x!==undefined;var hasNode2=viaNode2!==undefined&&viaNode2.x!==undefined;ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);if(hasNode1&&hasNode2){ctx.bezierCurveTo(viaNode1.x,viaNode1.y,viaNode2.x,viaNode2.y,this.toPoint.x,this.toPoint.y)}else if(hasNode1){ctx.quadraticCurveTo(viaNode1.x,viaNode1.y,this.toPoint.x,this.toPoint.y)}else{ctx.lineTo(this.toPoint.x,this.toPoint.y)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}}]);return BezierEdgeBase}(_EdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=function(){function NetworkUtil(){(0,_classCallCheck3[\"default\"])(this,NetworkUtil)}(0,_createClass3[\"default\"])(NetworkUtil,null,[{key:\"getRange\",value:function getRange(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.shape.boundingBox.left){minX=node.shape.boundingBox.left}if(maxX<node.shape.boundingBox.right){maxX=node.shape.boundingBox.right}if(minY>node.shape.boundingBox.top){minY=node.shape.boundingBox.top}if(maxY<node.shape.boundingBox.bottom){maxY=node.shape.boundingBox.bottom}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"getRangeCore\",value:function getRangeCore(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.x){minX=node.x}if(maxX<node.x){maxX=node.x}if(minY>node.y){minY=node.y}if(maxY<node.y){maxY=node.y}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"findCenter\",value:function findCenter(range){return{x:.5*(range.maxX+range.minX),y:.5*(range.maxY+range.minY)}}},{key:\"cloneOptions\",value:function cloneOptions(item,type){var clonedOptions={};if(type===undefined||type===\"node\"){util.deepExtend(clonedOptions,item.options,true);clonedOptions.x=item.x;clonedOptions.y=item.y;clonedOptions.amountOfConnections=item.edges.length}else{util.deepExtend(clonedOptions,item.options,true)}return clonedOptions}}]);return NetworkUtil}();exports[\"default\"]=NetworkUtil},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(124),__esModule:true}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(it){return cof(it)==\"String\"?it.split(\"\"):Object(it)}},function(module,exports,__webpack_require__){\"use strict\";var LIBRARY=__webpack_require__(52);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var hide=__webpack_require__(26);var has=__webpack_require__(22);var Iterators=__webpack_require__(31);var $iterCreate=__webpack_require__(129);var setToStringTag=__webpack_require__(59);var getPrototypeOf=__webpack_require__(85);var ITERATOR=__webpack_require__(13)(\"iterator\");var BUGGY=!([].keys&&\"next\"in[].keys())\n;var FF_ITERATOR=\"@@iterator\";var KEYS=\"keys\";var VALUES=\"values\";var returnThis=function(){return this};module.exports=function(Base,NAME,Constructor,next,DEFAULT,IS_SET,FORCED){$iterCreate(Constructor,NAME,next);var getMethod=function(kind){if(!BUGGY&&kind in proto)return proto[kind];switch(kind){case KEYS:return function keys(){return new Constructor(this,kind)};case VALUES:return function values(){return new Constructor(this,kind)}}return function entries(){return new Constructor(this,kind)}};var TAG=NAME+\" Iterator\";var DEF_VALUES=DEFAULT==VALUES;var VALUES_BUG=false;var proto=Base.prototype;var $native=proto[ITERATOR]||proto[FF_ITERATOR]||DEFAULT&&proto[DEFAULT];var $default=$native||getMethod(DEFAULT);var $entries=DEFAULT?!DEF_VALUES?$default:getMethod(\"entries\"):undefined;var $anyNative=NAME==\"Array\"?proto.entries||$native:$native;var methods,key,IteratorPrototype;if($anyNative){IteratorPrototype=getPrototypeOf($anyNative.call(new Base));if(IteratorPrototype!==Object.prototype&&IteratorPrototype.next){setToStringTag(IteratorPrototype,TAG,true);if(!LIBRARY&&!has(IteratorPrototype,ITERATOR))hide(IteratorPrototype,ITERATOR,returnThis)}}if(DEF_VALUES&&$native&&$native.name!==VALUES){VALUES_BUG=true;$default=function values(){return $native.call(this)}}if((!LIBRARY||FORCED)&&(BUGGY||VALUES_BUG||!proto[ITERATOR])){hide(proto,ITERATOR,$default)}Iterators[NAME]=$default;Iterators[TAG]=returnThis;if(DEFAULT){methods={values:DEF_VALUES?$default:getMethod(VALUES),keys:IS_SET?$default:getMethod(KEYS),entries:$entries};if(FORCED)for(key in methods){if(!(key in proto))redefine(proto,key,methods[key])}else $export($export.P+$export.F*(BUGGY||VALUES_BUG),NAME,methods)}return methods}},function(module,exports,__webpack_require__){var aFunction=__webpack_require__(128);module.exports=function(fn,that,length){aFunction(fn);if(that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(21)&&!__webpack_require__(28)(function(){return Object.defineProperty(__webpack_require__(82)(\"div\"),\"a\",{get:function(){return 7}}).a!=7})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var document=__webpack_require__(18).document;var is=isObject(document)&&isObject(document.createElement);module.exports=function(it){return is?document.createElement(it):{}}},function(module,exports,__webpack_require__){module.exports=__webpack_require__(26)},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toIObject=__webpack_require__(25);var arrayIndexOf=__webpack_require__(131)(false);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");module.exports=function(object,names){var O=toIObject(object);var i=0;var result=[];var key;for(key in O)if(key!=IE_PROTO)has(O,key)&&result.push(key);while(names.length>i)if(has(O,key=names[i++])){~arrayIndexOf(result,key)||result.push(key)}return result}},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toObject=__webpack_require__(41);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");var ObjectProto=Object.prototype;module.exports=Object.getPrototypeOf||function(O){O=toObject(O);if(has(O,IE_PROTO))return O[IE_PROTO];if(typeof O.constructor==\"function\"&&O instanceof O.constructor){return O.constructor.prototype}return O instanceof Object?ObjectProto:null}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);var TAG=__webpack_require__(13)(\"toStringTag\");var ARG=cof(function(){return arguments}())==\"Arguments\";var tryGet=function(it,key){try{return it[key]}catch(e){}};module.exports=function(it){var O,T,B;return it===undefined?\"Undefined\":it===null?\"Null\":typeof(T=tryGet(O=Object(it),TAG))==\"string\"?T:ARG?cof(O):(B=cof(O))==\"Object\"&&typeof O.callee==\"function\"?\"Arguments\":B}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);var core=__webpack_require__(7);var fails=__webpack_require__(28);module.exports=function(KEY,exec){var fn=(core.Object||{})[KEY]||Object[KEY];var exp={};exp[KEY]=exec(fn);$export($export.S+$export.F*fails(function(){fn(1)}),\"Object\",exp)}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var hiddenKeys=__webpack_require__(58).concat(\"length\",\"prototype\");exports.f=Object.getOwnPropertyNames||function getOwnPropertyNames(O){return $keys(O,hiddenKeys)}},function(module,exports,__webpack_require__){var pIE=__webpack_require__(42);var createDesc=__webpack_require__(39);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var has=__webpack_require__(22);var IE8_DOM_DEFINE=__webpack_require__(81);var gOPD=Object.getOwnPropertyDescriptor;exports.f=__webpack_require__(21)?gOPD:function getOwnPropertyDescriptor(O,P){O=toIObject(O);P=toPrimitive(P,true);if(IE8_DOM_DEFINE)try{return gOPD(O,P)}catch(e){}if(has(O,P))return createDesc(!pIE.f.call(O,P),O[P])}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(162),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";function Point2d(x,y){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0}module.exports=Point2d},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Slider(container,options){if(container===undefined){throw new Error(\"No container element defined\")}this.container=container;this.visible=options&&options.visible!=undefined?options.visible:true;if(this.visible){this.frame=document.createElement(\"DIV\");this.frame.style.width=\"100%\";this.frame.style.position=\"relative\";this.container.appendChild(this.frame);this.frame.prev=document.createElement(\"INPUT\");this.frame.prev.type=\"BUTTON\";this.frame.prev.value=\"Prev\";this.frame.appendChild(this.frame.prev);this.frame.play=document.createElement(\"INPUT\");this.frame.play.type=\"BUTTON\";this.frame.play.value=\"Play\";this.frame.appendChild(this.frame.play);this.frame.next=document.createElement(\"INPUT\");this.frame.next.type=\"BUTTON\";this.frame.next.value=\"Next\";this.frame.appendChild(this.frame.next);this.frame.bar=document.createElement(\"INPUT\");this.frame.bar.type=\"BUTTON\";this.frame.bar.style.position=\"absolute\";this.frame.bar.style.border=\"1px solid red\";this.frame.bar.style.width=\"100px\";this.frame.bar.style.height=\"6px\";this.frame.bar.style.borderRadius=\"2px\";this.frame.bar.style.MozBorderRadius=\"2px\";this.frame.bar.style.border=\"1px solid #7F7F7F\";this.frame.bar.style.backgroundColor=\"#E5E5E5\";this.frame.appendChild(this.frame.bar);this.frame.slide=document.createElement(\"INPUT\");this.frame.slide.type=\"BUTTON\";this.frame.slide.style.margin=\"0px\";this.frame.slide.value=\" \";this.frame.slide.style.position=\"relative\";this.frame.slide.style.left=\"-100px\";this.frame.appendChild(this.frame.slide);var me=this;this.frame.slide.onmousedown=function(event){me._onMouseDown(event)};this.frame.prev.onclick=function(event){me.prev(event)};this.frame.play.onclick=function(event){me.togglePlay(event)};this.frame.next.onclick=function(event){me.next(event)}}this.onChangeCallback=undefined;this.values=[];this.index=undefined;this.playTimeout=undefined;this.playInterval=1e3;this.playLoop=true}Slider.prototype.prev=function(){var index=this.getIndex();if(index>0){index--;this.setIndex(index)}};Slider.prototype.next=function(){var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}};Slider.prototype.playNext=function(){var start=new Date;var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}else if(this.playLoop){index=0;this.setIndex(index)}var end=new Date;var diff=end-start;var interval=Math.max(this.playInterval-diff,0);var me=this;this.playTimeout=setTimeout(function(){me.playNext()},interval)};Slider.prototype.togglePlay=function(){if(this.playTimeout===undefined){this.play()}else{this.stop()}};Slider.prototype.play=function(){if(this.playTimeout)return;this.playNext();if(this.frame){this.frame.play.value=\"Stop\"}};Slider.prototype.stop=function(){clearInterval(this.playTimeout);this.playTimeout=undefined;if(this.frame){this.frame.play.value=\"Play\"}};Slider.prototype.setOnChangeCallback=function(callback){this.onChangeCallback=callback};Slider.prototype.setPlayInterval=function(interval){this.playInterval=interval};Slider.prototype.getPlayInterval=function(){return this.playInterval};Slider.prototype.setPlayLoop=function(doLoop){this.playLoop=doLoop};Slider.prototype.onChange=function(){if(this.onChangeCallback!==undefined){this.onChangeCallback()}};Slider.prototype.redraw=function(){if(this.frame){this.frame.bar.style.top=this.frame.clientHeight/2-this.frame.bar.offsetHeight/2+\"px\";this.frame.bar.style.width=this.frame.clientWidth-this.frame.prev.clientWidth-this.frame.play.clientWidth-this.frame.next.clientWidth-30+\"px\";var left=this.indexToLeft(this.index);this.frame.slide.style.left=left+\"px\"}};Slider.prototype.setValues=function(values){this.values=values;if(this.values.length>0)this.setIndex(0);else this.index=undefined};Slider.prototype.setIndex=function(index){if(index<this.values.length){this.index=index;this.redraw();this.onChange()}else{throw new Error(\"Index out of range\")}};Slider.prototype.getIndex=function(){return this.index};Slider.prototype.get=function(){return this.values[this.index]};Slider.prototype._onMouseDown=function(event){var leftButtonDown=event.which?event.which===1:event.button===1;if(!leftButtonDown)return;this.startClientX=event.clientX;this.startSlideX=parseFloat(this.frame.slide.style.left);this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",this.onmousemove);util.addEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Slider.prototype.leftToIndex=function(left){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=left-3;var index=Math.round(x/width*(this.values.length-1));if(index<0)index=0;if(index>this.values.length-1)index=this.values.length-1;return index};Slider.prototype.indexToLeft=function(index){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=index/(this.values.length-1)*width;var left=x+3;return left};Slider.prototype._onMouseMove=function(event){var diff=event.clientX-this.startClientX;var x=this.startSlideX+diff;var index=this.leftToIndex(x);this.setIndex(index);util.preventDefault()};Slider.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault()};module.exports=Slider},function(module,exports,__webpack_require__){\"use strict\";function StepNumber(start,end,step,prettyStep){this._start=0;this._end=0;this._step=1;this.prettyStep=true;this.precision=5;this._current=0;this.setRange(start,end,step,prettyStep)}StepNumber.prototype.isNumeric=function(n){return!isNaN(parseFloat(n))&&isFinite(n)};StepNumber.prototype.setRange=function(start,end,step,prettyStep){if(!this.isNumeric(start)){throw new Error(\"Parameter 'start' is not numeric; value: \"+start)}if(!this.isNumeric(end)){throw new Error(\"Parameter 'end' is not numeric; value: \"+start)}if(!this.isNumeric(step)){throw new Error(\"Parameter 'step' is not numeric; value: \"+start)}this._start=start?start:0;this._end=end?end:0;this.setStep(step,prettyStep)};StepNumber.prototype.setStep=function(step,prettyStep){if(step===undefined||step<=0)return;if(prettyStep!==undefined)this.prettyStep=prettyStep;if(this.prettyStep===true)this._step=StepNumber.calculatePrettyStep(step);else this._step=step};StepNumber.calculatePrettyStep=function(step){var log10=function log10(x){return Math.log(x)/Math.LN10};var step1=Math.pow(10,Math.round(log10(step))),step2=2*Math.pow(10,Math.round(log10(step/2))),step5=5*Math.pow(10,Math.round(log10(step/5)));var prettyStep=step1;if(Math.abs(step2-step)<=Math.abs(prettyStep-step))prettyStep=step2;if(Math.abs(step5-step)<=Math.abs(prettyStep-step))prettyStep=step5;if(prettyStep<=0){prettyStep=1}return prettyStep};StepNumber.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))};StepNumber.prototype.getStep=function(){return this._step};StepNumber.prototype.start=function(checkFirst){if(checkFirst===undefined){checkFirst=false}this._current=this._start-this._start%this._step;if(checkFirst){if(this.getCurrent()<this._start){this.next()}}};StepNumber.prototype.next=function(){this._current+=this._step};StepNumber.prototype.end=function(){return this._current>this._end};module.exports=StepNumber},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Camera=__webpack_require__(95);var Point3d=__webpack_require__(34);var STYLE={BAR:0,BARCOLOR:1,BARSIZE:2,DOT:3,DOTLINE:4,DOTCOLOR:5,DOTSIZE:6,GRID:7,LINE:8,SURFACE:9};var STYLENAME={dot:STYLE.DOT,\"dot-line\":STYLE.DOTLINE,\"dot-color\":STYLE.DOTCOLOR,\"dot-size\":STYLE.DOTSIZE,line:STYLE.LINE,grid:STYLE.GRID,surface:STYLE.SURFACE,bar:STYLE.BAR,\"bar-color\":STYLE.BARCOLOR,\"bar-size\":STYLE.BARSIZE};var OPTIONKEYS=[\"width\",\"height\",\"filterLabel\",\"legendLabel\",\"xLabel\",\"yLabel\",\"zLabel\",\"xValueLabel\",\"yValueLabel\",\"zValueLabel\",\"showXAxis\",\"showYAxis\",\"showZAxis\",\"showGrid\",\"showPerspective\",\"showShadow\",\"keepAspectRatio\",\"verticalRatio\",\"dotSizeRatio\",\"dotSizeMinFraction\",\"dotSizeMaxFraction\",\"showAnimationControls\",\"animationInterval\",\"animationPreload\",\"animationAutoStart\",\"axisColor\",\"gridColor\",\"xCenter\",\"yCenter\"];var PREFIXEDOPTIONKEYS=[\"xBarWidth\",\"yBarWidth\",\"valueMin\",\"valueMax\",\"xMin\",\"xMax\",\"xStep\",\"yMin\",\"yMax\",\"yStep\",\"zMin\",\"zMax\",\"zStep\"];var DEFAULTS=undefined;function isEmpty(obj){for(var prop in obj){if(obj.hasOwnProperty(prop))return false}return true}function capitalize(str){if(str===undefined||str===\"\"||typeof str!=\"string\"){return str}return str.charAt(0).toUpperCase()+str.slice(1)}function prefixFieldName(prefix,fieldName){if(prefix===undefined||prefix===\"\"){return fieldName}return prefix+capitalize(fieldName)}function forceCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function safeCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];if(src[srcKey]===undefined)continue;dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function setDefaults(src,dst){if(src===undefined||isEmpty(src)){throw new Error(\"No DEFAULTS passed\")}if(dst===undefined){throw new Error(\"No dst passed\")}DEFAULTS=src;forceCopy(src,dst,OPTIONKEYS);forceCopy(src,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(src,dst);dst.margin=10;dst.showGrayBottom=false;dst.showTooltip=false;dst.onclick_callback=null;dst.eye=new Point3d(0,0,-1)}function setOptions(options,dst){if(options===undefined){return}if(dst===undefined){throw new Error(\"No dst passed\")}if(DEFAULTS===undefined||isEmpty(DEFAULTS)){throw new Error(\"DEFAULTS not set for module Settings\")}safeCopy(options,dst,OPTIONKEYS);safeCopy(options,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(options,dst)}function setSpecialSettings(src,dst){if(src.backgroundColor!==undefined){setBackgroundColor(src.backgroundColor,dst)}setDataColor(src.dataColor,dst);setStyle(src.style,dst);setShowLegend(src.showLegend,dst);setCameraPosition(src.cameraPosition,dst);if(src.tooltip!==undefined){dst.showTooltip=src.tooltip}if(src.onclick!=undefined){dst.onclick_callback=src.onclick}if(src.tooltipStyle!==undefined){util.selectiveDeepExtend([\"tooltipStyle\"],dst,src)}}function setShowLegend(showLegend,dst){if(showLegend===undefined){var isAutoByDefault=DEFAULTS.showLegend===undefined;if(isAutoByDefault){var isLegendGraphStyle=dst.style===STYLE.DOTCOLOR||dst.style===STYLE.DOTSIZE;dst.showLegend=isLegendGraphStyle}else{}}else{dst.showLegend=showLegend}}function getStyleNumberByName(styleName){var number=STYLENAME[styleName];if(number===undefined){return-1}return number}function checkStyleNumber(style){var valid=false;for(var n in STYLE){if(STYLE[n]===style){valid=true;break}}return valid}function setStyle(style,dst){if(style===undefined){return}var styleNumber;if(typeof style===\"string\"){styleNumber=getStyleNumberByName(style);if(styleNumber===-1){throw new Error(\"Style '\"+style+\"' is invalid\")}}else{if(!checkStyleNumber(style)){throw new Error(\"Style '\"+style+\"' is invalid\")}styleNumber=style}dst.style=styleNumber}function setBackgroundColor(backgroundColor,dst){var fill=\"white\";var stroke=\"gray\";var strokeWidth=1;if(typeof backgroundColor===\"string\"){fill=backgroundColor;stroke=\"none\";strokeWidth=0}else if((typeof backgroundColor===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(backgroundColor))===\"object\"){if(backgroundColor.fill!==undefined)fill=backgroundColor.fill;if(backgroundColor.stroke!==undefined)stroke=backgroundColor.stroke;if(backgroundColor.strokeWidth!==undefined)strokeWidth=backgroundColor.strokeWidth}else{throw new Error(\"Unsupported type of backgroundColor\")}dst.frame.style.backgroundColor=fill;dst.frame.style.borderColor=stroke;dst.frame.style.borderWidth=strokeWidth+\"px\";dst.frame.style.borderStyle=\"solid\"}function setDataColor(dataColor,dst){if(dataColor===undefined){return}if(dst.dataColor===undefined){dst.dataColor={}}if(typeof dataColor===\"string\"){dst.dataColor.fill=dataColor;dst.dataColor.stroke=dataColor}else{if(dataColor.fill){dst.dataColor.fill=dataColor.fill}if(dataColor.stroke){dst.dataColor.stroke=dataColor.stroke}if(dataColor.strokeWidth!==undefined){dst.dataColor.strokeWidth=dataColor.strokeWidth}}}function setCameraPosition(cameraPosition,dst){var camPos=cameraPosition;if(camPos===undefined){return}if(dst.camera===undefined){dst.camera=new Camera}dst.camera.setArmRotation(camPos.horizontal,camPos.vertical);dst.camera.setArmLength(camPos.distance)}module.exports.STYLE=STYLE;module.exports.setDefaults=setDefaults;module.exports.setOptions=setOptions;module.exports.setCameraPosition=setCameraPosition},function(module,exports,__webpack_require__){\"use strict\";var _sign=__webpack_require__(165);var _sign2=_interopRequireDefault(_sign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Point3d=__webpack_require__(34);function Camera(){this.armLocation=new Point3d;this.armRotation={};this.armRotation.horizontal=0;this.armRotation.vertical=0;this.armLength=1.7;this.cameraOffset=new Point3d;this.offsetMultiplier=.6;this.cameraLocation=new Point3d;this.cameraRotation=new Point3d(.5*Math.PI,0,0);this.calculateCameraOrientation()}Camera.prototype.setOffset=function(x,y){var abs=Math.abs,sign=_sign2[\"default\"],mul=this.offsetMultiplier,border=this.armLength*mul;if(abs(x)>border){x=sign(x)*border}if(abs(y)>border){y=sign(y)*border}this.cameraOffset.x=x;this.cameraOffset.y=y;this.calculateCameraOrientation()};Camera.prototype.getOffset=function(){return this.cameraOffset};Camera.prototype.setArmLocation=function(x,y,z){this.armLocation.x=x;this.armLocation.y=y;this.armLocation.z=z;this.calculateCameraOrientation()};Camera.prototype.setArmRotation=function(horizontal,vertical){if(horizontal!==undefined){this.armRotation.horizontal=horizontal}if(vertical!==undefined){this.armRotation.vertical=vertical;if(this.armRotation.vertical<0)this.armRotation.vertical=0;if(this.armRotation.vertical>.5*Math.PI)this.armRotation.vertical=.5*Math.PI}if(horizontal!==undefined||vertical!==undefined){this.calculateCameraOrientation()}};Camera.prototype.getArmRotation=function(){var rot={};rot.horizontal=this.armRotation.horizontal;rot.vertical=this.armRotation.vertical;return rot};Camera.prototype.setArmLength=function(length){if(length===undefined)return;this.armLength=length;if(this.armLength<.71)this.armLength=.71;if(this.armLength>5)this.armLength=5;this.setOffset(this.cameraOffset.x,this.cameraOffset.y);this.calculateCameraOrientation()};Camera.prototype.getArmLength=function(){return this.armLength};Camera.prototype.getCameraLocation=function(){return this.cameraLocation};Camera.prototype.getCameraRotation=function(){return this.cameraRotation};Camera.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical);this.cameraRotation.x=Math.PI/2-this.armRotation.vertical;this.cameraRotation.y=0;this.cameraRotation.z=-this.armRotation.horizontal;var xa=this.cameraRotation.x;var za=this.cameraRotation.z;var dx=this.cameraOffset.x;var dy=this.cameraOffset.y;var sin=Math.sin,cos=Math.cos;this.cameraLocation.x=this.cameraLocation.x+dx*cos(za)+dy*-sin(za)*cos(xa);this.cameraLocation.y=this.cameraLocation.y+dx*sin(za)+dy*cos(za)*cos(xa);this.cameraLocation.z=this.cameraLocation.z+dy*sin(xa)};module.exports=Camera},function(module,exports,__webpack_require__){\"use strict\";var DataView=__webpack_require__(12);function Filter(dataGroup,column,graph){this.dataGroup=dataGroup;this.column=column;this.graph=graph;this.index=undefined;this.value=undefined;this.values=dataGroup.getDistinctValues(this.column);if(this.values.length>0){this.selectValue(0)}this.dataPoints=[];this.loaded=false;this.onLoadCallback=undefined;if(graph.animationPreload){this.loaded=false;this.loadInBackground()}else{this.loaded=true}}Filter.prototype.isLoaded=function(){return this.loaded};Filter.prototype.getLoadedProgress=function(){var len=this.values.length;var i=0;while(this.dataPoints[i]){i++}return Math.round(i/len*100)};Filter.prototype.getLabel=function(){return this.graph.filterLabel};Filter.prototype.getColumn=function(){return this.column};Filter.prototype.getSelectedValue=function(){if(this.index===undefined)return undefined;return this.values[this.index]};Filter.prototype.getValues=function(){return this.values};Filter.prototype.getValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");return this.values[index]};Filter.prototype._getDataPoints=function(index){if(index===undefined)index=this.index;if(index===undefined)return[];var dataPoints;if(this.dataPoints[index]){dataPoints=this.dataPoints[index]}else{var f={};f.column=this.column;f.value=this.values[index];var dataView=new DataView(this.dataGroup.getDataSet(),{filter:function filter(item){return item[f.column]==f.value}}).get();dataPoints=this.dataGroup._getDataPoints(dataView);this.dataPoints[index]=dataPoints}return dataPoints};Filter.prototype.setOnLoadCallback=function(callback){this.onLoadCallback=callback};Filter.prototype.selectValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");this.index=index;this.value=this.values[index]};Filter.prototype.loadInBackground=function(index){if(index===undefined)index=0;var frame=this.graph.frame;if(index<this.values.length){if(frame.progress===undefined){frame.progress=document.createElement(\"DIV\");frame.progress.style.position=\"absolute\";frame.progress.style.color=\"gray\";frame.appendChild(frame.progress)}var progress=this.getLoadedProgress();frame.progress.innerHTML=\"Loading animation... \"+progress+\"%\";frame.progress.style.bottom=60+\"px\";frame.progress.style.left=10+\"px\";var me=this;setTimeout(function(){me.loadInBackground(index+1)},10);this.loaded=false}else{this.loaded=true;if(frame.progress!==undefined){frame.removeChild(frame.progress);frame.progress=undefined}if(this.onLoadCallback)this.onLoadCallback()}};module.exports=Filter},function(module,exports,__webpack_require__){\"use strict\";var keycharm=__webpack_require__(35);var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var util=__webpack_require__(2);function Activator(container){this.active=false;this.dom={container:container};this.dom.overlay=document.createElement(\"div\");this.dom.overlay.className=\"vis-overlay\";this.dom.container.appendChild(this.dom.overlay);this.hammer=Hammer(this.dom.overlay);this.hammer.on(\"tap\",this._onTapOverlay.bind(this));var me=this;var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(event){me.hammer.on(event,function(event){event.stopPropagation()})});if(document&&document.body){this.onClick=function(event){if(!_hasParent(event.target,container)){me.deactivate()}};document.body.addEventListener(\"click\",this.onClick)}if(this.keycharm!==undefined){this.keycharm.destroy()}this.keycharm=keycharm();this.escListener=this.deactivate.bind(this)}Emitter(Activator.prototype);Activator.current=null;Activator.prototype.destroy=function(){this.deactivate();this.dom.overlay.parentNode.removeChild(this.dom.overlay);if(this.onClick){document.body.removeEventListener(\"click\",this.onClick)}this.hammer.destroy();this.hammer=null};Activator.prototype.activate=function(){if(Activator.current){Activator.current.deactivate()}Activator.current=this;this.active=true;this.dom.overlay.style.display=\"none\";util.addClassName(this.dom.container,\"vis-active\");this.emit(\"change\");this.emit(\"activate\");this.keycharm.bind(\"esc\",this.escListener)};Activator.prototype.deactivate=function(){this.active=false;this.dom.overlay.style.display=\"\";util.removeClassName(this.dom.container,\"vis-active\");this.keycharm.unbind(\"esc\",this.escListener);this.emit(\"change\");this.emit(\"deactivate\")};Activator.prototype._onTapOverlay=function(event){this.activate();event.stopPropagation()};function _hasParent(element,parent){while(element){if(element===parent){return true}element=element.parentNode}return false}module.exports=Activator},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={current:\"current\",time:\"time\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"it\"]={current:\"attuale\",time:\"tempo\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"it_CH\"]=exports[\"it\"];exports[\"nl\"]={current:\"huidige\",time:\"tijd\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"de\"]={current:\"Aktuelle\",time:\"Zeit\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"fr\"]={current:\"actuel\",time:\"heure\"};exports[\"fr_FR\"]=exports[\"fr\"];exports[\"fr_CA\"]=exports[\"fr\"];exports[\"fr_BE\"]=exports[\"fr\"];exports[\"es\"]={current:\"corriente\",time:\"hora\"};exports[\"es_ES\"]=exports[\"es\"]},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var TimeStep=__webpack_require__(66);var Component=__webpack_require__(16);var Group=__webpack_require__(68);var BackgroundGroup=__webpack_require__(69);var BoxItem=__webpack_require__(101);var PointItem=__webpack_require__(102);var RangeItem=__webpack_require__(70);var BackgroundItem=__webpack_require__(103);var Popup=__webpack_require__(104)[\"default\"];var UNGROUPED=\"__ungrouped__\";var BACKGROUND=\"__background__\";function ItemSet(body,options){this.body=body;this.defaultOptions={type:null,orientation:{item:\"bottom\"},align:\"auto\",stack:true,stackSubgroups:true,groupOrderSwap:function groupOrderSwap(fromGroup,toGroup,groups){var targetOrder=toGroup.order;toGroup.order=fromGroup.order;fromGroup.order=targetOrder},groupOrder:\"order\",selectable:true,multiselect:false,itemsAlwaysDraggable:{item:false,range:false},editable:{updateTime:false,updateGroup:false,add:false,remove:false,overrideItems:false},groupEditable:{order:false,add:false,remove:false},snap:TimeStep.snap,onDropObjectOnItem:function onDropObjectOnItem(objectData,item,callback){callback(item)},onAdd:function onAdd(item,callback){callback(item)},onUpdate:function onUpdate(item,callback){callback(item)},onMove:function onMove(item,callback){callback(item)},onRemove:function onRemove(item,callback){callback(item)},onMoving:function onMoving(item,callback){callback(item)},onAddGroup:function onAddGroup(item,callback){callback(item)},onMoveGroup:function onMoveGroup(item,callback){callback(item)},onRemoveGroup:function onRemoveGroup(item,callback){callback(item)},margin:{item:{horizontal:10,vertical:10},axis:20},showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false};this.options=util.extend({},this.defaultOptions);this.options.rtl=options.rtl;this.itemOptions={type:{start:\"Date\",end:\"Date\"}};this.conversion={toScreen:body.util.toScreen,toTime:body.util.toTime};this.dom={};this.props={};this.hammer=null;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items);if(me.groupsData&&me.groupsData.length>0){var groupsData=me.groupsData.getDataSet();groupsData.get().forEach(function(groupData){if(groupData.nestedGroups){if(groupData.showNested!=false){groupData.showNested=true}var updatedGroups=[];groupData.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);if(!updatedNestedGroup){return}updatedNestedGroup.nestedInGroup=groupData.id;if(groupData.showNested==false){updatedNestedGroup.visible=false}updatedGroups=updatedGroups.concat(updatedNestedGroup)});groupsData.update(updatedGroups,senderId)}})}},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.groups={};this.groupIds=[];this.selection=[];this.popup=null;this.touchParams={};this.groupTouchParams={};this._create();this.setOptions(options)}ItemSet.prototype=new Component;ItemSet.types={background:BackgroundItem,box:BoxItem,range:RangeItem,point:PointItem};ItemSet.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-itemset\";frame[\"timeline-itemset\"]=this;this.dom.frame=frame;var background=document.createElement(\"div\");background.className=\"vis-background\";frame.appendChild(background);this.dom.background=background;var foreground=document.createElement(\"div\");foreground.className=\"vis-foreground\";frame.appendChild(foreground);this.dom.foreground=foreground;var axis=document.createElement(\"div\");axis.className=\"vis-axis\";this.dom.axis=axis;var labelSet=document.createElement(\"div\");labelSet.className=\"vis-labelset\";this.dom.labelSet=labelSet;this._updateUngrouped();var backgroundGroup=new BackgroundGroup(BACKGROUND,null,this);backgroundGroup.show();this.groups[BACKGROUND]=backgroundGroup;this.hammer=new Hammer(this.body.dom.centerContainer);this.hammer.on(\"hammer.input\",function(event){if(event.isFirst){this._onTouch(event)}}.bind(this));this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.hammer.on(\"tap\",this._onSelectItem.bind(this));this.hammer.on(\"press\",this._onMultiSelectItem.bind(this));this.hammer.on(\"doubletap\",this._onAddItem.bind(this));if(this.options.rtl){\nthis.groupHammer=new Hammer(this.body.dom.rightContainer)}else{this.groupHammer=new Hammer(this.body.dom.leftContainer)}this.groupHammer.on(\"tap\",this._onGroupClick.bind(this));this.groupHammer.on(\"panstart\",this._onGroupDragStart.bind(this));this.groupHammer.on(\"panmove\",this._onGroupDrag.bind(this));this.groupHammer.on(\"panend\",this._onGroupDragEnd.bind(this));this.groupHammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_VERTICAL});this.body.dom.centerContainer.addEventListener(\"mouseover\",this._onMouseOver.bind(this));this.body.dom.centerContainer.addEventListener(\"mouseout\",this._onMouseOut.bind(this));this.body.dom.centerContainer.addEventListener(\"mousemove\",this._onMouseMove.bind(this));this.body.dom.centerContainer.addEventListener(\"contextmenu\",this._onDragEnd.bind(this));this.body.dom.centerContainer.addEventListener(\"mousewheel\",this._onMouseWheel.bind(this));this.show()};ItemSet.prototype.setOptions=function(options){if(options){var fields=[\"type\",\"rtl\",\"align\",\"order\",\"stack\",\"stackSubgroups\",\"selectable\",\"multiselect\",\"multiselectPerGroup\",\"groupOrder\",\"dataAttributes\",\"template\",\"groupTemplate\",\"visibleFrameTemplate\",\"hide\",\"snap\",\"groupOrderSwap\",\"showTooltips\",\"tooltip\",\"tooltipOnItemUpdateTime\"];util.selectiveExtend(fields,this.options,options);if(\"itemsAlwaysDraggable\"in options){if(typeof options.itemsAlwaysDraggable===\"boolean\"){this.options.itemsAlwaysDraggable.item=options.itemsAlwaysDraggable;this.options.itemsAlwaysDraggable.range=false}else if((0,_typeof3[\"default\"])(options.itemsAlwaysDraggable)===\"object\"){util.selectiveExtend([\"item\",\"range\"],this.options.itemsAlwaysDraggable,options.itemsAlwaysDraggable);if(!this.options.itemsAlwaysDraggable.item){this.options.itemsAlwaysDraggable.range=false}}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.item=options.orientation===\"top\"?\"top\":\"bottom\"}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}}if(\"margin\"in options){if(typeof options.margin===\"number\"){this.options.margin.axis=options.margin;this.options.margin.item.horizontal=options.margin;this.options.margin.item.vertical=options.margin}else if((0,_typeof3[\"default\"])(options.margin)===\"object\"){util.selectiveExtend([\"axis\"],this.options.margin,options.margin);if(\"item\"in options.margin){if(typeof options.margin.item===\"number\"){this.options.margin.item.horizontal=options.margin.item;this.options.margin.item.vertical=options.margin.item}else if((0,_typeof3[\"default\"])(options.margin.item)===\"object\"){util.selectiveExtend([\"horizontal\",\"vertical\"],this.options.margin.item,options.margin.item)}}}}if(\"editable\"in options){if(typeof options.editable===\"boolean\"){this.options.editable.updateTime=options.editable;this.options.editable.updateGroup=options.editable;this.options.editable.add=options.editable;this.options.editable.remove=options.editable;this.options.editable.overrideItems=false}else if((0,_typeof3[\"default\"])(options.editable)===\"object\"){util.selectiveExtend([\"updateTime\",\"updateGroup\",\"add\",\"remove\",\"overrideItems\"],this.options.editable,options.editable)}}if(\"groupEditable\"in options){if(typeof options.groupEditable===\"boolean\"){this.options.groupEditable.order=options.groupEditable;this.options.groupEditable.add=options.groupEditable;this.options.groupEditable.remove=options.groupEditable}else if((0,_typeof3[\"default\"])(options.groupEditable)===\"object\"){util.selectiveExtend([\"order\",\"add\",\"remove\"],this.options.groupEditable,options.groupEditable)}}var addCallback=function(name){var fn=options[name];if(fn){if(!(fn instanceof Function)){throw new Error(\"option \"+name+\" must be a function \"+name+\"(item, callback)\")}this.options[name]=fn}}.bind(this);[\"onDropObjectOnItem\",\"onAdd\",\"onUpdate\",\"onRemove\",\"onMove\",\"onMoving\",\"onAddGroup\",\"onMoveGroup\",\"onRemoveGroup\"].forEach(addCallback);this.markDirty()}};ItemSet.prototype.markDirty=function(options){this.groupIds=[];if(options&&options.refreshItems){util.forEach(this.items,function(item){item.dirty=true;if(item.displayed)item.redraw()})}};ItemSet.prototype.destroy=function(){this.hide();this.setItems(null);this.setGroups(null);this.hammer=null;this.body=null;this.conversion=null};ItemSet.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.axis.parentNode){this.dom.axis.parentNode.removeChild(this.dom.axis)}if(this.dom.labelSet.parentNode){this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)}};ItemSet.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}if(!this.dom.axis.parentNode){this.body.dom.backgroundVertical.appendChild(this.dom.axis)}if(!this.dom.labelSet.parentNode){if(this.options.rtl){this.body.dom.right.appendChild(this.dom.labelSet)}else{this.body.dom.left.appendChild(this.dom.labelSet)}}};ItemSet.prototype.setSelection=function(ids){var i,ii,id,item;if(ids==undefined)ids=[];if(!Array.isArray(ids))ids=[ids];for(i=0,ii=this.selection.length;i<ii;i++){id=this.selection[i];item=this.items[id];if(item)item.unselect()}this.selection=[];for(i=0,ii=ids.length;i<ii;i++){id=ids[i];item=this.items[id];if(item){this.selection.push(id);item.select()}}};ItemSet.prototype.getSelection=function(){return this.selection.concat([])};ItemSet.prototype.getVisibleItems=function(){var range=this.body.range.getRange();var right,left;if(this.options.rtl){right=this.body.util.toScreen(range.start);left=this.body.util.toScreen(range.end)}else{left=this.body.util.toScreen(range.start);right=this.body.util.toScreen(range.end)}var ids=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];var rawVisibleItems=group.isVisible?group.visibleItems:[];for(var i=0;i<rawVisibleItems.length;i++){var item=rawVisibleItems[i];if(this.options.rtl){if(item.right<left&&item.right+item.width>right){ids.push(item.id)}}else{if(item.left<right&&item.left+item.width>left){ids.push(item.id)}}}}}return ids};ItemSet.prototype._deselect=function(id){var selection=this.selection;for(var i=0,ii=selection.length;i<ii;i++){if(selection[i]==id){selection.splice(i,1);break}}};ItemSet.prototype.redraw=function(){var margin=this.options.margin,range=this.body.range,asSize=util.option.asSize,options=this.options,orientation=options.orientation.item,resized=false,frame=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top;if(this.options.rtl){this.props.right=this.body.domProps.right.width+this.body.domProps.border.right}else{this.props.left=this.body.domProps.left.width+this.body.domProps.border.left}frame.className=\"vis-itemset\";resized=this._orderGroups()||resized;var visibleInterval=range.end-range.start;var zoomed=visibleInterval!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;var scrolled=range.start!=this.lastRangeStart;var changedStackOption=options.stack!=this.lastStack;var changedStackSubgroupsOption=options.stackSubgroups!=this.lastStackSubgroups;var forceRestack=zoomed||scrolled||changedStackOption||changedStackSubgroupsOption;this.lastVisibleInterval=visibleInterval;this.lastRangeStart=range.start;this.lastStack=options.stack;this.lastStackSubgroups=options.stackSubgroups;this.props.lastWidth=this.props.width;var firstGroup=this._firstGroup();var firstMargin={item:margin.item,axis:margin.axis};var nonFirstMargin={item:margin.item,axis:margin.item.vertical/2};var height=0;var minHeight=margin.axis+margin.item.vertical;this.groups[BACKGROUND].redraw(range,nonFirstMargin,forceRestack);var redrawQueue={};var redrawQueueLength=0;util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupMargin=group==firstGroup?firstMargin:nonFirstMargin;var returnQueue=true;redrawQueue[key]=group.redraw(range,groupMargin,forceRestack,returnQueue);redrawQueueLength=redrawQueue[key].length});var needRedraw=redrawQueueLength>0;if(needRedraw){var redrawResults={};for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns,key){redrawResults[key]=fns[i]()})}util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupResized=redrawResults[key];resized=groupResized||resized;height+=group.height});height=Math.max(height,minHeight)}height=Math.max(height,minHeight);frame.style.height=asSize(height);this.props.width=frame.offsetWidth;this.props.height=height;this.dom.axis.style.top=asSize(orientation==\"top\"?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height);if(this.options.rtl){this.dom.axis.style.right=\"0\"}else{this.dom.axis.style.left=\"0\"}this.initialItemSetDrawn=true;resized=this._isResized()||resized;return resized};ItemSet.prototype._firstGroup=function(){var firstGroupIndex=this.options.orientation.item==\"top\"?0:this.groupIds.length-1;var firstGroupId=this.groupIds[firstGroupIndex];var firstGroup=this.groups[firstGroupId]||this.groups[UNGROUPED];return firstGroup||null};ItemSet.prototype._updateUngrouped=function(){var ungrouped=this.groups[UNGROUPED];var item,itemId;if(this.groupsData){if(ungrouped){ungrouped.hide();delete this.groups[UNGROUPED];for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];item.parent&&item.parent.remove(item);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];group&&group.add(item)||item.hide()}}}}else{if(!ungrouped){var id=null;var data=null;ungrouped=new Group(id,data,this);this.groups[UNGROUPED]=ungrouped;for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];ungrouped.add(item)}}ungrouped.show()}}};ItemSet.prototype.getLabelSet=function(){return this.dom.labelSet};ItemSet.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids);this._updateUngrouped()}this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getItems=function(){return this.itemsData};ItemSet.prototype.setGroups=function(groups){var me=this,ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;this._onRemoveGroups(ids)}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}groupsData.get().forEach(function(group){if(group.nestedGroups){group.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);updatedNestedGroup.nestedInGroup=group.id;if(group.showNested==false){updatedNestedGroup.visible=false}groupsData.update(updatedNestedGroup)})}});var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}this._updateUngrouped();this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getGroups=function(){return this.groupsData};ItemSet.prototype.removeItem=function(id){var item=this.itemsData.get(id),dataset=this.itemsData.getDataSet();if(item){this.options.onRemove(item,function(item){if(item){dataset.remove(id)}})}};ItemSet.prototype._getType=function(itemData){return itemData.type||this.options.type||(itemData.end?\"range\":\"box\")};ItemSet.prototype._getGroupId=function(itemData){var type=this._getType(itemData);if(type==\"background\"&&itemData.group==undefined){return BACKGROUND}else{return this.groupsData?itemData.group:UNGROUPED}};ItemSet.prototype._onUpdate=function(ids){var me=this;ids.forEach(function(id){var itemData=me.itemsData.get(id,me.itemOptions);var item=me.items[id];var type=itemData?me._getType(itemData):null;var constructor=ItemSet.types[type];var selected;if(item){if(!constructor||!(item instanceof constructor)){selected=item.selected;me._removeItem(item);item=null}else{me._updateItem(item,itemData)}}if(!item&&itemData){if(constructor){item=new constructor(itemData,me.conversion,me.options);item.id=id;me._addItem(item);if(selected){this.selection.push(id);item.select()}}else if(type==\"rangeoverflow\"){throw new TypeError('Item type \"rangeoverflow\" is deprecated. Use css styling instead: '+\".vis-item.vis-range .vis-item-content {overflow: visible;}\")}else{throw new TypeError('Unknown item type \"'+type+'\"')}}}.bind(this));this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onAdd=ItemSet.prototype._onUpdate;ItemSet.prototype._onRemove=function(ids){var count=0;var me=this;ids.forEach(function(id){var item=me.items[id];if(item){count++;me._removeItem(item)}});if(count){this._order();this.body.emitter.emit(\"_change\",{queue:true})}};ItemSet.prototype._order=function(){util.forEach(this.groups,function(group){group.order()})};ItemSet.prototype._onUpdateGroups=function(ids){this._onAddGroups(ids)};ItemSet.prototype._onAddGroups=function(ids){var me=this;ids.forEach(function(id){var groupData=me.groupsData.get(id);var group=me.groups[id];if(!group){if(id==UNGROUPED||id==BACKGROUND){throw new Error(\"Illegal group id. \"+id+\" is a reserved id.\")}var groupOptions=(0,_create2[\"default\"])(me.options);util.extend(groupOptions,{height:null});group=new Group(id,groupData,me);me.groups[id]=group;for(var itemId in me.items){if(me.items.hasOwnProperty(itemId)){var item=me.items[itemId];if(item.data.group==id){group.add(item)}}}group.order();group.show()}else{group.setData(groupData)}});this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onRemoveGroups=function(ids){var groups=this.groups;ids.forEach(function(id){var group=groups[id];if(group){group.hide();delete groups[id]}});this.markDirty();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._orderGroups=function(){if(this.groupsData){var groupIds=this.groupsData.getIds({order:this.options.groupOrder});groupIds=this._orderNestedGroups(groupIds);var changed=!util.equalArray(groupIds,this.groupIds);if(changed){var groups=this.groups;groupIds.forEach(function(groupId){groups[groupId].hide()});groupIds.forEach(function(groupId){groups[groupId].show()});this.groupIds=groupIds}return changed}else{return false}};ItemSet.prototype._orderNestedGroups=function(groupIds){var newGroupIdsOrder=[];groupIds.forEach(function(groupId){var groupData=this.groupsData.get(groupId);if(!groupData.nestedInGroup){newGroupIdsOrder.push(groupId)}if(groupData.nestedGroups){var nestedGroups=this.groupsData.get({filter:function filter(nestedGroup){return nestedGroup.nestedInGroup==groupId},order:this.options.groupOrder});var nestedGroupIds=nestedGroups.map(function(nestedGroup){return nestedGroup.id});newGroupIdsOrder=newGroupIdsOrder.concat(nestedGroupIds)}},this);return newGroupIdsOrder};ItemSet.prototype._addItem=function(item){this.items[item.id]=item;var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}if(group)group.add(item)};ItemSet.prototype._updateItem=function(item,itemData){item.setData(itemData);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}};ItemSet.prototype._removeItem=function(item){item.hide();delete this.items[item.id];var index=this.selection.indexOf(item.id);if(index!=-1)this.selection.splice(index,1);item.parent&&item.parent.remove(item)};ItemSet.prototype._constructByEndArray=function(array){var endArray=[];for(var i=0;i<array.length;i++){if(array[i]instanceof RangeItem){endArray.push(array[i])}}return endArray};ItemSet.prototype._onTouch=function(event){this.touchParams.item=this.itemFromTarget(event);this.touchParams.dragLeftItem=event.target.dragLeftItem||false;this.touchParams.dragRightItem=event.target.dragRightItem||false;this.touchParams.itemProps=null};ItemSet.prototype._getGroupIndex=function(groupId){for(var i=0;i<this.groupIds.length;i++){if(groupId==this.groupIds[i])return i}};ItemSet.prototype._onDragStart=function(event){if(this.touchParams.itemIsDragging){return}var item=this.touchParams.item||null;var me=this;var props;if(item&&(item.selected||this.options.itemsAlwaysDraggable.item)){if(this.options.editable.overrideItems&&!this.options.editable.updateTime&&!this.options.editable.updateGroup){return}if(item.editable!=null&&!item.editable.updateTime&&!item.editable.updateGroup&&!this.options.editable.overrideItems){return}var dragLeftItem=this.touchParams.dragLeftItem;var dragRightItem=this.touchParams.dragRightItem;this.touchParams.itemIsDragging=true;this.touchParams.selectedItem=item;if(dragLeftItem){props={item:dragLeftItem,initialX:event.center.x,dragLeft:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(dragRightItem){props={item:dragRightItem,initialX:event.center.x,dragRight:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}else{if(this.groupIds.length<1){this.redraw()}var baseGroupIndex=this._getGroupIndex(item.data.group);var itemsToDrag=this.options.itemsAlwaysDraggable.item&&!item.selected?[item.id]:this.getSelection();this.touchParams.itemProps=itemsToDrag.map(function(id){var item=me.items[id];var groupIndex=me._getGroupIndex(item.data.group);return{item:item,initialX:event.center.x,groupOffset:baseGroupIndex-groupIndex,data:this._cloneItemData(item.data)}}.bind(this))}event.stopPropagation()}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}};ItemSet.prototype._onDragStartAddItem=function(event){var xAbs;var x;var snap=this.options.snap||null;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x+10}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs-10}var time=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var start=snap?snap(time,scale,step):time;var end=start;var itemData={type:\"range\",start:start,end:end,content:\"new item\"};var id=util.randomUUID();itemData[this.itemsData._fieldId]=id;var group=this.groupFromTarget(event);if(group){itemData.group=group.groupId}var newItem=new RangeItem(itemData,this.conversion,this.options);newItem.id=id;newItem.data=this._cloneItemData(itemData);this._addItem(newItem);this.touchParams.selectedItem=newItem;var props={item:newItem,initialX:event.center.x,data:newItem.data};if(this.options.rtl){props.dragLeft=true}else{props.dragRight=true}this.touchParams.itemProps=[props];event.stopPropagation()};ItemSet.prototype._onDrag=function(event){if(this.touchParams.itemProps){event.stopPropagation();var me=this;var snap=this.options.snap||null;var xOffset;if(this.options.rtl){xOffset=this.body.dom.root.offsetLeft+this.body.domProps.right.width}else{xOffset=this.body.dom.root.offsetLeft+this.body.domProps.left.width}var scale=this.body.util.getScale();var step=this.body.util.getStep();var selectedItem=this.touchParams.selectedItem;var updateGroupAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateGroup||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateGroup;var newGroupBase=null;if(updateGroupAllowed&&selectedItem){if(selectedItem.data.group!=undefined){var group=me.groupFromTarget(event);if(group){newGroupBase=this._getGroupIndex(group.groupId)}}}this.touchParams.itemProps.forEach(function(props){var current=me.body.util.toTime(event.center.x-xOffset);var initial=me.body.util.toTime(props.initialX-xOffset);var offset;var initialStart;var initialEnd;var start;var end;if(this.options.rtl){offset=-(current-initial)}else{offset=current-initial}var itemData=this._cloneItemData(props.item.data);if(props.item.editable!=null&&!props.item.editable.updateTime&&!props.item.editable.updateGroup&&!me.options.editable.overrideItems){return}var updateTimeAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateTime||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateTime;if(updateTimeAllowed){if(props.dragLeft){if(this.options.rtl){if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}}else if(props.dragRight){if(this.options.rtl){if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}else{if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\").valueOf();start=new Date(initialStart+offset);if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");var duration=initialEnd.valueOf()-initialStart.valueOf();itemData.start=snap?snap(start,scale,step):start;itemData.end=new Date(itemData.start.valueOf()+duration)}else{itemData.start=snap?snap(start,scale,step):start}}}}if(updateGroupAllowed&&!props.dragLeft&&!props.dragRight&&newGroupBase!=null){if(itemData.group!=undefined){var newOffset=newGroupBase-props.groupOffset;newOffset=Math.max(0,newOffset);newOffset=Math.min(me.groupIds.length-1,newOffset);itemData.group=me.groupIds[newOffset]}}itemData=this._cloneItemData(itemData);me.options.onMoving(itemData,function(itemData){if(itemData){props.item.setData(this._cloneItemData(itemData,\"Date\"))}}.bind(this))}.bind(this));this.body.emitter.emit(\"_change\")}};ItemSet.prototype._moveToGroup=function(item,groupId){var group=this.groups[groupId];if(group&&group.groupId!=item.data.group){var oldGroup=item.parent;oldGroup.remove(item);oldGroup.order();item.data.group=group.groupId;group.add(item);group.order()}};ItemSet.prototype._onDragEnd=function(event){this.touchParams.itemIsDragging=false;if(this.touchParams.itemProps){event.stopPropagation();var me=this;var dataset=this.itemsData.getDataSet();var itemProps=this.touchParams.itemProps;this.touchParams.itemProps=null;itemProps.forEach(function(props){var id=props.item.id;var exists=me.itemsData.get(id,me.itemOptions)!=null;if(!exists){me.options.onAdd(props.item.data,function(itemData){me._removeItem(props.item);if(itemData){me.itemsData.getDataSet().add(itemData)}me.body.emitter.emit(\"_change\")})}else{var itemData=this._cloneItemData(props.item.data);me.options.onMove(itemData,function(itemData){if(itemData){itemData[dataset._fieldId]=id;dataset.update(itemData)}else{props.item.setData(props.data);me.body.emitter.emit(\"_change\")}})}}.bind(this))}};ItemSet.prototype._onGroupClick=function(event){var group=this.groupFromTarget(event);if(!group||!group.nestedGroups)return;var groupsData=this.groupsData.getDataSet();var nestingGroup=groupsData.get(group.groupId);if(nestingGroup.showNested==undefined){nestingGroup.showNested=true}nestingGroup.showNested=!nestingGroup.showNested;var nestedGroups=groupsData.get(group.nestedGroups).map(function(nestedGroup){nestedGroup.visible=nestingGroup.showNested;return nestedGroup});groupsData.update(nestedGroups.concat(nestingGroup));if(nestingGroup.showNested){util.removeClassName(group.dom.label,\"collapsed\");util.addClassName(group.dom.label,\"expanded\")}else{util.removeClassName(group.dom.label,\"expanded\");var collapsedDirClassName=this.options.rtl?\"collapsed-rtl\":\"collapsed\";util.addClassName(group.dom.label,collapsedDirClassName)}};ItemSet.prototype._onGroupDragStart=function(event){if(this.options.groupEditable.order){this.groupTouchParams.group=this.groupFromTarget(event);if(this.groupTouchParams.group){event.stopPropagation();this.groupTouchParams.originalOrder=this.groupsData.getIds({order:this.options.groupOrder})}}};ItemSet.prototype._onGroupDrag=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}var group=this.groupFromTarget(event);if(group&&group.height!=this.groupTouchParams.group.height){var movingUp=group.top<this.groupTouchParams.group.top;var clientY=event.center?event.center.y:event.clientY;var targetGroupTop=util.getAbsoluteTop(group.dom.foreground);var draggedGroupHeight=this.groupTouchParams.group.height;if(movingUp){if(targetGroupTop+draggedGroupHeight<clientY){return}}else{var targetGroupHeight=group.height;if(targetGroupTop+targetGroupHeight-draggedGroupHeight>clientY){return}}}if(group&&group!=this.groupTouchParams.group){var targetGroup=groupsData.get(group.groupId);var draggedGroup=groupsData.get(this.groupTouchParams.group.groupId);if(draggedGroup&&targetGroup){this.options.groupOrderSwap(draggedGroup,targetGroup,groupsData);groupsData.update(draggedGroup);groupsData.update(targetGroup)}var newOrder=groupsData.getIds({order:this.options.groupOrder});if(!util.equalArray(newOrder,this.groupTouchParams.originalOrder)){var origOrder=this.groupTouchParams.originalOrder;var draggedId=this.groupTouchParams.group.groupId;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;var newOffset=0;var orgOffset=0;while(curPos<numGroups){while(curPos+newOffset<numGroups&&curPos+orgOffset<numGroups&&newOrder[curPos+newOffset]==origOrder[curPos+orgOffset]){curPos++}if(curPos+newOffset>=numGroups){break}if(newOrder[curPos+newOffset]==draggedId){newOffset=1}else if(origOrder[curPos+orgOffset]==draggedId){orgOffset=1}else{var slippedPosition=newOrder.indexOf(origOrder[curPos+orgOffset]);var switchGroup=groupsData.get(newOrder[curPos+newOffset]);var shouldBeGroup=groupsData.get(origOrder[curPos+orgOffset]);this.options.groupOrderSwap(switchGroup,shouldBeGroup,groupsData);groupsData.update(switchGroup);groupsData.update(shouldBeGroup);var switchGroupId=newOrder[curPos+newOffset];newOrder[curPos+newOffset]=origOrder[curPos+orgOffset];newOrder[slippedPosition]=switchGroupId;curPos++}}}}}};ItemSet.prototype._onGroupDragEnd=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var me=this;var id=me.groupTouchParams.group.groupId;var dataset=me.groupsData.getDataSet();var groupData=util.extend({},dataset.get(id));me.options.onMoveGroup(groupData,function(groupData){if(groupData){groupData[dataset._fieldId]=id;dataset.update(groupData)}else{var newOrder=dataset.getIds({order:me.options.groupOrder});if(!util.equalArray(newOrder,me.groupTouchParams.originalOrder)){var origOrder=me.groupTouchParams.originalOrder;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;while(curPos<numGroups){while(curPos<numGroups&&newOrder[curPos]==origOrder[curPos]){curPos++}if(curPos>=numGroups){break}var slippedPosition=newOrder.indexOf(origOrder[curPos]);var switchGroup=dataset.get(newOrder[curPos]);var shouldBeGroup=dataset.get(origOrder[curPos]);me.options.groupOrderSwap(switchGroup,shouldBeGroup,dataset);dataset.update(switchGroup);dataset.update(shouldBeGroup);var switchGroupId=newOrder[curPos];newOrder[curPos]=origOrder[curPos];newOrder[slippedPosition]=switchGroupId;curPos++}}}});me.body.emitter.emit(\"groupDragged\",{groupId:id})}};ItemSet.prototype._onSelectItem=function(event){if(!this.options.selectable)return;var ctrlKey=event.srcEvent&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey);var shiftKey=event.srcEvent&&event.srcEvent.shiftKey;if(ctrlKey||shiftKey){this._onMultiSelectItem(event);return}var oldSelection=this.getSelection();var item=this.itemFromTarget(event);var selection=item?[item.id]:[];this.setSelection(selection);var newSelection=this.getSelection();if(newSelection.length>0||oldSelection.length>0){this.body.emitter.emit(\"select\",{items:newSelection,event:event})}};ItemSet.prototype._onMouseOver=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}var title=item.getTitle();if(this.options.showTooltips&&title){if(this.popup==null){this.popup=new Popup(this.body.dom.root,this.options.tooltip.overflowMethod||\"flip\")}this.popup.setText(title);var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}else{if(this.popup!=null){this.popup.hide()}}this.body.emitter.emit(\"itemover\",{item:item.id,event:event})};ItemSet.prototype._onMouseOut=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}if(this.popup!=null){this.popup.hide()}this.body.emitter.emit(\"itemout\",{item:item.id,event:event})};ItemSet.prototype._onMouseMove=function(event){var item=this.itemFromTarget(event);if(!item)return;if(this.options.showTooltips&&this.options.tooltip.followMouse){if(this.popup){if(!this.popup.hidden){var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}}}};ItemSet.prototype._onMouseWheel=function(event){if(this.touchParams.itemIsDragging){this._onDragEnd(event)}};ItemSet.prototype._onUpdateItem=function(item){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;if(item){var itemData=me.itemsData.get(item.id);this.options.onUpdate(itemData,function(itemData){if(itemData){me.itemsData.getDataSet().update(itemData)}})}};ItemSet.prototype._onDropObjectOnItem=function(event){var item=this.itemFromTarget(event);var objectData=JSON.parse(event.dataTransfer.getData(\"text\"));this.options.onDropObjectOnItem(objectData,item)};ItemSet.prototype._onAddItem=function(event){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;var snap=this.options.snap||null;var xAbs;var x;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs}var start=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var end;var newItemData;if(event.type==\"drop\"){newItemData=JSON.parse(event.dataTransfer.getData(\"text\"));newItemData.content=newItemData.content?newItemData.content:\"new item\";newItemData.start=newItemData.start?newItemData.start:snap?snap(start,scale,step):start;newItemData.type=newItemData.type||\"box\";newItemData[this.itemsData._fieldId]=newItemData.id||util.randomUUID();if(newItemData.type==\"range\"&&!newItemData.end){end=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}else{newItemData={start:snap?snap(start,scale,step):start,content:\"new item\"};newItemData[this.itemsData._fieldId]=util.randomUUID();if(this.options.type===\"range\"){\nend=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}var group=this.groupFromTarget(event);if(group){newItemData.group=group.groupId}newItemData=this._cloneItemData(newItemData);this.options.onAdd(newItemData,function(item){if(item){me.itemsData.getDataSet().add(item);if(event.type==\"drop\"){me.setSelection([item.id])}}})};ItemSet.prototype._onMultiSelectItem=function(event){if(!this.options.selectable)return;var item=this.itemFromTarget(event);if(item){var selection=this.options.multiselect?this.getSelection():[];var shiftKey=event.srcEvent&&event.srcEvent.shiftKey||false;if(shiftKey&&this.options.multiselect){var itemGroup=this.itemsData.get(item.id).group;var lastSelectedGroup=undefined;if(this.options.multiselectPerGroup){if(selection.length>0){lastSelectedGroup=this.itemsData.get(selection[0]).group}}if(!this.options.multiselectPerGroup||lastSelectedGroup==undefined||lastSelectedGroup==itemGroup){selection.push(item.id)}var range=ItemSet._getItemRange(this.itemsData.get(selection,this.itemOptions));if(!this.options.multiselectPerGroup||lastSelectedGroup==itemGroup){selection=[];for(var id in this.items){if(this.items.hasOwnProperty(id)){var _item=this.items[id];var start=_item.data.start;var end=_item.data.end!==undefined?_item.data.end:start;if(start>=range.min&&end<=range.max&&(!this.options.multiselectPerGroup||lastSelectedGroup==this.itemsData.get(_item.id).group)&&!(_item instanceof BackgroundItem)){selection.push(_item.id)}}}}}else{var index=selection.indexOf(item.id);if(index==-1){selection.push(item.id)}else{selection.splice(index,1)}}this.setSelection(selection);this.body.emitter.emit(\"select\",{items:this.getSelection(),event:event})}};ItemSet._getItemRange=function(itemsData){var max=null;var min=null;itemsData.forEach(function(data){if(min==null||data.start<min){min=data.start}if(data.end!=undefined){if(max==null||data.end>max){max=data.end}}else{if(max==null||data.start>max){max=data.start}}});return{min:min,max:max}};ItemSet.prototype.itemFromElement=function(element){var cur=element;while(cur){if(cur.hasOwnProperty(\"timeline-item\")){return cur[\"timeline-item\"]}cur=cur.parentNode}return null};ItemSet.prototype.itemFromTarget=function(event){return this.itemFromElement(event.target)};ItemSet.prototype.itemFromRelatedTarget=function(event){return this.itemFromElement(event.relatedTarget)};ItemSet.prototype.groupFromTarget=function(event){var clientY=event.center?event.center.y:event.clientY;var groupIds=this.groupIds;if(groupIds.length<=0&&this.groupsData){groupIds=this.groupsData.getIds({order:this.options.groupOrder})}for(var i=0;i<groupIds.length;i++){var groupId=groupIds[i];var group=this.groups[groupId];var foreground=group.dom.foreground;var top=util.getAbsoluteTop(foreground);if(clientY>top&&clientY<top+foreground.offsetHeight){return group}if(this.options.orientation.item===\"top\"){if(i===this.groupIds.length-1&&clientY>top){return group}}else{if(i===0&&clientY<top+foreground.offset){return group}}}return null};ItemSet.itemSetFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"timeline-itemset\")){return target[\"timeline-itemset\"]}target=target.parentNode}return null};ItemSet.prototype._cloneItemData=function(itemData,type){var clone=util.extend({},itemData);if(!type){type=this.itemsData.getDataSet()._options.type}if(clone.start!=undefined){clone.start=util.convert(clone.start,type&&type.start||\"Date\")}if(clone.end!=undefined){clone.end=util.convert(clone.end,type&&type.end||\"Date\")}return clone};module.exports=ItemSet},function(module,exports,__webpack_require__){\"use strict\";var EPSILON=.001;exports.orderByStart=function(items){items.sort(function(a,b){return a.data.start-b.data.start})};exports.orderByEnd=function(items){items.sort(function(a,b){var aTime=\"end\"in a.data?a.data.end:a.data.start,bTime=\"end\"in b.data?b.data.end:b.data.start;return aTime-bTime})};exports.stack=function(items,margin,force){if(force){for(var i=0;i<items.length;i++){items[i].top=null}}for(var i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=margin.axis;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&other.stack&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}}while(collidingItem)}}};exports.substack=function(items,margin,subgroup){for(var i=0;i<items.length;i++){items[i].top=null}var subgroupHeight=subgroup.height;for(i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=item.baseTop;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}if(item.top+item.height>subgroupHeight){subgroupHeight=item.top+item.height}}while(collidingItem)}}subgroup.height=subgroupHeight-subgroup.top+.5*margin.item.vertical};exports.nostack=function(items,margin,subgroups,stackSubgroups){for(var i=0;i<items.length;i++){if(items[i].data.subgroup==undefined){items[i].top=margin.item.vertical}else if(items[i].data.subgroup!==undefined&&stackSubgroups){var newTop=0;for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){if(subgroups[subgroup].visible==true&&subgroups[subgroup].index<subgroups[items[i].data.subgroup].index){newTop+=subgroups[subgroup].height;subgroups[items[i].data.subgroup].top=newTop}}}items[i].top=newTop+.5*margin.item.vertical}}if(!stackSubgroups){exports.stackSubgroups(items,margin,subgroups)}};exports.stackSubgroups=function(items,margin,subgroups){for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){subgroups[subgroup].top=0;do{var collidingItem=null;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].top!==null&&otherSubgroup!==subgroup&&subgroups[subgroup].index>subgroups[otherSubgroup].index&&exports.collisionByTimes(subgroups[subgroup],subgroups[otherSubgroup])){collidingItem=subgroups[otherSubgroup];break}}if(collidingItem!=null){subgroups[subgroup].top=collidingItem.top+collidingItem.height}}while(collidingItem)}}for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical}}};exports.stackSubgroupsWithInnerStack=function(subgroupItems,margin,subgroups){var doSubStack=false;var subgroupOrder=[];for(var subgroup in subgroups){if(subgroups[subgroup].hasOwnProperty(\"index\")){subgroupOrder[subgroups[subgroup].index]=subgroup}else{subgroupOrder.push(subgroup)}}for(var j=0;j<subgroupOrder.length;j++){subgroup=subgroupOrder[j];if(subgroups.hasOwnProperty(subgroup)){doSubStack=doSubStack||subgroups[subgroup].stack;subgroups[subgroup].top=0;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].visible&&subgroups[subgroup].index>subgroups[otherSubgroup].index){subgroups[subgroup].top+=subgroups[otherSubgroup].height}}var items=subgroupItems[subgroup];for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical;if(subgroups[subgroup].stack){items[i].baseTop=items[i].top}}}if(doSubStack&&subgroups[subgroup].stack){exports.substack(subgroupItems[subgroup],margin,subgroups[subgroup])}}}};exports.collision=function(a,b,margin,rtl){if(rtl){return a.right-margin.horizontal+EPSILON<b.right+b.width&&a.right+a.width+margin.horizontal-EPSILON>b.right&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}else{return a.left-margin.horizontal+EPSILON<b.left+b.width&&a.left+a.width+margin.horizontal-EPSILON>b.left&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}};exports.collisionByTimes=function(a,b){return a.start<=b.start&&a.end>=b.start&&a.top<b.top+b.height&&a.top+a.height>b.top||b.start<=a.start&&b.end>=a.start&&b.top<a.top+a.height&&b.top+b.height>a.top}},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function BoxItem(data,conversion,options){this.props={dot:{width:0,height:0},line:{width:0,height:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}BoxItem.prototype=new Item(null,null,null);BoxItem.prototype.isVisible=function(range){var isVisible;var align=this.options.align;var widthInMs=this.width*range.getMillisecondsPerPixel();if(align==\"right\"){isVisible=this.data.start.getTime()>range.start&&this.data.start.getTime()-widthInMs<range.end}else if(align==\"left\"){isVisible=this.data.start.getTime()+widthInMs>range.start&&this.data.start.getTime()<range.end}else{isVisible=this.data.start.getTime()+widthInMs/2>range.start&&this.data.start.getTime()-widthInMs/2<range.end}return isVisible};BoxItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"DIV\");this.dom.content=document.createElement(\"DIV\");this.dom.content.className=\"vis-item-content\";this.dom.box.appendChild(this.dom.content);this.dom.line=document.createElement(\"DIV\");this.dom.line.className=\"vis-line\";this.dom.dot=document.createElement(\"DIV\");this.dom.dot.className=\"vis-dot\";this.dom.box[\"timeline-item\"]=this;this.dirty=true}};BoxItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground)throw new Error(\"Cannot redraw item: parent has no foreground container element\");foreground.appendChild(this.dom.box)}if(!this.dom.line.parentNode){var background=this.parent.dom.background;if(!background)throw new Error(\"Cannot redraw item: parent has no background container element\");background.appendChild(this.dom.line)}if(!this.dom.dot.parentNode){var axis=this.parent.dom.axis;if(!background)throw new Error(\"Cannot redraw item: parent has no axis container element\");axis.appendChild(this.dom.dot)}this.displayed=true};BoxItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=\"vis-item vis-box\"+className;this.dom.line.className=\"vis-item vis-line\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};BoxItem.prototype._getDomComponentsSizes=function(){return{previous:{right:this.dom.box.style.right,left:this.dom.box.style.left},dot:{height:this.dom.dot.offsetHeight,width:this.dom.dot.offsetWidth},line:{width:this.dom.line.offsetWidth},box:{width:this.dom.box.offsetWidth,height:this.dom.box.offsetHeight}}};BoxItem.prototype._updateDomComponentsSizes=function(sizes){if(this.options.rtl){this.dom.box.style.right=\"0px\"}else{this.dom.box.style.left=\"0px\"}this.props.dot.height=sizes.dot.height;this.props.dot.width=sizes.dot.width;this.props.line.width=sizes.line.width;this.width=sizes.box.width;this.height=sizes.box.height;if(this.options.rtl){this.dom.box.style.right=sizes.previous.right}else{this.dom.box.style.left=sizes.previous.left}this.dirty=false};BoxItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDragCenter();this._repaintDeleteButton(this.dom.box)};BoxItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BoxItem.prototype.show=function(){if(!this.displayed){this.redraw()}};BoxItem.prototype.hide=function(){if(this.displayed){var dom=this.dom;if(dom.box.parentNode)dom.box.parentNode.removeChild(dom.box);if(dom.line.parentNode)dom.line.parentNode.removeChild(dom.line);if(dom.dot.parentNode)dom.dot.parentNode.removeChild(dom.dot);this.displayed=false}};BoxItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);var align=this.options.align;if(align==\"right\"){if(this.options.rtl){this.right=start-this.width;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start-this.width;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width+\"px\";this.dom.dot.style.left=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}}else if(align==\"left\"){if(this.options.rtl){this.right=start;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start+\"px\";this.dom.dot.style.right=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start+\"px\";this.dom.dot.style.left=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}}else{if(this.options.rtl){this.right=start-this.width/2;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.dot.width/2+\"px\"}else{this.left=start-this.width/2;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width/2+\"px\";this.dom.dot.style.left=start-this.props.dot.width/2+\"px\"}}};BoxItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;var line=this.dom.line;var dot=this.dom.dot;if(orientation==\"top\"){box.style.top=(this.top||0)+\"px\";line.style.top=\"0\";line.style.height=this.parent.top+this.top+1+\"px\";line.style.bottom=\"\"}else{var itemSetHeight=this.parent.itemSet.props.height;var lineHeight=itemSetHeight-this.parent.top-this.parent.height+this.top;box.style.top=(this.parent.height-this.top-this.height||0)+\"px\";line.style.top=itemSetHeight-lineHeight+\"px\";line.style.bottom=\"0\"}dot.style.top=-this.props.dot.height/2+\"px\"};BoxItem.prototype.getWidthLeft=function(){return this.width/2};BoxItem.prototype.getWidthRight=function(){return this.width/2};module.exports=BoxItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function PointItem(data,conversion,options){this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0,marginRight:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}PointItem.prototype=new Item(null,null,null);PointItem.prototype.isVisible=function(range){var widthInMs=this.width*range.getMillisecondsPerPixel();return this.data.start.getTime()+widthInMs>range.start&&this.data.start<range.end};PointItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.point=document.createElement(\"div\");this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.point.appendChild(this.dom.content);this.dom.dot=document.createElement(\"div\");this.dom.point.appendChild(this.dom.dot);this.dom.point[\"timeline-item\"]=this;this.dirty=true}};PointItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.point.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.point)}this.displayed=true};PointItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.point);this._updateStyle(this.dom.point);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.point.className=\"vis-item vis-point\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};PointItem.prototype._getDomComponentsSizes=function(){return{dot:{width:this.dom.dot.offsetWidth,height:this.dom.dot.offsetHeight},content:{width:this.dom.content.offsetWidth,height:this.dom.content.offsetHeight},point:{width:this.dom.point.offsetWidth,height:this.dom.point.offsetHeight}}};PointItem.prototype._updateDomComponentsSizes=function(sizes){this.props.dot.width=sizes.dot.width;this.props.dot.height=sizes.dot.height;this.props.content.height=sizes.content.height;if(this.options.rtl){this.dom.content.style.marginRight=2*this.props.dot.width+\"px\"}else{this.dom.content.style.marginLeft=2*this.props.dot.width+\"px\"}this.width=sizes.point.width;this.height=sizes.point.height;this.dom.dot.style.top=(this.height-this.props.dot.height)/2+\"px\";if(this.options.rtl){this.dom.dot.style.right=this.props.dot.width/2+\"px\"}else{this.dom.dot.style.left=this.props.dot.width/2+\"px\"}this.dirty=false};PointItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.point);this._repaintDragCenter();this._repaintDeleteButton(this.dom.point)};PointItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};PointItem.prototype.show=function(){if(!this.displayed){this.redraw()}};PointItem.prototype.hide=function(){if(this.displayed){if(this.dom.point.parentNode){this.dom.point.parentNode.removeChild(this.dom.point)}this.displayed=false}};PointItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);if(this.options.rtl){this.right=start-this.props.dot.width;this.dom.point.style.right=this.right+\"px\"}else{this.left=start-this.props.dot.width;this.dom.point.style.left=this.left+\"px\"}};PointItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var point=this.dom.point;if(orientation==\"top\"){point.style.top=this.top+\"px\"}else{point.style.top=this.parent.height-this.top-this.height+\"px\"}};PointItem.prototype.getWidthLeft=function(){return this.props.dot.width};PointItem.prototype.getWidthRight=function(){return this.props.dot.width};module.exports=PointItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);var BackgroundGroup=__webpack_require__(69);var RangeItem=__webpack_require__(70);function BackgroundItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}BackgroundItem.prototype=new Item(null,null,null);BackgroundItem.prototype.baseClassName=\"vis-item vis-background\";BackgroundItem.prototype.stack=false;BackgroundItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};BackgroundItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dirty=true}};BackgroundItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var background=this.parent.dom.background;if(!background){throw new Error(\"Cannot redraw item: parent has no background container element\")}background.appendChild(this.dom.box)}this.displayed=true};BackgroundItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.content);this._updateStyle(this.dom.box);var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\");this.dom.box.className=this.baseClassName+className}};BackgroundItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.content).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth}}};BackgroundItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=0;this.dirty=false};BackgroundItem.prototype._repaintDomAdditionals=function(){};BackgroundItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BackgroundItem.prototype.show=RangeItem.prototype.show;BackgroundItem.prototype.hide=RangeItem.prototype.hide;BackgroundItem.prototype.repositionX=RangeItem.prototype.repositionX;BackgroundItem.prototype.repositionY=function(margin){var height;var orientation=this.options.orientation.item;if(this.data.subgroup!==undefined){var itemSubgroup=this.data.subgroup;this.dom.box.style.height=this.parent.subgroups[itemSubgroup].height+\"px\";if(orientation==\"top\"){this.dom.box.style.top=this.parent.top+this.parent.subgroups[itemSubgroup].top+\"px\"}else{this.dom.box.style.top=this.parent.top+this.parent.height-this.parent.subgroups[itemSubgroup].top-this.parent.subgroups[itemSubgroup].height+\"px\"}this.dom.box.style.bottom=\"\"}else{if(this.parent instanceof BackgroundGroup){height=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height);this.dom.box.style.bottom=orientation==\"bottom\"?\"0\":\"\";this.dom.box.style.top=orientation==\"top\"?\"0\":\"\"}else{height=this.parent.height;this.dom.box.style.top=this.parent.top+\"px\";this.dom.box.style.bottom=\"\"}}this.dom.box.style.height=height+\"px\"};module.exports=BackgroundItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Popup=function(){function Popup(container,overflowMethod){(0,_classCallCheck3[\"default\"])(this,Popup);this.container=container;this.overflowMethod=overflowMethod||\"cap\";this.x=0;this.y=0;this.padding=5;this.hidden=false;this.frame=document.createElement(\"div\");this.frame.className=\"vis-tooltip\";this.container.appendChild(this.frame)}(0,_createClass3[\"default\"])(Popup,[{key:\"setPosition\",value:function setPosition(x,y){this.x=parseInt(x);this.y=parseInt(y)}},{key:\"setText\",value:function setText(content){if(content instanceof Element){this.frame.innerHTML=\"\";this.frame.appendChild(content)}else{this.frame.innerHTML=content}}},{key:\"show\",value:function show(doShow){if(doShow===undefined){doShow=true}if(doShow===true){var height=this.frame.clientHeight;var width=this.frame.clientWidth;var maxHeight=this.frame.parentNode.clientHeight;var maxWidth=this.frame.parentNode.clientWidth;var left=0,top=0;if(this.overflowMethod==\"flip\"){var isLeft=false,isTop=true;if(this.y-height<this.padding){isTop=false}if(this.x+width>maxWidth-this.padding){isLeft=true}if(isLeft){left=this.x-width}else{left=this.x}if(isTop){top=this.y-height}else{top=this.y}}else{top=this.y-height;if(top+height+this.padding>maxHeight){top=maxHeight-height-this.padding}if(top<this.padding){top=this.padding}left=this.x;if(left+width+this.padding>maxWidth){left=maxWidth-width-this.padding}if(left<this.padding){left=this.padding}}this.frame.style.left=left+\"px\";this.frame.style.top=top+\"px\";this.frame.style.visibility=\"visible\";this.hidden=false}else{this.hide()}}},{key:\"hide\",value:function hide(){this.hidden=true;this.frame.style.left=\"0\";this.frame.style.top=\"0\";this.frame.style.visibility=\"hidden\"}},{key:\"destroy\",value:function destroy(){this.frame.parentNode.removeChild(this.frame)}}]);return Popup}();exports[\"default\"]=Popup},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},align:{string:string},rtl:{boolean:bool,undefined:\"undefined\"},rollingMode:{follow:{boolean:bool},offset:{number:number,undefined:\"undefined\"},__type__:{object:object}},verticalScroll:{boolean:bool,undefined:\"undefined\"},horizontalScroll:{boolean:bool,undefined:\"undefined\"},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},dataAttributes:{string:string,array:array},editable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},updateGroup:{boolean:bool,undefined:\"undefined\"},updateTime:{boolean:bool,undefined:\"undefined\"},overrideItems:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},__type__:{object:object}},moment:{function:\"function\"},groupOrder:{string:string,function:\"function\"},groupEditable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},order:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},groupOrderSwap:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},itemsAlwaysDraggable:{item:{boolean:bool,undefined:\"undefined\"},range:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},limitSize:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},margin:{axis:{number:number},item:{horizontal:{number:number,undefined:\"undefined\"},vertical:{number:number,undefined:\"undefined\"},__type__:{object:object,number:number}},__type__:{object:object,number:number}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},multiselectPerGroup:{boolean:bool},onAdd:{function:\"function\"},onDropObjectOnItem:{function:\"function\"},onUpdate:{function:\"function\"},onMove:{function:\"function\"},onMoving:{function:\"function\"},onRemove:{function:\"function\"},onAddGroup:{function:\"function\"},onMoveGroup:{function:\"function\"},onRemoveGroup:{function:\"function\"},onInitialDrawComplete:{function:\"function\"},order:{function:\"function\"},orientation:{axis:{string:string,undefined:\"undefined\"},item:{string:string,undefined:\"undefined\"},__type__:{string:string,object:object}},selectable:{boolean:bool},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},stack:{boolean:bool},stackSubgroups:{boolean:bool},snap:{function:\"function\",null:\"null\"},start:{date:date,number:number,string:string,moment:moment},template:{function:\"function\"},groupTemplate:{function:\"function\"},visibleFrameTemplate:{string:string,function:\"function\"},showTooltips:{boolean:bool},tooltip:{followMouse:{boolean:bool},overflowMethod:{string:[\"cap\",\"flip\"]},__type__:{object:object}},tooltipOnItemUpdateTime:{template:{function:\"function\"},__type__:{boolean:bool,object:object}},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},type:{string:string},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},__type__:{object:object}};var configureOptions={global:{align:[\"center\",\"left\",\"right\"],direction:false,autoResize:true,clickToUse:false,editable:{add:false,remove:false,updateGroup:false,updateTime:false},end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},groupsDraggable:false,height:\"\",locale:\"\",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:false,multiselect:false,multiselectPerGroup:false,orientation:{axis:[\"both\",\"bottom\",\"top\"],item:[\"bottom\",\"top\"]},selectable:true,showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,stack:true,stackSubgroups:true,start:\"\",showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false,type:[\"box\",\"point\",\"range\",\"background\"],width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Component=__webpack_require__(16);var DataAxis=__webpack_require__(107);var GraphGroup=__webpack_require__(109);var Legend=__webpack_require__(112);var Bars=__webpack_require__(110)\n;var Lines=__webpack_require__(111);var Points=__webpack_require__(72);var UNGROUPED=\"__ungrouped__\";function LineGraph(body,options){this.id=util.randomUUID();this.body=body;this.defaultOptions={yAxisOrientation:\"left\",defaultGroup:\"default\",sort:true,sampling:true,stack:false,graphHeight:\"400px\",shaded:{enabled:false,orientation:\"bottom\"},style:\"line\",barChart:{width:50,sideBySide:false,align:\"center\"},interpolation:{enabled:true,parametrization:\"centripetal\",alpha:.5},drawPoints:{enabled:true,size:6,style:\"square\"},dataAxis:{},legend:{},groups:{visibility:{}}};this.options=util.extend({},this.defaultOptions);this.dom={};this.props={};this.hammer=null;this.groups={};this.abortedGraphUpdate=false;this.updateSVGheight=false;this.updateSVGheightOnResize=false;this.forceGraphUpdate=true;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items)},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.selection=[];this.lastStart=this.body.range.start;this.touchParams={};this.svgElements={};this.setOptions(options);this.groupsUsingDefaultStyles=[0];this.body.emitter.on(\"rangechanged\",function(){me.lastStart=me.body.range.start;me.svg.style.left=util.option.asSize(-me.props.width);me.forceGraphUpdate=true;me.redraw.call(me)});this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}LineGraph.prototype=new Component;LineGraph.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-line-graph\";this.dom.frame=frame;this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"relative\";this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\";this.svg.style.display=\"block\";frame.appendChild(this.svg);this.options.dataAxis.orientation=\"left\";this.yAxisLeft=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);this.options.dataAxis.orientation=\"right\";this.yAxisRight=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);delete this.options.dataAxis.orientation;this.legendLeft=new Legend(this.body,this.options.legend,\"left\",this.options.groups);this.legendRight=new Legend(this.body,this.options.legend,\"right\",this.options.groups);this.show()};LineGraph.prototype.setOptions=function(options){if(options){var fields=[\"sampling\",\"defaultGroup\",\"stack\",\"height\",\"graphHeight\",\"yAxisOrientation\",\"style\",\"barChart\",\"dataAxis\",\"sort\",\"groups\"];if(options.graphHeight===undefined&&options.height!==undefined){this.updateSVGheight=true;this.updateSVGheightOnResize=true}else if(this.body.domProps.centerContainer.height!==undefined&&options.graphHeight!==undefined){if(parseInt((options.graphHeight+\"\").replace(\"px\",\"\"))<this.body.domProps.centerContainer.height){this.updateSVGheight=true}}util.selectiveDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");util.mergeOptions(this.options,options,\"legend\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}if(this.yAxisLeft){if(options.dataAxis!==undefined){this.yAxisLeft.setOptions(this.options.dataAxis);this.yAxisRight.setOptions(this.options.dataAxis)}}if(this.legendLeft){if(options.legend!==undefined){this.legendLeft.setOptions(this.options.legend);this.legendRight.setOptions(this.options.legend)}}if(this.groups.hasOwnProperty(UNGROUPED)){this.groups[UNGROUPED].setOptions(options)}}if(this.dom.frame){this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};LineGraph.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};LineGraph.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids)}};LineGraph.prototype.setGroups=function(groups){var me=this;var ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;for(var i=0;i<ids.length;i++){this._removeGroup(ids[i])}}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}};LineGraph.prototype._onUpdate=function(ids){this._updateAllGroupData(ids)};LineGraph.prototype._onAdd=function(ids){this._onUpdate(ids)};LineGraph.prototype._onRemove=function(ids){this._onUpdate(ids)};LineGraph.prototype._onUpdateGroups=function(groupIds){this._updateAllGroupData(null,groupIds)};LineGraph.prototype._onAddGroups=function(groupIds){this._onUpdateGroups(groupIds)};LineGraph.prototype._onRemoveGroups=function(groupIds){for(var i=0;i<groupIds.length;i++){this._removeGroup(groupIds[i])}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})};LineGraph.prototype._removeGroup=function(groupId){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId);this.legendRight.redraw()}else{this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId);this.legendLeft.redraw()}delete this.groups[groupId]}};LineGraph.prototype._updateGroup=function(group,groupId){if(!this.groups.hasOwnProperty(groupId)){this.groups[groupId]=new GraphGroup(group,groupId,this.options,this.groupsUsingDefaultStyles);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.addGroup(groupId,this.groups[groupId]);this.legendRight.addGroup(groupId,this.groups[groupId])}else{this.yAxisLeft.addGroup(groupId,this.groups[groupId]);this.legendLeft.addGroup(groupId,this.groups[groupId])}}else{this.groups[groupId].update(group);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.updateGroup(groupId,this.groups[groupId]);this.legendRight.updateGroup(groupId,this.groups[groupId]);this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId)}else{this.yAxisLeft.updateGroup(groupId,this.groups[groupId]);this.legendLeft.updateGroup(groupId,this.groups[groupId]);this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId)}}this.legendLeft.redraw();this.legendRight.redraw()};LineGraph.prototype._updateAllGroupData=function(ids,groupIds){if(this.itemsData!=null){var groupsContent={};var items=this.itemsData.get();var fieldId=this.itemsData._fieldId;var idMap={};if(ids){ids.map(function(id){idMap[id]=id})}var groupCounts={};for(var i=0;i<items.length;i++){var item=items[i];var groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}groupCounts.hasOwnProperty(groupId)?groupCounts[groupId]++:groupCounts[groupId]=1}var existingItemsMap={};if(!groupIds&&ids){for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){group=this.groups[groupId];var existing_items=group.getItems();groupsContent[groupId]=existing_items.filter(function(item){existingItemsMap[item[fieldId]]=item[fieldId];return item[fieldId]!==idMap[item[fieldId]]});var newLength=groupCounts[groupId];groupCounts[groupId]-=groupsContent[groupId].length;if(groupsContent[groupId].length<newLength){groupsContent[groupId][newLength-1]={}}}}}for(i=0;i<items.length;i++){item=items[i];groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}if(!groupIds&&ids&&item[fieldId]!==idMap[item[fieldId]]&&existingItemsMap.hasOwnProperty(item[fieldId])){continue}if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(groupCounts[groupId])}var extended=util.bridgeObject(item);extended.x=util.convert(item.x,\"Date\");extended.end=util.convert(item.end,\"Date\");extended.orginalY=item.y;extended.y=Number(item.y);extended[fieldId]=item[fieldId];var index=groupsContent[groupId].length-groupCounts[groupId]--;groupsContent[groupId][index]=extended}for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(0)}}}for(groupId in groupsContent){if(groupsContent.hasOwnProperty(groupId)){if(groupsContent[groupId].length==0){if(this.groups.hasOwnProperty(groupId)){this._removeGroup(groupId)}}else{var group=undefined;if(this.groupsData!=undefined){group=this.groupsData.get(groupId)}if(group==undefined){group={id:groupId,content:this.options.defaultGroup+groupId}}this._updateGroup(group,groupId);this.groups[groupId].setItems(groupsContent[groupId])}}}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.redraw=function(){var resized=false;this.props.width=this.dom.frame.offsetWidth;this.props.height=this.body.domProps.centerContainer.height-this.body.domProps.border.top-this.body.domProps.border.bottom;resized=this._isResized()||resized;var visibleInterval=this.body.range.end-this.body.range.start;var zoomed=visibleInterval!=this.lastVisibleInterval;this.lastVisibleInterval=visibleInterval;if(resized==true){this.svg.style.width=util.option.asSize(3*this.props.width);this.svg.style.left=util.option.asSize(-this.props.width);if((this.options.height+\"\").indexOf(\"%\")!=-1||this.updateSVGheightOnResize==true){this.updateSVGheight=true}}if(this.updateSVGheight==true){if(this.options.graphHeight!=this.props.height+\"px\"){this.options.graphHeight=this.props.height+\"px\";this.svg.style.height=this.props.height+\"px\"}this.updateSVGheight=false}else{this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\"}if(resized==true||zoomed==true||this.abortedGraphUpdate==true||this.forceGraphUpdate==true){resized=this._updateGraph()||resized;this.forceGraphUpdate=false}else{if(this.lastStart!=0){var offset=this.body.range.start-this.lastStart;var range=this.body.range.end-this.body.range.start;if(this.props.width!=0){var rangePerPixelInv=this.props.width/range;var xOffset=offset*rangePerPixelInv;this.svg.style.left=-this.props.width-xOffset+\"px\"}}}this.legendLeft.redraw();this.legendRight.redraw();return resized};LineGraph.prototype._getSortedGroupIds=function(){var grouplist=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];if(group.visible==true&&(this.options.groups.visibility[groupId]===undefined||this.options.groups.visibility[groupId]==true)){grouplist.push({id:groupId,zIndex:group.options.zIndex})}}}util.insertSort(grouplist,function(a,b){var az=a.zIndex;var bz=b.zIndex;if(az===undefined)az=0;if(bz===undefined)bz=0;return az==bz?0:az<bz?-1:1});var groupIds=new Array(grouplist.length);for(var i=0;i<grouplist.length;i++){groupIds[i]=grouplist[i].id}return groupIds};LineGraph.prototype._updateGraph=function(){DOMutil.prepareElements(this.svgElements);if(this.props.width!=0&&this.itemsData!=null){var group,i;var groupRanges={};var changeCalled=false;var minDate=this.body.util.toGlobalTime(-this.body.domProps.root.width);var maxDate=this.body.util.toGlobalTime(2*this.body.domProps.root.width);var groupIds=this._getSortedGroupIds();if(groupIds.length>0){var groupsData={};this._getRelevantData(groupIds,groupsData,minDate,maxDate);this._applySampling(groupIds,groupsData);for(i=0;i<groupIds.length;i++){this._convertXcoordinates(groupsData[groupIds[i]])}this._getYRanges(groupIds,groupsData,groupRanges);changeCalled=this._updateYAxis(groupIds,groupRanges);if(changeCalled==true){DOMutil.cleanupElements(this.svgElements);this.abortedGraphUpdate=true;return true}this.abortedGraphUpdate=false;var below=undefined;for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(this.options.stack===true&&this.options.style===\"line\"){if(group.options.excludeFromStacking==undefined||!group.options.excludeFromStacking){if(below!=undefined){this._stack(groupsData[group.id],groupsData[below.id]);if(group.options.shaded.enabled==true&&group.options.shaded.orientation!==\"group\"){if(group.options.shaded.orientation==\"top\"&&below.options.shaded.orientation!==\"group\"){below.options.shaded.orientation=\"group\";below.options.shaded.groupId=group.id}else{group.options.shaded.orientation=\"group\";group.options.shaded.groupId=below.id}}}below=group}}this._convertYcoordinates(groupsData[groupIds[i]],group)}var paths={};for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.style===\"line\"&&group.options.shaded.enabled==true){var dataset=groupsData[groupIds[i]];if(dataset==null||dataset.length==0){continue}if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(dataset,group)}if(group.options.shaded.orientation===\"group\"){var subGroupId=group.options.shaded.groupId;if(groupIds.indexOf(subGroupId)===-1){console.log(group.id+\": Unknown shading group target given:\"+subGroupId);continue}if(!paths.hasOwnProperty(subGroupId)){paths[subGroupId]=Lines.calcPath(groupsData[subGroupId],this.groups[subGroupId])}Lines.drawShading(paths[groupIds[i]],group,paths[subGroupId],this.framework)}else{Lines.drawShading(paths[groupIds[i]],group,undefined,this.framework)}}}Bars.draw(groupIds,groupsData,this.framework);for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(groupsData[groupIds[i]].length>0){switch(group.options.style){case\"line\":if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(groupsData[groupIds[i]],group)}Lines.draw(paths[groupIds[i]],group,this.framework);case\"point\":case\"points\":if(group.options.style==\"point\"||group.options.style==\"points\"||group.options.drawPoints.enabled==true){Points.draw(groupsData[groupIds[i]],group,this.framework)}break;case\"bar\":default:}}}}}DOMutil.cleanupElements(this.svgElements);return false};LineGraph.prototype._stack=function(data,subData){var index,dx,dy,subPrevPoint,subNextPoint;index=0;for(var j=0;j<data.length;j++){subPrevPoint=undefined;subNextPoint=undefined;for(var k=index;k<subData.length;k++){if(subData[k].x===data[j].x){subPrevPoint=subData[k];subNextPoint=subData[k];index=k;break}else if(subData[k].x>data[j].x){subNextPoint=subData[k];if(k==0){subPrevPoint=subNextPoint}else{subPrevPoint=subData[k-1]}index=k;break}}if(subNextPoint===undefined){subPrevPoint=subData[subData.length-1];subNextPoint=subData[subData.length-1]}dx=subNextPoint.x-subPrevPoint.x;dy=subNextPoint.y-subPrevPoint.y;if(dx==0){data[j].y=data[j].orginalY+subNextPoint.y}else{data[j].y=data[j].orginalY+dy/dx*(data[j].x-subPrevPoint.x)+subPrevPoint.y}}};LineGraph.prototype._getRelevantData=function(groupIds,groupsData,minDate,maxDate){var group,i,j,item;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];var itemsData=group.getItems();if(group.options.sort==true){var dateComparator=function dateComparator(a,b){return a.getTime()==b.getTime()?0:a<b?-1:1};var first=Math.max(0,util.binarySearchValue(itemsData,minDate,\"x\",\"before\",dateComparator));var last=Math.min(itemsData.length,util.binarySearchValue(itemsData,maxDate,\"x\",\"after\",dateComparator)+1);if(last<=0){last=itemsData.length}var dataContainer=new Array(last-first);for(j=first;j<last;j++){item=group.itemsData[j];dataContainer[j-first]=item}groupsData[groupIds[i]]=dataContainer}else{groupsData[groupIds[i]]=group.itemsData}}}};LineGraph.prototype._applySampling=function(groupIds,groupsData){var group;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.sampling==true){var dataContainer=groupsData[groupIds[i]];if(dataContainer.length>0){var increment=1;var amountOfPoints=dataContainer.length;var xDistance=this.body.util.toGlobalScreen(dataContainer[dataContainer.length-1].x)-this.body.util.toGlobalScreen(dataContainer[0].x);var pointsPerPixel=amountOfPoints/xDistance;increment=Math.min(Math.ceil(.2*amountOfPoints),Math.max(1,Math.round(pointsPerPixel)));var sampledData=new Array(amountOfPoints);for(var j=0;j<amountOfPoints;j+=increment){var idx=Math.round(j/increment);sampledData[idx]=dataContainer[j]}groupsData[groupIds[i]]=sampledData.splice(0,Math.round(amountOfPoints/increment))}}}}};LineGraph.prototype._getYRanges=function(groupIds,groupsData,groupRanges){var groupData,group,i;var combinedDataLeft=[];var combinedDataRight=[];var options;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){groupData=groupsData[groupIds[i]];options=this.groups[groupIds[i]].options;if(groupData.length>0){group=this.groups[groupIds[i]];if(options.stack===true&&options.style===\"bar\"){if(options.yAxisOrientation===\"left\"){combinedDataLeft=combinedDataLeft.concat(groupData)}else{combinedDataRight=combinedDataRight.concat(groupData)}}else{groupRanges[groupIds[i]]=group.getYRange(groupData,groupIds[i])}}}Bars.getStackedYRange(combinedDataLeft,groupRanges,groupIds,\"__barStackLeft\",\"left\");Bars.getStackedYRange(combinedDataRight,groupRanges,groupIds,\"__barStackRight\",\"right\")}};LineGraph.prototype._updateYAxis=function(groupIds,groupRanges){var resized=false;var yAxisLeftUsed=false;var yAxisRightUsed=false;var minLeft=1e9,minRight=1e9,maxLeft=-1e9,maxRight=-1e9,minVal,maxVal;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){var group=this.groups[groupIds[i]];if(group&&group.options.yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=1e9;maxLeft=-1e9}else if(group&&group.options.yAxisOrientation){yAxisRightUsed=true;minRight=1e9;maxRight=-1e9}}for(i=0;i<groupIds.length;i++){if(groupRanges.hasOwnProperty(groupIds[i])){if(groupRanges[groupIds[i]].ignore!==true){minVal=groupRanges[groupIds[i]].min;maxVal=groupRanges[groupIds[i]].max;if(groupRanges[groupIds[i]].yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=minLeft>minVal?minVal:minLeft;maxLeft=maxLeft<maxVal?maxVal:maxLeft}else{yAxisRightUsed=true;minRight=minRight>minVal?minVal:minRight;maxRight=maxRight<maxVal?maxVal:maxRight}}}}if(yAxisLeftUsed==true){this.yAxisLeft.setRange(minLeft,maxLeft)}if(yAxisRightUsed==true){this.yAxisRight.setRange(minRight,maxRight)}}resized=this._toggleAxisVisiblity(yAxisLeftUsed,this.yAxisLeft)||resized;resized=this._toggleAxisVisiblity(yAxisRightUsed,this.yAxisRight)||resized;if(yAxisRightUsed==true&&yAxisLeftUsed==true){this.yAxisLeft.drawIcons=true;this.yAxisRight.drawIcons=true}else{this.yAxisLeft.drawIcons=false;this.yAxisRight.drawIcons=false}this.yAxisRight.master=!yAxisLeftUsed;this.yAxisRight.masterAxis=this.yAxisLeft;if(this.yAxisRight.master==false){if(yAxisRightUsed==true){this.yAxisLeft.lineOffset=this.yAxisRight.width}else{this.yAxisLeft.lineOffset=0}resized=this.yAxisLeft.redraw()||resized;resized=this.yAxisRight.redraw()||resized}else{resized=this.yAxisRight.redraw()||resized}var tempGroups=[\"__barStackLeft\",\"__barStackRight\",\"__lineStackLeft\",\"__lineStackRight\"];for(i=0;i<tempGroups.length;i++){if(groupIds.indexOf(tempGroups[i])!=-1){groupIds.splice(groupIds.indexOf(tempGroups[i]),1)}}return resized};LineGraph.prototype._toggleAxisVisiblity=function(axisUsed,axis){var changed=false;if(axisUsed==false){if(axis.dom.frame.parentNode&&axis.hidden==false){axis.hide();changed=true}}else{if(!axis.dom.frame.parentNode&&axis.hidden==true){axis.show();changed=true}}return changed};LineGraph.prototype._convertXcoordinates=function(datapoints){var toScreen=this.body.util.toScreen;for(var i=0;i<datapoints.length;i++){datapoints[i].screen_x=toScreen(datapoints[i].x)+this.props.width;datapoints[i].screen_y=datapoints[i].y;if(datapoints[i].end!=undefined){datapoints[i].screen_end=toScreen(datapoints[i].end)+this.props.width}else{datapoints[i].screen_end=undefined}}};LineGraph.prototype._convertYcoordinates=function(datapoints,group){var axis=this.yAxisLeft;var svgHeight=Number(this.svg.style.height.replace(\"px\",\"\"));if(group.options.yAxisOrientation==\"right\"){axis=this.yAxisRight}for(var i=0;i<datapoints.length;i++){datapoints[i].screen_y=Math.round(axis.convertValue(datapoints[i].y))}group.setZeroPosition(Math.min(svgHeight,axis.convertValue(0)))};module.exports=LineGraph},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);var DataScale=__webpack_require__(108);function DataAxis(body,options,svg,linegraphOptions){this.id=util.randomUUID();this.body=body;this.defaultOptions={orientation:\"left\",showMinorLabels:true,showMajorLabels:true,icons:false,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:\"40px\",visible:true,alignZeros:true,left:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}},right:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}}};this.linegraphOptions=linegraphOptions;this.linegraphSVG=svg;this.props={};this.DOMelements={lines:{},labels:{},title:{}};this.dom={};this.scale=undefined;this.range={start:0,end:0};this.options=util.extend({},this.defaultOptions);this.conversionFactor=1;this.setOptions(options);this.width=Number((\"\"+this.options.width).replace(\"px\",\"\"));this.minWidth=this.width;this.height=this.linegraphSVG.getBoundingClientRect().height;this.hidden=false;this.stepPixels=25;this.zeroCrossing=-1;this.amountOfSteps=-1;this.lineOffset=0;this.master=true;this.masterAxis=null;this.svgElements={};this.iconsRemoved=false;this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var me=this;this.body.emitter.on(\"verticalDrag\",function(){me.dom.lineContainer.style.top=me.body.domProps.scrollTop+\"px\"})}DataAxis.prototype=new Component;DataAxis.prototype.addGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1};DataAxis.prototype.updateGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.amountOfGroups+=1}this.groups[label]=graphOptions};DataAxis.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};DataAxis.prototype.setOptions=function(options){if(options){var redraw=false;if(this.options.orientation!=options.orientation&&options.orientation!==undefined){redraw=true}var fields=[\"orientation\",\"showMinorLabels\",\"showMajorLabels\",\"icons\",\"majorLinesOffset\",\"minorLinesOffset\",\"labelOffsetX\",\"labelOffsetY\",\"iconWidth\",\"width\",\"visible\",\"left\",\"right\",\"alignZeros\"];util.selectiveDeepExtend(fields,this.options,options);this.minWidth=Number((\"\"+this.options.width).replace(\"px\",\"\"));if(redraw===true&&this.dom.frame){this.hide();this.show()}}};DataAxis.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.style.width=this.options.width;this.dom.frame.style.height=this.height;this.dom.lineContainer=document.createElement(\"div\");this.dom.lineContainer.style.width=\"100%\";this.dom.lineContainer.style.height=this.height;this.dom.lineContainer.style.position=\"relative\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=\"0px\";this.svg.style.height=\"100%\";this.svg.style.width=\"100%\";this.svg.style.display=\"block\";this.dom.frame.appendChild(this.svg)};DataAxis.prototype._redrawGroupIcons=function(){DOMutil.prepareElements(this.svgElements);var x;var iconWidth=this.options.iconWidth;var iconHeight=15;var iconOffset=4;var y=iconOffset+.5*iconHeight;if(this.options.orientation===\"left\"){x=iconOffset}else{x=this.width-iconWidth-iconOffset}var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+iconOffset}}DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=false};DataAxis.prototype._cleanupIcons=function(){if(this.iconsRemoved===false){DOMutil.prepareElements(this.svgElements);DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=true}};DataAxis.prototype.show=function(){this.hidden=false;if(!this.dom.frame.parentNode){if(this.options.orientation===\"left\"){this.body.dom.left.appendChild(this.dom.frame)}else{this.body.dom.right.appendChild(this.dom.frame)}}if(!this.dom.lineContainer.parentNode){this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)}};DataAxis.prototype.hide=function(){this.hidden=true;if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.lineContainer.parentNode){this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)}};DataAxis.prototype.setRange=function(start,end){this.range.start=start;this.range.end=end};DataAxis.prototype.redraw=function(){var resized=false;var activeGroups=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+\"px\";for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){activeGroups++}}}if(this.amountOfGroups===0||activeGroups===0){this.hide()}else{this.show();this.height=Number(this.linegraphSVG.style.height.replace(\"px\",\"\"));this.dom.lineContainer.style.height=this.height+\"px\";this.width=this.options.visible===true?Number((\"\"+this.options.width).replace(\"px\",\"\")):0;var props=this.props;var frame=this.dom.frame;frame.className=\"vis-data-axis\";this._calculateCharSize();var orientation=this.options.orientation;var showMinorLabels=this.options.showMinorLabels;var showMajorLabels=this.options.showMajorLabels;props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset;props.minorLineHeight=1;props.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset;props.majorLineHeight=1;if(orientation===\"left\"){frame.style.top=\"0\";frame.style.left=\"0\";frame.style.bottom=\"\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.left.width;this.props.height=this.body.domProps.left.height}else{frame.style.top=\"\";frame.style.bottom=\"0\";frame.style.left=\"0\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.right.width;this.props.height=this.body.domProps.right.height}resized=this._redrawLabels();resized=this._isResized()||resized;if(this.options.icons===true){this._redrawGroupIcons()}else{this._cleanupIcons()}this._redrawTitle(orientation)}return resized};DataAxis.prototype._redrawLabels=function(){var _this=this;var resized=false;DOMutil.prepareElements(this.DOMelements.lines);DOMutil.prepareElements(this.DOMelements.labels);var orientation=this.options[\"orientation\"];var customRange=this.options[orientation].range!=undefined?this.options[orientation].range:{};var autoScaleEnd=true;if(customRange.max!=undefined){this.range.end=customRange.max;autoScaleEnd=false}var autoScaleStart=true;if(customRange.min!=undefined){this.range.start=customRange.min;autoScaleStart=false}this.scale=new DataScale(this.range.start,this.range.end,autoScaleStart,autoScaleEnd,this.dom.frame.offsetHeight,this.props.majorCharHeight,this.options.alignZeros,this.options[orientation].format);if(this.master===false&&this.masterAxis!=undefined){this.scale.followScale(this.masterAxis.scale)}this.maxLabelSize=0;var lines=this.scale.getLines();lines.forEach(function(line){var y=line.y;var isMajor=line.major;if(_this.options[\"showMinorLabels\"]&&isMajor===false){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-minor\",_this.props.minorCharHeight)}if(isMajor){if(y>=0){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-major\",_this.props.majorCharHeight)}}if(_this.master===true){if(isMajor){_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-major\",_this.options.majorLinesOffset,_this.props.majorLineWidth)}else{_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-minor\",_this.options.minorLinesOffset,_this.props.minorLineWidth)}}});var titleWidth=0;if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){titleWidth=this.props.titleCharHeight}var offset=this.options.icons===true?Math.max(this.options.iconWidth,titleWidth)+this.options.labelOffsetX+15:titleWidth+this.options.labelOffsetX+15;if(this.maxLabelSize>this.width-offset&&this.options.visible===true){this.width=this.maxLabelSize+offset;this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else if(this.maxLabelSize<this.width-offset&&this.options.visible===true&&this.width>this.minWidth){this.width=Math.max(this.minWidth,this.maxLabelSize+offset);this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else{DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);resized=false}return resized};DataAxis.prototype.convertValue=function(value){return this.scale.convertValue(value)};DataAxis.prototype.screenToValue=function(x){return this.scale.screenToValue(x)};DataAxis.prototype._redrawLabel=function(y,text,orientation,className,characterHeight){var label=DOMutil.getDOMElement(\"div\",this.DOMelements.labels,this.dom.frame);label.className=className;label.innerHTML=text;if(orientation===\"left\"){label.style.left=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"right\"}else{label.style.right=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"left\"}label.style.top=y-.5*characterHeight+this.options.labelOffsetY+\"px\";text+=\"\";var largestWidth=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);if(this.maxLabelSize<text.length*largestWidth){this.maxLabelSize=text.length*largestWidth}};DataAxis.prototype._redrawLine=function(y,orientation,className,offset,width){if(this.master===true){\nvar line=DOMutil.getDOMElement(\"div\",this.DOMelements.lines,this.dom.lineContainer);line.className=className;line.innerHTML=\"\";if(orientation===\"left\"){line.style.left=this.width-offset+\"px\"}else{line.style.right=this.width-offset+\"px\"}line.style.width=width+\"px\";line.style.top=y+\"px\"}};DataAxis.prototype._redrawTitle=function(orientation){DOMutil.prepareElements(this.DOMelements.title);if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){var title=DOMutil.getDOMElement(\"div\",this.DOMelements.title,this.dom.frame);title.className=\"vis-y-axis vis-title vis-\"+orientation;title.innerHTML=this.options[orientation].title.text;if(this.options[orientation].title.style!==undefined){util.addCssText(title,this.options[orientation].title.style)}if(orientation===\"left\"){title.style.left=this.props.titleCharHeight+\"px\"}else{title.style.right=this.props.titleCharHeight+\"px\"}title.style.width=this.height+\"px\"}DOMutil.cleanupElements(this.DOMelements.title)};DataAxis.prototype._calculateCharSize=function(){if(!(\"minorCharHeight\"in this.props)){var textMinor=document.createTextNode(\"0\");var measureCharMinor=document.createElement(\"div\");measureCharMinor.className=\"vis-y-axis vis-minor vis-measure\";measureCharMinor.appendChild(textMinor);this.dom.frame.appendChild(measureCharMinor);this.props.minorCharHeight=measureCharMinor.clientHeight;this.props.minorCharWidth=measureCharMinor.clientWidth;this.dom.frame.removeChild(measureCharMinor)}if(!(\"majorCharHeight\"in this.props)){var textMajor=document.createTextNode(\"0\");var measureCharMajor=document.createElement(\"div\");measureCharMajor.className=\"vis-y-axis vis-major vis-measure\";measureCharMajor.appendChild(textMajor);this.dom.frame.appendChild(measureCharMajor);this.props.majorCharHeight=measureCharMajor.clientHeight;this.props.majorCharWidth=measureCharMajor.clientWidth;this.dom.frame.removeChild(measureCharMajor)}if(!(\"titleCharHeight\"in this.props)){var textTitle=document.createTextNode(\"0\");var measureCharTitle=document.createElement(\"div\");measureCharTitle.className=\"vis-y-axis vis-title vis-measure\";measureCharTitle.appendChild(textTitle);this.dom.frame.appendChild(measureCharTitle);this.props.titleCharHeight=measureCharTitle.clientHeight;this.props.titleCharWidth=measureCharTitle.clientWidth;this.dom.frame.removeChild(measureCharTitle)}};module.exports=DataAxis},function(module,exports,__webpack_require__){\"use strict\";function DataScale(start,end,autoScaleStart,autoScaleEnd,containerHeight,majorCharHeight){var zeroAlign=arguments.length>6&&arguments[6]!==undefined?arguments[6]:false;var formattingFunction=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;this.majorSteps=[1,2,5,10];this.minorSteps=[.25,.5,1,2];this.customLines=null;this.containerHeight=containerHeight;this.majorCharHeight=majorCharHeight;this._start=start;this._end=end;this.scale=1;this.minorStepIdx=-1;this.magnitudefactor=1;this.determineScale();this.zeroAlign=zeroAlign;this.autoScaleStart=autoScaleStart;this.autoScaleEnd=autoScaleEnd;this.formattingFunction=formattingFunction;if(autoScaleStart||autoScaleEnd){var me=this;var roundToMinor=function roundToMinor(value){var rounded=value-value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx]);if(value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx])>.5*(me.magnitudefactor*me.minorSteps[me.minorStepIdx])){return rounded+me.magnitudefactor*me.minorSteps[me.minorStepIdx]}else{return rounded}};if(autoScaleStart){this._start-=this.magnitudefactor*2*this.minorSteps[this.minorStepIdx];this._start=roundToMinor(this._start)}if(autoScaleEnd){this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx];this._end=roundToMinor(this._end)}this.determineScale()}}DataScale.prototype.setCharHeight=function(majorCharHeight){this.majorCharHeight=majorCharHeight};DataScale.prototype.setHeight=function(containerHeight){this.containerHeight=containerHeight};DataScale.prototype.determineScale=function(){var range=this._end-this._start;this.scale=this.containerHeight/range;var minimumStepValue=this.majorCharHeight/this.scale;var orderOfMagnitude=range>0?Math.round(Math.log(range)/Math.LN10):0;this.minorStepIdx=-1;this.magnitudefactor=Math.pow(10,orderOfMagnitude);var start=0;if(orderOfMagnitude<0){start=orderOfMagnitude}var solutionFound=false;for(var l=start;Math.abs(l)<=Math.abs(orderOfMagnitude);l++){this.magnitudefactor=Math.pow(10,l);for(var j=0;j<this.minorSteps.length;j++){var stepSize=this.magnitudefactor*this.minorSteps[j];if(stepSize>=minimumStepValue){solutionFound=true;this.minorStepIdx=j;break}}if(solutionFound===true){break}}};DataScale.prototype.is_major=function(value){return value%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0};DataScale.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]};DataScale.prototype.getFirstMajor=function(){var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(majorStep-this._start%majorStep)%majorStep)};DataScale.prototype.formatValue=function(current){var returnValue=current.toPrecision(5);if(typeof this.formattingFunction===\"function\"){returnValue=this.formattingFunction(current)}if(typeof returnValue===\"number\"){return\"\"+returnValue}else if(typeof returnValue===\"string\"){return returnValue}else{return current.toPrecision(5)}};DataScale.prototype.getLines=function(){var lines=[];var step=this.getStep();var bottomOffset=(step-this._start%step)%step;for(var i=this._start+bottomOffset;this._end-i>1e-5;i+=step){if(i!=this._start){lines.push({major:this.is_major(i),y:this.convertValue(i),val:this.formatValue(i)})}}return lines};DataScale.prototype.followScale=function(other){var oldStepIdx=this.minorStepIdx;var oldStart=this._start;var oldEnd=this._end;var me=this;var increaseMagnitude=function increaseMagnitude(){me.magnitudefactor*=2};var decreaseMagnitude=function decreaseMagnitude(){me.magnitudefactor/=2};if(other.minorStepIdx<=1&&this.minorStepIdx<=1||other.minorStepIdx>1&&this.minorStepIdx>1){}else if(other.minorStepIdx<this.minorStepIdx){this.minorStepIdx=1;if(oldStepIdx==2){increaseMagnitude()}else{increaseMagnitude();increaseMagnitude()}}else{this.minorStepIdx=2;if(oldStepIdx==1){decreaseMagnitude()}else{decreaseMagnitude();decreaseMagnitude()}}var otherZero=other.convertValue(0);var otherStep=other.getStep()*other.scale;var done=false;var count=0;while(!done&&count++<5){this.scale=otherStep/(this.minorSteps[this.minorStepIdx]*this.magnitudefactor);var newRange=this.containerHeight/this.scale;this._start=oldStart;this._end=this._start+newRange;var myOriginalZero=this._end*this.scale;var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];var majorOffset=this.getFirstMajor()-other.getFirstMajor();if(this.zeroAlign){var zeroOffset=otherZero-myOriginalZero;this._end+=zeroOffset/this.scale;this._start=this._end-newRange}else{if(!this.autoScaleStart){this._start+=majorStep-majorOffset/this.scale;this._end=this._start+newRange}else{this._start-=majorOffset/this.scale;this._end=this._start+newRange}}if(!this.autoScaleEnd&&this._end>oldEnd+1e-5){decreaseMagnitude();done=false;continue}if(!this.autoScaleStart&&this._start<oldStart-1e-5){if(this.zeroAlign&&oldStart>=0){console.warn(\"Can't adhere to given 'min' range, due to zeroalign\")}else{decreaseMagnitude();done=false;continue}}if(this.autoScaleStart&&this.autoScaleEnd&&newRange<oldEnd-oldStart){increaseMagnitude();done=false;continue}done=true}};DataScale.prototype.convertValue=function(value){return this.containerHeight-(value-this._start)*this.scale};DataScale.prototype.screenToValue=function(pixels){return(this.containerHeight-pixels)/this.scale+this._start};module.exports=DataScale},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Bars=__webpack_require__(110);var Lines=__webpack_require__(111);var Points=__webpack_require__(72);function GraphGroup(group,groupId,options,groupsUsingDefaultStyles){this.id=groupId;var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"drawPoints\",\"shaded\",\"interpolation\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];this.options=util.selectiveBridgeObject(fields,options);this.usingDefaultStyle=group.className===undefined;this.groupsUsingDefaultStyles=groupsUsingDefaultStyles;this.zeroPosition=0;this.update(group);if(this.usingDefaultStyle==true){this.groupsUsingDefaultStyles[0]+=1}this.itemsData=[];this.visible=group.visible===undefined?true:group.visible}GraphGroup.prototype.setItems=function(items){if(items!=null){this.itemsData=items;if(this.options.sort==true){util.insertSort(this.itemsData,function(a,b){return a.x>b.x?1:-1})}}else{this.itemsData=[]}};GraphGroup.prototype.getItems=function(){return this.itemsData};GraphGroup.prototype.setZeroPosition=function(pos){this.zeroPosition=pos};GraphGroup.prototype.setOptions=function(options){if(options!==undefined){var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];util.selectiveDeepExtend(fields,this.options,options);if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}}};GraphGroup.prototype.update=function(group){this.group=group;this.content=group.content||\"graph\";this.className=group.className||this.className||\"vis-graph-group\"+this.groupsUsingDefaultStyles[0]%10;this.visible=group.visible===undefined?true:group.visible;this.style=group.style;this.setOptions(group.options)};GraphGroup.prototype.getLegend=function(iconWidth,iconHeight,framework,x,y){if(framework==undefined||framework==null){var svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");framework={svg:svg,svgElements:{},options:this.options,groups:[this]}}if(x==undefined||x==null){x=0}if(y==undefined||y==null){y=.5*iconHeight}switch(this.options.style){case\"line\":Lines.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"points\":case\"point\":Points.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"bar\":Bars.drawIcon(this,x,y,iconWidth,iconHeight,framework);break}return{icon:framework.svg,label:this.content,orientation:this.options.yAxisOrientation}};GraphGroup.prototype.getYRange=function(groupData){var yMin=groupData[0].y;var yMax=groupData[0].y;for(var j=0;j<groupData.length;j++){yMin=yMin>groupData[j].y?groupData[j].y:yMin;yMax=yMax<groupData[j].y?groupData[j].y:yMax}return{min:yMin,max:yMax,yAxisOrientation:this.options.yAxisOrientation}};module.exports=GraphGroup},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);var Points=__webpack_require__(72);function Bargraph(groupId,options){}Bargraph.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");var barWidth=Math.round(.3*iconWidth);var originalWidth=group.options.barChart.width;var scale=originalWidth/barWidth;var bar1Height=Math.round(.4*iconHeight);var bar2Height=Math.round(.75*iconHeight);var offset=Math.round((iconWidth-2*barWidth)/3);DOMutil.drawBar(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,barWidth,bar1Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);DOMutil.drawBar(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,barWidth,bar2Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size/scale,className:group.className};DOMutil.drawPoint(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,groupTemplate,framework.svgElements,framework.svg);DOMutil.drawPoint(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,groupTemplate,framework.svgElements,framework.svg)}};Bargraph.draw=function(groupIds,processedGroupData,framework){var combinedData=[];var intersections={};var coreDistance;var key,drawData;var group;var i,j;var barPoints=0;for(i=0;i<groupIds.length;i++){group=framework.groups[groupIds[i]];if(group.options.style===\"bar\"){if(group.visible===true&&(framework.options.groups.visibility[groupIds[i]]===undefined||framework.options.groups.visibility[groupIds[i]]===true)){for(j=0;j<processedGroupData[groupIds[i]].length;j++){combinedData.push({screen_x:processedGroupData[groupIds[i]][j].screen_x,screen_end:processedGroupData[groupIds[i]][j].screen_end,screen_y:processedGroupData[groupIds[i]][j].screen_y,x:processedGroupData[groupIds[i]][j].x,end:processedGroupData[groupIds[i]][j].end,y:processedGroupData[groupIds[i]][j].y,groupId:groupIds[i],label:processedGroupData[groupIds[i]][j].label});barPoints+=1}}}}if(barPoints===0){return}combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});Bargraph._getDataIntersections(intersections,combinedData);for(i=0;i<combinedData.length;i++){group=framework.groups[combinedData[i].groupId];var minWidth=group.options.barChart.minWidth!=undefined?group.options.barChart.minWidth:.1*group.options.barChart.width;key=combinedData[i].screen_x;var heightOffset=0;if(intersections[key]===undefined){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth)}else{var nextKey=i+(intersections[key].amount-intersections[key].resolved);if(nextKey<combinedData.length){coreDistance=Math.abs(combinedData[nextKey].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth);intersections[key].resolved+=1;if(group.options.stack===true&&group.options.excludeFromStacking!==true){if(combinedData[i].screen_y<group.zeroPosition){heightOffset=intersections[key].accumulatedNegative;intersections[key].accumulatedNegative+=group.zeroPosition-combinedData[i].screen_y}else{heightOffset=intersections[key].accumulatedPositive;intersections[key].accumulatedPositive+=group.zeroPosition-combinedData[i].screen_y}}else if(group.options.barChart.sideBySide===true){drawData.width=drawData.width/intersections[key].amount;drawData.offset+=intersections[key].resolved*drawData.width-.5*drawData.width*(intersections[key].amount+1)}}var dataWidth=drawData.width;var start=combinedData[i].screen_x;if(combinedData[i].screen_end!=undefined){dataWidth=combinedData[i].screen_end-combinedData[i].screen_x;start+=dataWidth*.5}else{start+=drawData.offset}DOMutil.drawBar(start,combinedData[i].screen_y-heightOffset,dataWidth,group.zeroPosition-combinedData[i].screen_y,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled===true){var pointData={screen_x:combinedData[i].screen_x,screen_y:combinedData[i].screen_y-heightOffset,x:combinedData[i].x,y:combinedData[i].y,groupId:combinedData[i].groupId,label:combinedData[i].label};Points.draw([pointData],group,framework,drawData.offset)}}};Bargraph._getDataIntersections=function(intersections,combinedData){var coreDistance;for(var i=0;i<combinedData.length;i++){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-combinedData[i].screen_x)}if(i>0){coreDistance=Math.min(coreDistance,Math.abs(combinedData[i-1].screen_x-combinedData[i].screen_x))}if(coreDistance===0){if(intersections[combinedData[i].screen_x]===undefined){intersections[combinedData[i].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}}intersections[combinedData[i].screen_x].amount+=1}}};Bargraph._getSafeDrawData=function(coreDistance,group,minWidth){var width,offset;if(coreDistance<group.options.barChart.width&&coreDistance>0){width=coreDistance<minWidth?minWidth:coreDistance;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*coreDistance}else if(group.options.barChart.align===\"right\"){offset+=.5*coreDistance}}else{width=group.options.barChart.width;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*group.options.barChart.width}else if(group.options.barChart.align===\"right\"){offset+=.5*group.options.barChart.width}}return{width:width,offset:offset}};Bargraph.getStackedYRange=function(combinedData,groupRanges,groupIds,groupLabel,orientation){if(combinedData.length>0){combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});var intersections={};Bargraph._getDataIntersections(intersections,combinedData);groupRanges[groupLabel]=Bargraph._getStackedYRange(intersections,combinedData);groupRanges[groupLabel].yAxisOrientation=orientation;groupIds.push(groupLabel)}};Bargraph._getStackedYRange=function(intersections,combinedData){var key;var yMin=combinedData[0].screen_y;var yMax=combinedData[0].screen_y;for(var i=0;i<combinedData.length;i++){key=combinedData[i].screen_x;if(intersections[key]===undefined){yMin=yMin>combinedData[i].screen_y?combinedData[i].screen_y:yMin;yMax=yMax<combinedData[i].screen_y?combinedData[i].screen_y:yMax}else{if(combinedData[i].screen_y<0){intersections[key].accumulatedNegative+=combinedData[i].screen_y}else{intersections[key].accumulatedPositive+=combinedData[i].screen_y}}}for(var xpos in intersections){if(intersections.hasOwnProperty(xpos)){yMin=yMin>intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMin;yMin=yMin>intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMin;yMax=yMax<intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMax;yMax=yMax<intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMax}}return{min:yMin,max:yMax}};module.exports=Bargraph},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);function Line(groupId,options){}Line.calcPath=function(dataset,group){if(dataset!=null){if(dataset.length>0){var d=[];if(group.options.interpolation.enabled==true){d=Line._catmullRom(dataset,group)}else{d=Line._linear(dataset)}return d}}};Line.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var path,fillPath;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}path.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\"\");if(group.options.shaded.enabled==true){fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);if(group.options.shaded.orientation==\"top\"){fillPath.setAttributeNS(null,\"d\",\"M\"+x+\", \"+(y-fillHeight)+\"L\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\" L\"+(x+iconWidth)+\",\"+(y-fillHeight))}else{fillPath.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" \"+\"L\"+x+\",\"+(y+fillHeight)+\" \"+\"L\"+(x+iconWidth)+\",\"+(y+fillHeight)+\"L\"+(x+iconWidth)+\",\"+y)}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-icon-fill\");if(group.options.shaded.style!==undefined&&group.options.shaded.style!==\"\"){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}}if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size,className:group.className};DOMutil.drawPoint(x+.5*iconWidth,y,groupTemplate,framework.svgElements,framework.svg)}};Line.drawShading=function(pathArray,group,subPathArray,framework){if(group.options.shaded.enabled==true){var svgHeight=Number(framework.svg.style.height.replace(\"px\",\"\"));var fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}var dFill;var zero=0;if(group.options.shaded.orientation==\"top\"){zero=0}else if(group.options.shaded.orientation==\"bottom\"){zero=svgHeight}else{zero=Math.min(Math.max(0,group.zeroPosition),svgHeight)}if(group.options.shaded.orientation==\"group\"&&subPathArray!=null&&subPathArray!=undefined){dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" L\"+subPathArray[subPathArray.length-1][0]+\",\"+subPathArray[subPathArray.length-1][1]+\" \"+this.serializePath(subPathArray,type,true)+subPathArray[0][0]+\",\"+subPathArray[0][1]+\" Z\"}else{dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" V\"+zero+\" H\"+pathArray[0][0]+\" Z\"}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-fill\");if(group.options.shaded.style!==undefined){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}fillPath.setAttributeNS(null,\"d\",dFill)}};Line.draw=function(pathArray,group,framework){if(pathArray!=null&&pathArray!=undefined){var path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}path.setAttributeNS(null,\"d\",\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false))}};Line.serializePath=function(pathArray,type,inverse){if(pathArray.length<2){return\"\"}var d=type;var i;if(inverse){for(i=pathArray.length-2;i>0;i--){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}else{for(i=1;i<pathArray.length;i++){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}return d};Line._catmullRomUniform=function(data){var p0,p1,p2,p3,bp1,bp2;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var normalization=1/6;var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;bp1={screen_x:(-p0.screen_x+6*p1.screen_x+p2.screen_x)*normalization,screen_y:(-p0.screen_y+6*p1.screen_y+p2.screen_y)*normalization};bp2={screen_x:(p1.screen_x+6*p2.screen_x-p3.screen_x)*normalization,screen_y:(p1.screen_y+6*p2.screen_y-p3.screen_y)*normalization};d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d};Line._catmullRom=function(data,group){var alpha=group.options.interpolation.alpha;if(alpha==0||alpha===undefined){return this._catmullRomUniform(data)}else{var p0,p1,p2,p3,bp1,bp2,d1,d2,d3,A,B,N,M;var d3powA,d2powA,d3pow2A,d2pow2A,d1pow2A,d1powA;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;d1=Math.sqrt(Math.pow(p0.screen_x-p1.screen_x,2)+Math.pow(p0.screen_y-p1.screen_y,2));d2=Math.sqrt(Math.pow(p1.screen_x-p2.screen_x,2)+Math.pow(p1.screen_y-p2.screen_y,2));d3=Math.sqrt(Math.pow(p2.screen_x-p3.screen_x,2)+Math.pow(p2.screen_y-p3.screen_y,2));d3powA=Math.pow(d3,alpha);d3pow2A=Math.pow(d3,2*alpha);d2powA=Math.pow(d2,alpha);d2pow2A=Math.pow(d2,2*alpha);d1powA=Math.pow(d1,alpha);d1pow2A=Math.pow(d1,2*alpha);A=2*d1pow2A+3*d1powA*d2powA+d2pow2A;B=2*d3pow2A+3*d3powA*d2powA+d2pow2A;N=3*d1powA*(d1powA+d2powA);if(N>0){N=1/N}M=3*d3powA*(d3powA+d2powA);if(M>0){M=1/M}bp1={screen_x:(-d2pow2A*p0.screen_x+A*p1.screen_x+d1pow2A*p2.screen_x)*N,screen_y:(-d2pow2A*p0.screen_y+A*p1.screen_y+d1pow2A*p2.screen_y)*N};bp2={screen_x:(d3pow2A*p1.screen_x+B*p2.screen_x-d2pow2A*p3.screen_x)*M,screen_y:(d3pow2A*p1.screen_y+B*p2.screen_y-d2pow2A*p3.screen_y)*M};if(bp1.screen_x==0&&bp1.screen_y==0){bp1=p1}if(bp2.screen_x==0&&bp2.screen_y==0){bp2=p2}d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d}};Line._linear=function(data){var d=[];for(var i=0;i<data.length;i++){d.push([data[i].screen_x,data[i].screen_y])}return d};module.exports=Line},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);function Legend(body,options,side,linegraphOptions){this.body=body;this.defaultOptions={enabled:false,icons:true,iconSize:20,iconSpacing:6,left:{visible:true,position:\"top-left\"},right:{visible:true,position:\"top-right\"}};this.side=side;this.options=util.extend({},this.defaultOptions);this.linegraphOptions=linegraphOptions;this.svgElements={};this.dom={};this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};this.setOptions(options)}Legend.prototype=new Component;Legend.prototype.clear=function(){this.groups={};this.amountOfGroups=0};Legend.prototype.addGroup=function(label,graphOptions){if(graphOptions.options.excludeFromLegend!=true){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1}};Legend.prototype.updateGroup=function(label,graphOptions){this.groups[label]=graphOptions};Legend.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};Legend.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-legend\";this.dom.frame.style.position=\"absolute\";this.dom.frame.style.top=\"10px\";this.dom.frame.style.display=\"block\";this.dom.textArea=document.createElement(\"div\");this.dom.textArea.className=\"vis-legend-text\";this.dom.textArea.style.position=\"relative\";this.dom.textArea.style.top=\"0px\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=0+\"px\";this.svg.style.width=this.options.iconSize+5+\"px\";this.svg.style.height=\"100%\";this.dom.frame.appendChild(this.svg);this.dom.frame.appendChild(this.dom.textArea)};Legend.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};Legend.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};Legend.prototype.setOptions=function(options){var fields=[\"enabled\",\"orientation\",\"icons\",\"left\",\"right\"];util.selectiveDeepExtend(fields,this.options,options)};Legend.prototype.redraw=function(){var activeGroups=0;var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){activeGroups++}}if(this.options[this.side].visible==false||this.amountOfGroups==0||this.options.enabled==false||activeGroups==0){this.hide()}else{this.show();if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"bottom-left\"){this.dom.frame.style.left=\"4px\";this.dom.frame.style.textAlign=\"left\";this.dom.textArea.style.textAlign=\"left\";this.dom.textArea.style.left=this.options.iconSize+15+\"px\";this.dom.textArea.style.right=\"\";this.svg.style.left=0+\"px\";this.svg.style.right=\"\"}else{this.dom.frame.style.right=\"4px\";this.dom.frame.style.textAlign=\"right\";this.dom.textArea.style.textAlign=\"right\";this.dom.textArea.style.right=this.options.iconSize+15+\"px\";this.dom.textArea.style.left=\"\";this.svg.style.right=0+\"px\";this.svg.style.left=\"\"}if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"top-right\"){this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.bottom=\"\"}else{var scrollableHeight=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+scrollableHeight+Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.top=\"\"}if(this.options.icons==false){this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+\"px\";this.dom.textArea.style.right=\"\";this.dom.textArea.style.left=\"\";this.svg.style.width=\"0px\"}else{this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+\"px\";this.drawLegendIcons()}var content=\"\";for(i=0;i<groupArray.length;i++){groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){content+=this.groups[groupId].content+\"<br />\"}}this.dom.textArea.innerHTML=content;this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+\"px\"}};Legend.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});DOMutil.resetElements(this.svgElements);var padding=window.getComputedStyle(this.dom.frame).paddingTop;var iconOffset=Number(padding.replace(\"px\",\"\"));var x=iconOffset;var iconWidth=this.options.iconSize;var iconHeight=.75*this.options.iconSize;var y=iconOffset+.5*iconHeight+3;this.svg.style.width=iconWidth+5+iconOffset+\"px\";for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+this.options.iconSpacing}}}};module.exports=Legend},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},yAxisOrientation:{string:[\"left\",\"right\"]},defaultGroup:{string:string},sort:{boolean:bool},sampling:{boolean:bool},stack:{boolean:bool},graphHeight:{string:string,number:number},shaded:{enabled:{boolean:bool},orientation:{string:[\"bottom\",\"top\",\"zero\",\"group\"]},groupId:{object:object},__type__:{boolean:bool,object:object}},style:{string:[\"line\",\"bar\",\"points\"]},barChart:{width:{number:number},minWidth:{number:number},sideBySide:{boolean:bool},align:{string:[\"left\",\"center\",\"right\"]},__type__:{object:object}},interpolation:{enabled:{boolean:bool},parametrization:{string:[\"centripetal\",\"chordal\",\"uniform\"]},alpha:{number:number},__type__:{object:object,boolean:bool}},drawPoints:{enabled:{boolean:bool},onRender:{function:\"function\"},size:{number:number},style:{string:[\"square\",\"circle\"]},__type__:{object:object,boolean:bool,function:\"function\"}},dataAxis:{showMinorLabels:{boolean:bool},showMajorLabels:{boolean:bool},icons:{boolean:bool},width:{string:string,number:number},visible:{boolean:bool},alignZeros:{boolean:bool},left:{range:{min:{\nnumber:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},right:{range:{min:{number:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},__type__:{object:object}},legend:{enabled:{boolean:bool},icons:{boolean:bool},left:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},right:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},__type__:{object:object,boolean:bool}},groups:{visibility:{any:any},__type__:{object:object}},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},moment:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},orientation:{string:string},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},start:{date:date,number:number,string:string,moment:moment},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},zIndex:{number:number},__type__:{object:object}};var configureOptions={global:{sort:true,sampling:true,stack:false,shaded:{enabled:false,orientation:[\"zero\",\"top\",\"bottom\",\"group\"]},style:[\"line\",\"bar\",\"points\"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:false,align:[\"left\",\"center\",\"right\"]},interpolation:{enabled:true,parametrization:[\"centripetal\",\"chordal\",\"uniform\"]},drawPoints:{enabled:true,size:[6,2,30,1],style:[\"square\",\"circle\"]},dataAxis:{showMinorLabels:true,showMajorLabels:true,icons:false,width:[40,0,200,1],visible:true,alignZeros:true,left:{title:{text:\"\",style:\"\"}},right:{title:{text:\"\",style:\"\"}}},legend:{enabled:false,icons:true,left:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},right:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]}},autoResize:true,clickToUse:false,end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},height:\"\",locale:\"\",max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:true,orientation:[\"both\",\"bottom\",\"top\"],showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,start:\"\",width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function parseDOT(data){dot=data;return parseGraph()}var NODE_ATTR_MAPPING={fontsize:\"font.size\",fontcolor:\"font.color\",labelfontcolor:\"font.color\",fontname:\"font.face\",color:[\"color.border\",\"color.background\"],fillcolor:\"color.background\",tooltip:\"title\",labeltooltip:\"title\"};var EDGE_ATTR_MAPPING=(0,_create2[\"default\"])(NODE_ATTR_MAPPING);EDGE_ATTR_MAPPING.color=\"color.color\";EDGE_ATTR_MAPPING.style=\"dashes\";var TOKENTYPE={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3};var DELIMITERS={\"{\":true,\"}\":true,\"[\":true,\"]\":true,\";\":true,\"=\":true,\",\":true,\"->\":true,\"--\":true};var dot=\"\";var index=0;var c=\"\";var token=\"\";var tokenType=TOKENTYPE.NULL;function first(){index=0;c=dot.charAt(0)}function next(){index++;c=dot.charAt(index)}function nextPreview(){return dot.charAt(index+1)}var regexAlphaNumeric=/[a-zA-Z_0-9.:#]/;function isAlphaNumeric(c){return regexAlphaNumeric.test(c)}function merge(a,b){if(!a){a={}}if(b){for(var name in b){if(b.hasOwnProperty(name)){a[name]=b[name]}}}return a}function setValue(obj,path,value){var keys=path.split(\".\");var o=obj;while(keys.length){var key=keys.shift();if(keys.length){if(!o[key]){o[key]={}}o=o[key]}else{o[key]=value}}}function addNode(graph,node){var i,len;var current=null;var graphs=[graph];var root=graph;while(root.parent){graphs.push(root.parent);root=root.parent}if(root.nodes){for(i=0,len=root.nodes.length;i<len;i++){if(node.id===root.nodes[i].id){current=root.nodes[i];break}}}if(!current){current={id:node.id};if(graph.node){current.attr=merge(current.attr,graph.node)}}for(i=graphs.length-1;i>=0;i--){var g=graphs[i];if(!g.nodes){g.nodes=[]}if(g.nodes.indexOf(current)===-1){g.nodes.push(current)}}if(node.attr){current.attr=merge(current.attr,node.attr)}}function addEdge(graph,edge){if(!graph.edges){graph.edges=[]}graph.edges.push(edge);if(graph.edge){var attr=merge({},graph.edge);edge.attr=merge(attr,edge.attr)}}function createEdge(graph,from,to,type,attr){var edge={from:from,to:to,type:type};if(graph.edge){edge.attr=merge({},graph.edge)}edge.attr=merge(edge.attr||{},attr);return edge}function getToken(){tokenType=TOKENTYPE.NULL;token=\"\";while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}do{var isComment=false;if(c===\"#\"){var i=index-1;while(dot.charAt(i)===\" \"||dot.charAt(i)===\"\\t\"){i--}if(dot.charAt(i)===\"\\n\"||dot.charAt(i)===\"\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}}if(c===\"/\"&&nextPreview()===\"/\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}if(c===\"/\"&&nextPreview()===\"*\"){while(c!=\"\"){if(c===\"*\"&&nextPreview()===\"/\"){next();next();break}else{next()}}isComment=true}while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}}while(isComment);if(c===\"\"){tokenType=TOKENTYPE.DELIMITER;return}var c2=c+nextPreview();if(DELIMITERS[c2]){tokenType=TOKENTYPE.DELIMITER;token=c2;next();next();return}if(DELIMITERS[c]){tokenType=TOKENTYPE.DELIMITER;token=c;next();return}if(isAlphaNumeric(c)||c===\"-\"){token+=c;next();while(isAlphaNumeric(c)){token+=c;next()}if(token===\"false\"){token=false}else if(token===\"true\"){token=true}else if(!isNaN(Number(token))){token=Number(token)}tokenType=TOKENTYPE.IDENTIFIER;return}if(c==='\"'){next();while(c!=\"\"&&(c!='\"'||c==='\"'&&nextPreview()==='\"')){if(c==='\"'){token+=c;next()}else if(c===\"\\\\\"&&nextPreview()===\"n\"){token+=\"\\n\";next()}else{token+=c}next()}if(c!='\"'){throw newSyntaxError('End of string \" expected')}next();tokenType=TOKENTYPE.IDENTIFIER;return}tokenType=TOKENTYPE.UNKNOWN;while(c!=\"\"){token+=c;next()}throw new SyntaxError('Syntax error in part \"'+chop(token,30)+'\"')}function parseGraph(){var graph={};first();getToken();if(token===\"strict\"){graph.strict=true;getToken()}if(token===\"graph\"||token===\"digraph\"){graph.type=token;getToken()}if(tokenType===TOKENTYPE.IDENTIFIER){graph.id=token;getToken()}if(token!=\"{\"){throw newSyntaxError(\"Angle bracket { expected\")}getToken();parseStatements(graph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();if(token!==\"\"){throw newSyntaxError(\"End of file expected\")}getToken();delete graph.node;delete graph.edge;delete graph.graph;return graph}function parseStatements(graph){while(token!==\"\"&&token!=\"}\"){parseStatement(graph);if(token===\";\"){getToken()}}}function parseStatement(graph){var subgraph=parseSubgraph(graph);if(subgraph){parseEdge(graph,subgraph);return}var attr=parseAttributeStatement(graph);if(attr){return}if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}var id=token;getToken();if(token===\"=\"){getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}graph[id]=token;getToken()}else{parseNodeStatement(graph,id)}}function parseSubgraph(graph){var subgraph=null;if(token===\"subgraph\"){subgraph={};subgraph.type=\"subgraph\";getToken();if(tokenType===TOKENTYPE.IDENTIFIER){subgraph.id=token;getToken()}}if(token===\"{\"){getToken();if(!subgraph){subgraph={}}subgraph.parent=graph;subgraph.node=graph.node;subgraph.edge=graph.edge;subgraph.graph=graph.graph;parseStatements(subgraph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();delete subgraph.node;delete subgraph.edge;delete subgraph.graph;delete subgraph.parent;if(!graph.subgraphs){graph.subgraphs=[]}graph.subgraphs.push(subgraph)}return subgraph}function parseAttributeStatement(graph){if(token===\"node\"){getToken();graph.node=parseAttributeList();return\"node\"}else if(token===\"edge\"){getToken();graph.edge=parseAttributeList();return\"edge\"}else if(token===\"graph\"){getToken();graph.graph=parseAttributeList();return\"graph\"}return null}function parseNodeStatement(graph,id){var node={id:id};var attr=parseAttributeList();if(attr){node.attr=attr}addNode(graph,node);parseEdge(graph,id)}function parseEdge(graph,from){while(token===\"->\"||token===\"--\"){var to;var type=token;getToken();var subgraph=parseSubgraph(graph);if(subgraph){to=subgraph}else{if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier or subgraph expected\")}to=token;addNode(graph,{id:to});getToken()}var attr=parseAttributeList();var edge=createEdge(graph,from,to,type,attr);addEdge(graph,edge);from=to}}function parseAttributeList(){var attr=null;var edgeStyles={dashed:true,solid:false,dotted:[1,5]};while(token===\"[\"){getToken();attr={};while(token!==\"\"&&token!=\"]\"){if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute name expected\")}var name=token;getToken();if(token!=\"=\"){throw newSyntaxError(\"Equal sign = expected\")}getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute value expected\")}var value=token;if(name===\"style\"){value=edgeStyles[value]}setValue(attr,name,value);getToken();if(token==\",\"){getToken()}}if(token!=\"]\"){throw newSyntaxError(\"Bracket ] expected\")}getToken()}return attr}function newSyntaxError(message){return new SyntaxError(message+', got \"'+chop(token,30)+'\" (char '+index+\")\")}function chop(text,maxLength){return text.length<=maxLength?text:text.substr(0,27)+\"...\"}function forEach2(array1,array2,fn){if(Array.isArray(array1)){array1.forEach(function(elem1){if(Array.isArray(array2)){array2.forEach(function(elem2){fn(elem1,elem2)})}else{fn(elem1,array2)}})}else{if(Array.isArray(array2)){array2.forEach(function(elem2){fn(array1,elem2)})}else{fn(array1,array2)}}}function setProp(object,path,value){var names=path.split(\".\");var prop=names.pop();var obj=object;for(var i=0;i<names.length;i++){var name=names[i];if(!(name in obj)){obj[name]={}}obj=obj[name]}obj[prop]=value;return object}function convertAttr(attr,mapping){var converted={};for(var prop in attr){if(attr.hasOwnProperty(prop)){var visProp=mapping[prop];if(Array.isArray(visProp)){visProp.forEach(function(visPropI){setProp(converted,visPropI,attr[prop])})}else if(typeof visProp===\"string\"){setProp(converted,visProp,attr[prop])}else{setProp(converted,prop,attr[prop])}}}return converted}function DOTToGraph(data){var dotData=parseDOT(data);var graphData={nodes:[],edges:[],options:{}};if(dotData.nodes){dotData.nodes.forEach(function(dotNode){var graphNode={id:dotNode.id,label:String(dotNode.label||dotNode.id)};merge(graphNode,convertAttr(dotNode.attr,NODE_ATTR_MAPPING));if(graphNode.image){graphNode.shape=\"image\"}graphData.nodes.push(graphNode)})}if(dotData.edges){var convertEdge=function convertEdge(dotEdge){var graphEdge={from:dotEdge.from,to:dotEdge.to};merge(graphEdge,convertAttr(dotEdge.attr,EDGE_ATTR_MAPPING));graphEdge.arrows=dotEdge.type===\"->\"?\"to\":undefined;return graphEdge};dotData.edges.forEach(function(dotEdge){var from,to;if(dotEdge.from instanceof Object){from=dotEdge.from.nodes}else{from={id:dotEdge.from}}if(dotEdge.to instanceof Object){to=dotEdge.to.nodes}else{to={id:dotEdge.to}}if(dotEdge.from instanceof Object&&dotEdge.from.edges){dotEdge.from.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}forEach2(from,to,function(from,to){var subEdge=createEdge(graphData,from.id,to.id,dotEdge.type,dotEdge.attr);var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)});if(dotEdge.to instanceof Object&&dotEdge.to.edges){dotEdge.to.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}})}if(dotData.attr){graphData.options=dotData.attr}return graphData}exports.parseDOT=parseDOT;exports.DOTToGraph=DOTToGraph},function(module,exports,__webpack_require__){\"use strict\";function parseGephi(gephiJSON,optionsObj){var edges=[];var nodes=[];var options={edges:{inheritColor:false},nodes:{fixed:false,parseColor:false}};if(optionsObj!==undefined){if(optionsObj.fixed!==undefined){options.nodes.fixed=optionsObj.fixed}if(optionsObj.parseColor!==undefined){options.nodes.parseColor=optionsObj.parseColor}if(optionsObj.inheritColor!==undefined){options.edges.inheritColor=optionsObj.inheritColor}}var gEdges=gephiJSON.edges;var gNodes=gephiJSON.nodes;for(var i=0;i<gEdges.length;i++){var edge={};var gEdge=gEdges[i];edge[\"id\"]=gEdge.id;edge[\"from\"]=gEdge.source;edge[\"to\"]=gEdge.target;edge[\"attributes\"]=gEdge.attributes;edge[\"label\"]=gEdge.label;edge[\"title\"]=gEdge.attributes!==undefined?gEdge.attributes.title:undefined;if(gEdge[\"type\"]===\"Directed\"){edge[\"arrows\"]=\"to\"}if(gEdge.color&&options.inheritColor===false){edge[\"color\"]=gEdge.color}edges.push(edge)}for(var j=0;j<gNodes.length;j++){var node={};var gNode=gNodes[j];node[\"id\"]=gNode.id;node[\"attributes\"]=gNode.attributes;node[\"x\"]=gNode.x;node[\"y\"]=gNode.y;node[\"label\"]=gNode.label;node[\"title\"]=gNode.attributes!==undefined?gNode.attributes.title:gNode.title;if(options.nodes.parseColor===true){node[\"color\"]=gNode.color}else{node[\"color\"]=gNode.color!==undefined?{background:gNode.color,border:gNode.color,highlight:{background:gNode.color,border:gNode.color},hover:{background:gNode.color,border:gNode.color}}:undefined}node[\"size\"]=gNode.size;node[\"fixed\"]=options.nodes.fixed&&gNode.x!==undefined&&gNode.y!==undefined;nodes.push(node)}return{nodes:nodes,edges:edges}}exports.parseGephi=parseGephi},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _CachedImage=__webpack_require__(185);var _CachedImage2=_interopRequireDefault(_CachedImage);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Images=function(){function Images(callback){(0,_classCallCheck3[\"default\"])(this,Images);this.images={};this.imageBroken={};this.callback=callback}(0,_createClass3[\"default\"])(Images,[{key:\"_tryloadBrokenUrl\",value:function _tryloadBrokenUrl(url,brokenUrl,imageToLoadBrokenUrlOn){if(url===undefined||imageToLoadBrokenUrlOn===undefined)return;if(brokenUrl===undefined){console.warn(\"No broken url image defined\");return}imageToLoadBrokenUrlOn.onerror=function(){console.error(\"Could not load brokenImage:\",brokenUrl)};imageToLoadBrokenUrlOn.image.src=brokenUrl}},{key:\"_redrawWithImage\",value:function _redrawWithImage(imageToRedrawWith){if(this.callback){this.callback(imageToRedrawWith)}}},{key:\"load\",value:function load(url,brokenUrl){var _this=this;var cachedImage=this.images[url];if(cachedImage)return cachedImage;var img=new _CachedImage2[\"default\"];this.images[url]=img;img.image.onload=function(){_this._fixImageCoordinates(img.image);img.init();_this._redrawWithImage(img)};img.image.onerror=function(){console.error(\"Could not load image:\",url);_this._tryloadBrokenUrl(url,brokenUrl,img)};img.image.src=url;return img}},{key:\"_fixImageCoordinates\",value:function _fixImageCoordinates(imageToCache){if(imageToCache.width===0){document.body.appendChild(imageToCache);imageToCache.width=imageToCache.offsetWidth;imageToCache.height=imageToCache.offsetHeight;document.body.removeChild(imageToCache)}}}]);return Images}();exports[\"default\"]=Images},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=__webpack_require__(191)[\"default\"];var multiFontStyle=[\"bold\",\"ital\",\"boldital\",\"mono\"];var Label=function(){function Label(body,options){var edgelabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;(0,_classCallCheck3[\"default\"])(this,Label);this.body=body;this.pointToSelf=false;this.baseSize=undefined;this.fontOptions={};this.setOptions(options);this.size={top:0,left:0,width:0,height:0,yLine:0};this.isEdgeLabel=edgelabel}(0,_createClass3[\"default\"])(Label,[{key:\"setOptions\",value:function setOptions(options){this.elementOptions=options;this.initFontOptions(options.font);if(ComponentUtil.isValidLabel(options.label)){this.labelDirty=true}else{options.label=\"\"}if(options.font!==undefined&&options.font!==null){if(typeof options.font===\"string\"){this.baseSize=this.fontOptions.size}else if((0,_typeof3[\"default\"])(options.font)===\"object\"){var size=options.font.size;if(size!==undefined){this.baseSize=size}}}}},{key:\"initFontOptions\",value:function initFontOptions(newFontOptions){var _this=this;util.forEach(multiFontStyle,function(style){_this.fontOptions[style]={}});if(Label.parseFontString(this.fontOptions,newFontOptions)){this.fontOptions.vadjust=0;return}util.forEach(newFontOptions,function(prop,n){if(prop!==undefined&&prop!==null&&(typeof prop===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(prop))!==\"object\"){_this.fontOptions[n]=prop}})}},{key:\"constrain\",value:function constrain(pile){var fontOptions={constrainWidth:false,maxWdt:-1,minWdt:-1,constrainHeight:false,minHgt:-1,valign:\"middle\"};var widthConstraint=util.topMost(pile,\"widthConstraint\");if(typeof widthConstraint===\"number\"){fontOptions.maxWdt=Number(widthConstraint);fontOptions.minWdt=Number(widthConstraint)}else if((typeof widthConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(widthConstraint))===\"object\"){var widthConstraintMaximum=util.topMost(pile,[\"widthConstraint\",\"maximum\"]);if(typeof widthConstraintMaximum===\"number\"){fontOptions.maxWdt=Number(widthConstraintMaximum)}var widthConstraintMinimum=util.topMost(pile,[\"widthConstraint\",\"minimum\"]);if(typeof widthConstraintMinimum===\"number\"){fontOptions.minWdt=Number(widthConstraintMinimum)}}var heightConstraint=util.topMost(pile,\"heightConstraint\");if(typeof heightConstraint===\"number\"){fontOptions.minHgt=Number(heightConstraint)}else if((typeof heightConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(heightConstraint))===\"object\"){var heightConstraintMinimum=util.topMost(pile,[\"heightConstraint\",\"minimum\"]);if(typeof heightConstraintMinimum===\"number\"){fontOptions.minHgt=Number(heightConstraintMinimum)}var heightConstraintValign=util.topMost(pile,[\"heightConstraint\",\"valign\"]);if(typeof heightConstraintValign===\"string\"){if(heightConstraintValign===\"top\"||heightConstraintValign===\"bottom\"){fontOptions.valign=heightConstraintValign}}}return fontOptions}},{key:\"update\",value:function update(options,pile){this.setOptions(options,true);this.propagateFonts(pile);util.deepExtend(this.fontOptions,this.constrain(pile));this.fontOptions.chooser=ComponentUtil.choosify(\"label\",pile)}},{key:\"adjustSizes\",value:function adjustSizes(margins){var widthBias=margins?margins.right+margins.left:0;if(this.fontOptions.constrainWidth){this.fontOptions.maxWdt-=widthBias;this.fontOptions.minWdt-=widthBias}var heightBias=margins?margins.top+margins.bottom:0;if(this.fontOptions.constrainHeight){this.fontOptions.minHgt-=heightBias}}},{key:\"addFontOptionsToPile\",value:function addFontOptionsToPile(dstPile,srcPile){for(var i=0;i<srcPile.length;++i){this.addFontToPile(dstPile,srcPile[i])}}},{key:\"addFontToPile\",value:function addFontToPile(pile,options){if(options===undefined)return;if(options.font===undefined||options.font===null)return;var item=options.font;pile.push(item)}},{key:\"getBasicOptions\",value:function getBasicOptions(pile){var ret={};for(var n=0;n<pile.length;++n){var fontOptions=pile[n];var tmpShorthand={};if(Label.parseFontString(tmpShorthand,fontOptions)){fontOptions=tmpShorthand}util.forEach(fontOptions,function(opt,name){if(opt===undefined)return;if(ret.hasOwnProperty(name))return;if(multiFontStyle.indexOf(name)!==-1){ret[name]={}}else{ret[name]=opt}})}return ret}},{key:\"getFontOption\",value:function getFontOption(pile,multiName,option){var multiFont=void 0;for(var n=0;n<pile.length;++n){var fontOptions=pile[n];if(fontOptions.hasOwnProperty(multiName)){multiFont=fontOptions[multiName];if(multiFont===undefined||multiFont===null)continue;var tmpShorthand={};if(Label.parseFontString(tmpShorthand,multiFont)){multiFont=tmpShorthand}if(multiFont.hasOwnProperty(option)){return multiFont[option]}}}if(this.fontOptions.hasOwnProperty(option)){return this.fontOptions[option]}throw new Error(\"Did not find value for multi-font for property: '\"+option+\"'\")}},{key:\"getFontOptions\",value:function getFontOptions(pile,multiName){var result={};var optionNames=[\"color\",\"size\",\"face\",\"mod\",\"vadjust\"];for(var i=0;i<optionNames.length;++i){var mod=optionNames[i];result[mod]=this.getFontOption(pile,multiName,mod)}return result}},{key:\"propagateFonts\",value:function propagateFonts(pile){var _this2=this;var fontPile=[];this.addFontOptionsToPile(fontPile,pile);this.fontOptions=this.getBasicOptions(fontPile);var _loop=function _loop(i){var mod=multiFontStyle[i];var modOptions=_this2.fontOptions[mod];var tmpMultiFontOptions=_this2.getFontOptions(fontPile,mod);util.forEach(tmpMultiFontOptions,function(option,n){modOptions[n]=option});modOptions.size=Number(modOptions.size);modOptions.vadjust=Number(modOptions.vadjust)};for(var i=0;i<multiFontStyle.length;++i){_loop(i)}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover){var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";if(this.elementOptions.label===undefined)return;var viewFontSize=this.fontOptions.size*this.body.view.scale;if(this.elementOptions.label&&viewFontSize<this.elementOptions.scaling.label.drawThreshold-1)return;if(viewFontSize>=this.elementOptions.scaling.label.maxVisible){viewFontSize=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale}this.calculateLabelSize(ctx,selected,hover,x,y,baseline);this._drawBackground(ctx);this._drawText(ctx,x,this.size.yLine,baseline,viewFontSize)}},{key:\"_drawBackground\",value:function _drawBackground(ctx){if(this.fontOptions.background!==undefined&&this.fontOptions.background!==\"none\"){ctx.fillStyle=this.fontOptions.background;var size=this.getSize();ctx.fillRect(size.left,size.top,size.width,size.height)}}},{key:\"_drawText\",value:function _drawText(ctx,x,y){var baseline=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"middle\";var viewFontSize=arguments[4];var _setAlignment2=this._setAlignment(ctx,x,y,baseline);var _setAlignment3=(0,_slicedToArray3[\"default\"])(_setAlignment2,2);x=_setAlignment3[0];y=_setAlignment3[1];ctx.textAlign=\"left\";x=x-this.size.width/2;if(this.fontOptions.valign&&this.size.height>this.size.labelHeight){if(this.fontOptions.valign===\"top\"){y-=(this.size.height-this.size.labelHeight)/2}if(this.fontOptions.valign===\"bottom\"){y+=(this.size.height-this.size.labelHeight)/2}}for(var i=0;i<this.lineCount;i++){var line=this.lines[i];if(line&&line.blocks){var width=0;if(this.isEdgeLabel||this.fontOptions.align===\"center\"){width+=(this.size.width-line.width)/2}else if(this.fontOptions.align===\"right\"){width+=this.size.width-line.width}for(var j=0;j<line.blocks.length;j++){var block=line.blocks[j];ctx.font=block.font;var _getColor2=this._getColor(block.color,viewFontSize,block.strokeColor),_getColor3=(0,_slicedToArray3[\"default\"])(_getColor2,2),fontColor=_getColor3[0],strokeColor=_getColor3[1];if(block.strokeWidth>0){ctx.lineWidth=block.strokeWidth;ctx.strokeStyle=strokeColor;ctx.lineJoin=\"round\"}ctx.fillStyle=fontColor;if(block.strokeWidth>0){ctx.strokeText(block.text,x+width,y+block.vadjust)}ctx.fillText(block.text,x+width,y+block.vadjust);width+=block.width}y+=line.height}}}},{key:\"_setAlignment\",value:function _setAlignment(ctx,x,y,baseline){if(this.isEdgeLabel&&this.fontOptions.align!==\"horizontal\"&&this.pointToSelf===false){x=0;y=0;var lineMargin=2;if(this.fontOptions.align===\"top\"){ctx.textBaseline=\"alphabetic\";y-=2*lineMargin}else if(this.fontOptions.align===\"bottom\"){ctx.textBaseline=\"hanging\";y+=2*lineMargin}else{ctx.textBaseline=\"middle\"}}else{ctx.textBaseline=baseline}return[x,y]}},{key:\"_getColor\",value:function _getColor(color,viewFontSize,initialStrokeColor){var fontColor=color||\"#000000\";var strokeColor=initialStrokeColor||\"#ffffff\";if(viewFontSize<=this.elementOptions.scaling.label.drawThreshold){var opacity=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-viewFontSize)));fontColor=util.overrideOpacity(fontColor,opacity);strokeColor=util.overrideOpacity(strokeColor,opacity)}return[fontColor,strokeColor]}},{key:\"getTextSize\",value:function getTextSize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;this._processLabel(ctx,selected,hover);return{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:\"getSize\",value:function getSize(){var lineMargin=2;var x=this.size.left;var y=this.size.top-.5*lineMargin;if(this.isEdgeLabel){var x2=-this.size.width*.5;switch(this.fontOptions.align){case\"middle\":x=x2;y=-this.size.height*.5;break;case\"top\":x=x2;y=-(this.size.height+lineMargin);break;case\"bottom\":x=x2;y=lineMargin;break}}var ret={left:x,top:y,width:this.size.width,height:this.size.height};return ret}},{key:\"calculateLabelSize\",value:function calculateLabelSize(ctx,selected,hover){var x=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;var y=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";this._processLabel(ctx,selected,hover);this.size.left=x-this.size.width*.5;this.size.top=y-this.size.height*.5;this.size.yLine=y+(1-this.lineCount)*.5*this.fontOptions.size;if(baseline===\"hanging\"){this.size.top+=.5*this.fontOptions.size;this.size.top+=4;this.size.yLine+=4}}},{key:\"getFormattingValues\",value:function getFormattingValues(ctx,selected,hover,mod){var getValue=function getValue(fontOptions,mod,option){if(mod===\"normal\"){if(option===\"mod\")return\"\";return fontOptions[option]}if(fontOptions[mod][option]!==undefined){return fontOptions[mod][option]}else{return fontOptions[option]}};var values={color:getValue(this.fontOptions,mod,\"color\"),size:getValue(this.fontOptions,mod,\"size\"),face:getValue(this.fontOptions,mod,\"face\"),mod:getValue(this.fontOptions,mod,\"mod\"),vadjust:getValue(this.fontOptions,mod,\"vadjust\"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};if(selected||hover){if(mod===\"normal\"&&this.fontOptions.chooser===true&&this.elementOptions.labelHighlightBold){values.mod=\"bold\"}else{if(typeof this.fontOptions.chooser===\"function\"){this.fontOptions.chooser(values,this.elementOptions.id,selected,hover)}}}var fontString=\"\";if(values.mod!==undefined&&values.mod!==\"\"){fontString+=values.mod+\" \"}fontString+=values.size+\"px \"+values.face;ctx.font=fontString.replace(/\"/g,\"\");values.font=ctx.font;values.height=values.size;return values}},{key:\"differentState\",value:function differentState(selected,hover){return selected!==this.selectedState||hover!==this.hoverState}},{key:\"_processLabelText\",value:function _processLabelText(ctx,selected,hover,inText){var splitter=new LabelSplitter(ctx,this,selected,hover);return splitter.process(inText)}},{key:\"_processLabel\",value:function _processLabel(ctx,selected,hover){if(this.labelDirty===false&&!this.differentState(selected,hover))return;var state=this._processLabelText(ctx,selected,hover,this.elementOptions.label);if(this.fontOptions.minWdt>0&&state.width<this.fontOptions.minWdt){state.width=this.fontOptions.minWdt}this.size.labelHeight=state.height;if(this.fontOptions.minHgt>0&&state.height<this.fontOptions.minHgt){state.height=this.fontOptions.minHgt}this.lines=state.lines;this.lineCount=state.lines.length;this.size.width=state.width;this.size.height=state.height;this.selectedState=selected;this.hoverState=hover;this.labelDirty=false}},{key:\"visible\",value:function visible(){if(this.size.width===0||this.size.height===0||this.elementOptions.label===undefined){return false}var viewFontSize=this.fontOptions.size*this.body.view.scale;if(viewFontSize<this.elementOptions.scaling.label.drawThreshold-1){return false}return true}}],[{key:\"parseFontString\",value:function parseFontString(outOptions,inOptions){if(!inOptions||typeof inOptions!==\"string\")return false;var newOptionsArray=inOptions.split(\" \");outOptions.size=newOptionsArray[0].replace(\"px\",\"\");outOptions.face=newOptionsArray[1];outOptions.color=newOptionsArray[2];return true}}]);return Label}();exports[\"default\"]=Label},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var EdgeBase=function(){function EdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,EdgeBase);this.body=body;this.labelModule=labelModule\n;this.options={};this.setOptions(options);this.colorDirty=true;this.color={};this.selectionWidth=2;this.hoverWidth=1.5;this.fromPoint=this.from;this.toPoint=this.to}(0,_createClass3[\"default\"])(EdgeBase,[{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to]}},{key:\"cleanup\",value:function cleanup(){return false}},{key:\"setOptions\",value:function setOptions(options){this.options=options;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.id=this.options.id}},{key:\"drawLine\",value:function drawLine(ctx,values,selected,hover,viaNode){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.lineWidth=values.width;if(values.dashes!==false){this._drawDashedLine(ctx,values,viaNode)}else{this._drawLine(ctx,values,viaNode)}}},{key:\"_drawLine\",value:function _drawLine(ctx,values,viaNode,fromPoint,toPoint){if(this.from!=this.to){this._line(ctx,values,viaNode,fromPoint,toPoint)}else{var _getCircleData2=this._getCircleData(ctx),_getCircleData3=(0,_slicedToArray3[\"default\"])(_getCircleData2,3),x=_getCircleData3[0],y=_getCircleData3[1],radius=_getCircleData3[2];this._circle(ctx,values,x,y,radius)}}},{key:\"_drawDashedLine\",value:function _drawDashedLine(ctx,values,viaNode,fromPoint,toPoint){ctx.lineCap=\"round\";var pattern=[5,5];if(Array.isArray(values.dashes)===true){pattern=values.dashes}if(ctx.setLineDash!==undefined){ctx.save();ctx.setLineDash(pattern);ctx.lineDashOffset=0;if(this.from!=this.to){this._line(ctx,values,viaNode)}else{var _getCircleData4=this._getCircleData(ctx),_getCircleData5=(0,_slicedToArray3[\"default\"])(_getCircleData4,3),x=_getCircleData5[0],y=_getCircleData5[1],radius=_getCircleData5[2];this._circle(ctx,values,x,y,radius)}ctx.setLineDash([0]);ctx.lineDashOffset=0;ctx.restore()}else{if(this.from!=this.to){ctx.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,pattern)}else{var _getCircleData6=this._getCircleData(ctx),_getCircleData7=(0,_slicedToArray3[\"default\"])(_getCircleData6,3),_x=_getCircleData7[0],_y=_getCircleData7[1],_radius=_getCircleData7[2];this._circle(ctx,values,_x,_y,_radius)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}}},{key:\"findBorderPosition\",value:function findBorderPosition(nearNode,ctx,options){if(this.from!=this.to){return this._findBorderPosition(nearNode,ctx,options)}else{return this._findBorderPositionCircle(nearNode,ctx,options)}}},{key:\"findBorderPositions\",value:function findBorderPositions(ctx){var from={};var to={};if(this.from!=this.to){from=this._findBorderPosition(this.from,ctx);to=this._findBorderPosition(this.to,ctx)}else{var _getCircleData$slice=this._getCircleData(ctx).slice(0,2),_getCircleData$slice2=(0,_slicedToArray3[\"default\"])(_getCircleData$slice,2),x=_getCircleData$slice2[0],y=_getCircleData$slice2[1];from=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});to=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.6,high:.8,direction:1})}return{from:from,to:to}}},{key:\"_getCircleData\",value:function _getCircleData(ctx){var x=void 0,y=void 0;var node=this.from;var radius=this.options.selfReferenceSize;if(ctx!==undefined){if(node.shape.width===undefined){node.shape.resize(ctx)}}if(node.shape.width>node.shape.height){x=node.x+node.shape.width*.5;y=node.y-radius}else{x=node.x+radius;y=node.y-node.shape.height*.5}return[x,y,radius]}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"_findBorderPositionCircle\",value:function _findBorderPositionCircle(node,ctx,options){var x=options.x;var y=options.y;var low=options.low;var high=options.high;var direction=options.direction;var maxIterations=10;var iteration=0;var radius=this.options.selfReferenceSize;var pos=void 0,angle=void 0,distanceToBorder=void 0,distanceToPoint=void 0,difference=void 0;var threshold=.05;var middle=(low+high)*.5;while(low<=high&&iteration<maxIterations){middle=(low+high)*.5;pos=this._pointOnCircle(x,y,radius,middle);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference>0){if(direction>0){low=middle}else{high=middle}}else{if(direction>0){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"getLineWidth\",value:function getLineWidth(selected,hover){if(selected===true){return Math.max(this.selectionWidth,.3/this.body.view.scale)}else{if(hover===true){return Math.max(this.hoverWidth,.3/this.body.view.scale)}else{return Math.max(this.options.width,.3/this.body.view.scale)}}}},{key:\"getColor\",value:function getColor(ctx,values,selected,hover){if(values.inheritsColor!==false){if(values.inheritsColor===\"both\"&&this.from.id!==this.to.id){var grd=ctx.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);var fromColor=void 0,toColor=void 0;fromColor=this.from.options.color.highlight.border;toColor=this.to.options.color.highlight.border;if(this.from.selected===false&&this.to.selected===false){fromColor=util.overrideOpacity(this.from.options.color.border,values.opacity);toColor=util.overrideOpacity(this.to.options.color.border,values.opacity)}else if(this.from.selected===true&&this.to.selected===false){toColor=this.to.options.color.border}else if(this.from.selected===false&&this.to.selected===true){fromColor=this.from.options.color.border}grd.addColorStop(0,fromColor);grd.addColorStop(1,toColor);return grd}if(values.inheritsColor===\"to\"){return util.overrideOpacity(this.to.options.color.border,values.opacity)}else{return util.overrideOpacity(this.from.options.color.border,values.opacity)}}else{return util.overrideOpacity(values.color,values.opacity)}}},{key:\"_circle\",value:function _circle(ctx,values,x,y,radius){this.enableShadow(ctx,values);ctx.beginPath();ctx.arc(x,y,radius,0,2*Math.PI,false);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getDistanceToEdge\",value:function getDistanceToEdge(x1,y1,x2,y2,x3,y3,via,values){var returnValue=0;if(this.from!=this.to){returnValue=this._getDistanceToEdge(x1,y1,x2,y2,x3,y3,via)}else{var _getCircleData8=this._getCircleData(undefined),_getCircleData9=(0,_slicedToArray3[\"default\"])(_getCircleData8,3),x=_getCircleData9[0],y=_getCircleData9[1],radius=_getCircleData9[2];var dx=x-x3;var dy=y-y3;returnValue=Math.abs(Math.sqrt(dx*dx+dy*dy)-radius)}return returnValue}},{key:\"_getDistanceToLine\",value:function _getDistanceToLine(x1,y1,x2,y2,x3,y3){var px=x2-x1;var py=y2-y1;var something=px*px+py*py;var u=((x3-x1)*px+(y3-y1)*py)/something;if(u>1){u=1}else if(u<0){u=0}var x=x1+u*px;var y=y1+u*py;var dx=x-x3;var dy=y-y3;return Math.sqrt(dx*dx+dy*dy)}},{key:\"getArrowData\",value:function getArrowData(ctx,position,viaNode,selected,hover,values){var angle=void 0;var arrowPoint=void 0;var node1=void 0;var node2=void 0;var guideOffset=void 0;var scaleFactor=void 0;var type=void 0;var lineWidth=values.width;if(position===\"from\"){node1=this.from;node2=this.to;guideOffset=.1;scaleFactor=values.fromArrowScale;type=values.fromArrowType}else if(position===\"to\"){node1=this.to;node2=this.from;guideOffset=-.1;scaleFactor=values.toArrowScale;type=values.toArrowType}else{node1=this.to;node2=this.from;scaleFactor=values.middleArrowScale;type=values.middleArrowType}if(node1!=node2){if(position!==\"middle\"){if(this.options.smooth.enabled===true){arrowPoint=this.findBorderPosition(node1,ctx,{via:viaNode});var guidePos=this.getPoint(Math.max(0,Math.min(1,arrowPoint.t+guideOffset)),viaNode);angle=Math.atan2(arrowPoint.y-guidePos.y,arrowPoint.x-guidePos.x)}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.findBorderPosition(node1,ctx)}}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.getPoint(.5,viaNode)}}else{var _getCircleData10=this._getCircleData(ctx),_getCircleData11=(0,_slicedToArray3[\"default\"])(_getCircleData10,3),x=_getCircleData11[0],y=_getCircleData11[1],radius=_getCircleData11[2];if(position===\"from\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI}else if(position===\"to\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.6,high:1,direction:1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI}else{arrowPoint=this._pointOnCircle(x,y,radius,.175);angle=3.9269908169872414}}if(position===\"middle\"&&scaleFactor<0)lineWidth*=-1;var length=15*scaleFactor+3*lineWidth;var xi=arrowPoint.x-length*.9*Math.cos(angle);var yi=arrowPoint.y-length*.9*Math.sin(angle);var arrowCore={x:xi,y:yi};return{point:arrowPoint,core:arrowCore,angle:angle,length:length,type:type}}},{key:\"drawArrowHead\",value:function drawArrowHead(ctx,values,selected,hover,arrowData){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.fillStyle=ctx.strokeStyle;ctx.lineWidth=values.width;EndPoints.draw(ctx,arrowData);this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values)}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}}]);return EdgeBase}();exports[\"default\"]=EdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EndPoint=function(){function EndPoint(){(0,_classCallCheck3[\"default\"])(this,EndPoint)}(0,_createClass3[\"default\"])(EndPoint,null,[{key:\"transform\",value:function transform(points,arrowData){if(!(points instanceof Array)){points=[points]}var x=arrowData.point.x;var y=arrowData.point.y;var angle=arrowData.angle;var length=arrowData.length;for(var i=0;i<points.length;++i){var p=points[i];var xt=p.x*Math.cos(angle)-p.y*Math.sin(angle);var yt=p.x*Math.sin(angle)+p.y*Math.cos(angle);p.x=x+length*xt;p.y=y+length*yt}}},{key:\"drawPath\",value:function drawPath(ctx,points){ctx.beginPath();ctx.moveTo(points[0].x,points[0].y);for(var i=1;i<points.length;++i){ctx.lineTo(points[i].x,points[i].y)}ctx.closePath()}}]);return EndPoint}();var Arrow=function(_EndPoint){(0,_inherits3[\"default\"])(Arrow,_EndPoint);function Arrow(){(0,_classCallCheck3[\"default\"])(this,Arrow);return(0,_possibleConstructorReturn3[\"default\"])(this,(Arrow.__proto__||(0,_getPrototypeOf2[\"default\"])(Arrow)).apply(this,arguments))}(0,_createClass3[\"default\"])(Arrow,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Arrow}(EndPoint);var Circle=function(){function Circle(){(0,_classCallCheck3[\"default\"])(this,Circle)}(0,_createClass3[\"default\"])(Circle,null,[{key:\"draw\",value:function draw(ctx,arrowData){var point={x:-.4,y:0};EndPoint.transform(point,arrowData);ctx.circle(point.x,point.y,arrowData.length*.4)}}]);return Circle}();var Bar=function(){function Bar(){(0,_classCallCheck3[\"default\"])(this,Bar)}(0,_createClass3[\"default\"])(Bar,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Bar}();var EndPoints=function(){function EndPoints(){(0,_classCallCheck3[\"default\"])(this,EndPoints)}(0,_createClass3[\"default\"])(EndPoints,null,[{key:\"draw\",value:function draw(ctx,arrowData){var type;if(arrowData.type){type=arrowData.type.toLowerCase()}switch(type){case\"circle\":Circle.draw(ctx,arrowData);break;case\"bar\":Bar.draw(ctx,arrowData);break;case\"arrow\":default:Arrow.draw(ctx,arrowData)}}}]);return EndPoints}();exports[\"default\"]=EndPoints},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=function(){function BarnesHutSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,BarnesHutSolver);this.body=body;this.physicsBody=physicsBody;this.barnesHutTree;this.setOptions(options);this.randomSeed=5}(0,_createClass3[\"default\"])(BarnesHutSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options;this.thetaInversed=1/this.options.theta;this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"solve\",value:function solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){var node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var nodeCount=nodeIndices.length;var barnesHutTree=this._formBarnesHutTree(nodes,nodeIndices);this.barnesHutTree=barnesHutTree;for(var i=0;i<nodeCount;i++){node=nodes[nodeIndices[i]];if(node.options.mass>0){this._getForceContributions(barnesHutTree.root,node)}}}}},{key:\"_getForceContributions\",value:function _getForceContributions(parentBranch,node){this._getForceContribution(parentBranch.children.NW,node);this._getForceContribution(parentBranch.children.NE,node);this._getForceContribution(parentBranch.children.SW,node);this._getForceContribution(parentBranch.children.SE,node)}},{key:\"_getForceContribution\",value:function _getForceContribution(parentBranch,node){if(parentBranch.childrenCount>0){var dx=void 0,dy=void 0,distance=void 0;dx=parentBranch.centerOfMass.x-node.x;dy=parentBranch.centerOfMass.y-node.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance*parentBranch.calcSize>this.thetaInversed){this._calculateForces(distance,dx,dy,node,parentBranch)}else{if(parentBranch.childrenCount===4){this._getForceContributions(parentBranch,node)}else{if(parentBranch.children.data.id!=node.id){this._calculateForces(distance,dx,dy,node,parentBranch)}}}}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1;dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass/Math.pow(distance,3);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}},{key:\"_formBarnesHutTree\",value:function _formBarnesHutTree(nodes,nodeIndices){var node=void 0;var nodeCount=nodeIndices.length;var minX=nodes[nodeIndices[0]].x;var minY=nodes[nodeIndices[0]].y;var maxX=nodes[nodeIndices[0]].x;var maxY=nodes[nodeIndices[0]].y;for(var i=1;i<nodeCount;i++){var _node=nodes[nodeIndices[i]];var x=_node.x;var y=_node.y;if(_node.options.mass>0){if(x<minX){minX=x}if(x>maxX){maxX=x}if(y<minY){minY=y}if(y>maxY){maxY=y}}}var sizeDiff=Math.abs(maxX-minX)-Math.abs(maxY-minY);if(sizeDiff>0){minY-=.5*sizeDiff;maxY+=.5*sizeDiff}else{minX+=.5*sizeDiff;maxX-=.5*sizeDiff}var minimumTreeSize=1e-5;var rootSize=Math.max(minimumTreeSize,Math.abs(maxX-minX));var halfRootSize=.5*rootSize;var centerX=.5*(minX+maxX),centerY=.5*(minY+maxY);var barnesHutTree={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:centerX-halfRootSize,maxX:centerX+halfRootSize,minY:centerY-halfRootSize,maxY:centerY+halfRootSize},size:rootSize,calcSize:1/rootSize,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(barnesHutTree.root);for(var _i=0;_i<nodeCount;_i++){node=nodes[nodeIndices[_i]];if(node.options.mass>0){this._placeInTree(barnesHutTree.root,node)}}return barnesHutTree}},{key:\"_updateBranchMass\",value:function _updateBranchMass(parentBranch,node){var centerOfMass=parentBranch.centerOfMass;var totalMass=parentBranch.mass+node.options.mass;var totalMassInv=1/totalMass;centerOfMass.x=centerOfMass.x*parentBranch.mass+node.x*node.options.mass;centerOfMass.x*=totalMassInv;centerOfMass.y=centerOfMass.y*parentBranch.mass+node.y*node.options.mass;centerOfMass.y*=totalMassInv;parentBranch.mass=totalMass;var biggestSize=Math.max(Math.max(node.height,node.radius),node.width);parentBranch.maxWidth=parentBranch.maxWidth<biggestSize?biggestSize:parentBranch.maxWidth}},{key:\"_placeInTree\",value:function _placeInTree(parentBranch,node,skipMassUpdate){if(skipMassUpdate!=true||skipMassUpdate===undefined){this._updateBranchMass(parentBranch,node)}var range=parentBranch.children.NW.range;var region=void 0;if(range.maxX>node.x){if(range.maxY>node.y){region=\"NW\"}else{region=\"SW\"}}else{if(range.maxY>node.y){region=\"NE\"}else{region=\"SE\"}}this._placeInRegion(parentBranch,node,region)}},{key:\"_placeInRegion\",value:function _placeInRegion(parentBranch,node,region){var children=parentBranch.children[region];switch(children.childrenCount){case 0:children.children.data=node;children.childrenCount=1;this._updateBranchMass(children,node);break;case 1:if(children.children.data.x===node.x&&children.children.data.y===node.y){node.x+=this.seededRandom();node.y+=this.seededRandom()}else{this._splitBranch(children);this._placeInTree(children,node)}break;case 4:this._placeInTree(children,node);break}}},{key:\"_splitBranch\",value:function _splitBranch(parentBranch){var containedNode=null;if(parentBranch.childrenCount===1){containedNode=parentBranch.children.data;parentBranch.mass=0;parentBranch.centerOfMass.x=0;parentBranch.centerOfMass.y=0}parentBranch.childrenCount=4;parentBranch.children.data=null;this._insertRegion(parentBranch,\"NW\");this._insertRegion(parentBranch,\"NE\");this._insertRegion(parentBranch,\"SW\");this._insertRegion(parentBranch,\"SE\");if(containedNode!=null){this._placeInTree(parentBranch,containedNode)}}},{key:\"_insertRegion\",value:function _insertRegion(parentBranch,region){var minX=void 0,maxX=void 0,minY=void 0,maxY=void 0;var childSize=.5*parentBranch.size;switch(region){case\"NW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"NE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"SW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break;case\"SE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break}parentBranch.children[region]={centerOfMass:{x:0,y:0},mass:0,range:{minX:minX,maxX:maxX,minY:minY,maxY:maxY},size:.5*parentBranch.size,calcSize:2*parentBranch.calcSize,children:{data:null},maxWidth:0,level:parentBranch.level+1,childrenCount:0}}},{key:\"_debug\",value:function _debug(ctx,color){if(this.barnesHutTree!==undefined){ctx.lineWidth=1;this._drawBranch(this.barnesHutTree.root,ctx,color)}}},{key:\"_drawBranch\",value:function _drawBranch(branch,ctx,color){if(color===undefined){color=\"#FF0000\"}if(branch.childrenCount===4){this._drawBranch(branch.children.NW,ctx);this._drawBranch(branch.children.NE,ctx);this._drawBranch(branch.children.SE,ctx);this._drawBranch(branch.children.SW,ctx)}ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.minY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.minY);ctx.stroke()}}]);return BarnesHutSolver}();exports[\"default\"]=BarnesHutSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CentralGravitySolver=function(){function CentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,CentralGravitySolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(CentralGravitySolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx=void 0,dy=void 0,distance=void 0,node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];node=nodes[nodeId];dx=-node.x;dy=-node.y;distance=Math.sqrt(dx*dx+dy*dy);this._calculateForces(distance,dx,dy,forces,node)}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){var gravityForce=distance===0?0:this.options.centralGravity/distance;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}]);return CentralGravitySolver}();exports[\"default\"]=CentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var object=\"object\";var dom=\"dom\";var any=\"any\";var endPoints=[\"arrow\",\"circle\",\"bar\"];var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,string:string,array:array,function:\"function\"},container:{dom:dom},showButton:{boolean:bool},__type__:{object:object,boolean:bool,string:string,array:array,function:\"function\"}},edges:{arrows:{to:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},middle:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},from:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},__type__:{string:[\"from\",\"to\",\"middle\"],object:object}},arrowStrikethrough:{boolean:bool},chosen:{label:{boolean:bool,function:\"function\"},edge:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{color:{string:string},highlight:{string:string},hover:{string:string},inherit:{string:[\"from\",\"to\",\"both\"],boolean:bool},opacity:{number:number},__type__:{object:object,string:string}},dashes:{boolean:bool,array:array},font:{color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},align:{string:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},hidden:{boolean:bool},hoverWidth:{function:\"function\",number:number},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},length:{number:number,undefined:\"undefined\"},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},selectionWidth:{function:\"function\",number:number},selfReferenceSize:{number:number},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},smooth:{enabled:{boolean:bool},type:{string:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"]},roundness:{number:number},forceDirection:{string:[\"horizontal\",\"vertical\",\"none\"],boolean:bool},__type__:{object:object,boolean:bool}},title:{string:string,undefined:\"undefined\"},width:{number:number},widthConstraint:{maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},value:{number:number,undefined:\"undefined\"},__type__:{object:object}},groups:{useDefaultGroups:{boolean:bool},__any__:\"get from nodes, will be overwritten below\",__type__:{object:object}},interaction:{dragNodes:{boolean:bool},dragView:{boolean:bool},hideEdgesOnDrag:{boolean:bool},hideNodesOnDrag:{boolean:bool},hover:{boolean:bool},keyboard:{enabled:{boolean:bool},speed:{x:{number:number},y:{number:number},zoom:{number:number},__type__:{object:object}},bindToWindow:{boolean:bool},__type__:{object:object,boolean:bool}},multiselect:{boolean:bool},navigationButtons:{boolean:bool},selectable:{boolean:bool},selectConnectedEdges:{boolean:bool},hoverConnectedEdges:{boolean:bool},tooltipDelay:{number:number},zoomView:{boolean:bool},__type__:{object:object}},layout:{randomSeed:{undefined:\"undefined\",number:number},improvedLayout:{boolean:bool},hierarchical:{enabled:{boolean:bool},levelSeparation:{number:number},nodeSpacing:{number:number},treeSpacing:{number:number},blockShifting:{boolean:bool},edgeMinimization:{boolean:bool},parentCentralization:{boolean:bool},direction:{string:[\"UD\",\"DU\",\"LR\",\"RL\"]},sortMethod:{string:[\"hubsize\",\"directed\"]},__type__:{object:object,boolean:bool}},__type__:{object:object}},manipulation:{enabled:{boolean:bool},initiallyActive:{boolean:bool},addNode:{boolean:bool,function:\"function\"},addEdge:{boolean:bool,function:\"function\"},editNode:{function:\"function\"},editEdge:{editWithoutDrag:{function:\"function\"},__type__:{object:object,boolean:bool,function:\"function\"}},deleteNode:{boolean:bool,function:\"function\"},deleteEdge:{boolean:bool,function:\"function\"},controlNodeStyle:\"get from nodes, will be overwritten below\",__type__:{object:object,boolean:bool}},nodes:{borderWidth:{number:number},borderWidthSelected:{number:number,undefined:\"undefined\"},brokenImage:{string:string,undefined:\"undefined\"},chosen:{label:{boolean:bool,function:\"function\"},node:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{border:{string:string},background:{string:string},highlight:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},hover:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},__type__:{object:object,string:string}},fixed:{x:{boolean:bool},y:{boolean:bool},__type__:{object:object,boolean:bool}},font:{align:{string:string},color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},group:{string:string,number:number,undefined:\"undefined\"},heightConstraint:{minimum:{number:number},valign:{string:string},__type__:{object:object,boolean:bool,number:number}},hidden:{boolean:bool},icon:{face:{string:string},code:{string:string},size:{number:number},color:{string:string},__type__:{object:object}},id:{string:string,number:number},image:{selected:{string:string,undefined:\"undefined\"},unselected:{string:string,undefined:\"undefined\"},__type__:{object:object,string:string}},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},level:{number:number,undefined:\"undefined\"},margin:{top:{number:number},right:{number:number},bottom:{number:number},left:{number:number},__type__:{object:object,number:number}},mass:{number:number},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},shape:{string:[\"ellipse\",\"circle\",\"database\",\"box\",\"text\",\"image\",\"circularImage\",\"diamond\",\"dot\",\"star\",\"triangle\",\"triangleDown\",\"square\",\"icon\",\"hexagon\"]},shapeProperties:{borderDashes:{boolean:bool,array:array},borderRadius:{number:number},interpolation:{boolean:bool},useImageSize:{boolean:bool},useBorderWithImage:{boolean:bool},__type__:{object:object}},size:{number:number},title:{string:string,dom:dom,undefined:\"undefined\"},value:{number:number,undefined:\"undefined\"},widthConstraint:{minimum:{number:number},maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},x:{number:number},y:{number:number},__type__:{object:object}},physics:{enabled:{boolean:bool},barnesHut:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},forceAtlas2Based:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},repulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},hierarchicalRepulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},maxVelocity:{number:number},minVelocity:{number:number},solver:{string:[\"barnesHut\",\"repulsion\",\"hierarchicalRepulsion\",\"forceAtlas2Based\"]},stabilization:{enabled:{boolean:bool},iterations:{number:number},updateInterval:{number:number},onlyDynamicEdges:{boolean:bool},\nfit:{boolean:bool},__type__:{object:object,boolean:bool}},timestep:{number:number},adaptiveTimestep:{boolean:bool},__type__:{object:object,boolean:bool}},autoResize:{boolean:bool},clickToUse:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},height:{string:string},width:{string:string},__type__:{object:object}};allOptions.groups.__any__=allOptions.nodes;allOptions.manipulation.controlNodeStyle=allOptions.nodes;var configureOptions={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#97C2FC\"],highlight:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]},hover:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]}},fixed:{x:false,y:false},font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[0,0,50,1],strokeColor:[\"color\",\"#ffffff\"]},hidden:false,labelHighlightBold:true,physics:true,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:false,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:[\"ellipse\",\"box\",\"circle\",\"database\",\"diamond\",\"dot\",\"square\",\"star\",\"text\",\"triangle\",\"triangleDown\",\"hexagon\"],shapeProperties:{borderDashes:false,borderRadius:[6,0,20,1],interpolation:true,useImageSize:false},size:[25,0,200,1]},edges:{arrows:{to:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},middle:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},from:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"}},arrowStrikethrough:true,color:{color:[\"color\",\"#848484\"],highlight:[\"color\",\"#848484\"],hover:[\"color\",\"#848484\"],inherit:[\"from\",\"to\",\"both\",true,false],opacity:[1,0,1,.05]},dashes:false,font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[2,0,50,1],strokeColor:[\"color\",\"#ffffff\"],align:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},hidden:false,hoverWidth:[1.5,0,5,.1],labelHighlightBold:true,physics:true,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:true,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:true,type:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"],forceDirection:[\"horizontal\",\"vertical\",\"none\"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:false,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:[\"UD\",\"DU\",\"LR\",\"RL\"],sortMethod:[\"hubsize\",\"directed\"]}},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:false,keyboard:{enabled:false,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:true},multiselect:false,navigationButtons:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true,tooltipDelay:[300,0,1e3,25],zoomView:true},manipulation:{enabled:false,initiallyActive:false},physics:{enabled:true,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:[\"barnesHut\",\"forceAtlas2Based\",\"repulsion\",\"hierarchicalRepulsion\"],timestep:[.5,.01,1,.01]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);util.extend(exports,__webpack_require__(159));util.extend(exports,__webpack_require__(177));util.extend(exports,__webpack_require__(181))},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(136)},function(module,exports,__webpack_require__){\"use strict\";var addToUnscopables=__webpack_require__(126);var step=__webpack_require__(127);var Iterators=__webpack_require__(31);var toIObject=__webpack_require__(25);module.exports=__webpack_require__(79)(Array,\"Array\",function(iterated,kind){this._t=toIObject(iterated);this._i=0;this._k=kind},function(){var O=this._t;var kind=this._k;var index=this._i++;if(!O||index>=O.length){this._t=undefined;return step(1)}if(kind==\"keys\")return step(0,index);if(kind==\"values\")return step(0,O[index]);return step(0,[index,O[index]])},\"values\");Iterators.Arguments=Iterators.Array;addToUnscopables(\"keys\");addToUnscopables(\"values\");addToUnscopables(\"entries\")},function(module,exports){module.exports=function(){}},function(module,exports){module.exports=function(done,value){return{value:value,done:!!done}}},function(module,exports){module.exports=function(it){if(typeof it!=\"function\")throw TypeError(it+\" is not a function!\");return it}},function(module,exports,__webpack_require__){\"use strict\";var create=__webpack_require__(54);var descriptor=__webpack_require__(39);var setToStringTag=__webpack_require__(59);var IteratorPrototype={};__webpack_require__(26)(IteratorPrototype,__webpack_require__(13)(\"iterator\"),function(){return this});module.exports=function(Constructor,NAME,next){Constructor.prototype=create(IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+\" Iterator\")}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var anObject=__webpack_require__(27);var getKeys=__webpack_require__(33);module.exports=__webpack_require__(21)?Object.defineProperties:function defineProperties(O,Properties){anObject(O);var keys=getKeys(Properties);var length=keys.length;var i=0;var P;while(length>i)dP.f(O,P=keys[i++],Properties[P]);return O}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var toLength=__webpack_require__(132);var toAbsoluteIndex=__webpack_require__(133);module.exports=function(IS_INCLUDES){return function($this,el,fromIndex){var O=toIObject($this);var length=toLength(O.length);var index=toAbsoluteIndex(fromIndex,length);var value;if(IS_INCLUDES&&el!=el)while(length>index){value=O[index++];if(value!=value)return true}else for(;length>index;index++)if(IS_INCLUDES||index in O){if(O[index]===el)return IS_INCLUDES||index||0}return!IS_INCLUDES&&-1}}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var min=Math.min;module.exports=function(it){return it>0?min(toInteger(it),9007199254740991):0}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var max=Math.max;var min=Math.min;module.exports=function(index,length){index=toInteger(index);return index<0?max(index+length,0):min(index,length)}},function(module,exports,__webpack_require__){var document=__webpack_require__(18).document;module.exports=document&&document.documentElement},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var defined=__webpack_require__(51);module.exports=function(TO_STRING){return function(that,pos){var s=String(defined(that));var i=toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l)return TO_STRING?\"\":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var get=__webpack_require__(137);module.exports=__webpack_require__(7).getIterator=function(it){var iterFn=get(it);if(typeof iterFn!=\"function\")throw TypeError(it+\" is not iterable!\");return anObject(iterFn.call(it))}},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).getIteratorMethod=function(it){if(it!=undefined)return it[ITERATOR]||it[\"@@iterator\"]||Iterators[classof(it)]}},function(module,exports,__webpack_require__){__webpack_require__(139);var $Object=__webpack_require__(7).Object;module.exports=function create(P,D){return $Object.create(P,D)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{create:__webpack_require__(54)})},function(module,exports,__webpack_require__){__webpack_require__(141);module.exports=__webpack_require__(7).Object.keys},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $keys=__webpack_require__(33);__webpack_require__(87)(\"keys\",function(){return function keys(it){return $keys(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(143),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(60);__webpack_require__(49);module.exports=__webpack_require__(61).f(\"iterator\")},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(145),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(146);__webpack_require__(151);__webpack_require__(152);__webpack_require__(153);module.exports=__webpack_require__(7).Symbol},function(module,exports,__webpack_require__){\"use strict\";var global=__webpack_require__(18);var has=__webpack_require__(22);var DESCRIPTORS=__webpack_require__(21);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var META=__webpack_require__(147).KEY;var $fails=__webpack_require__(28);var shared=__webpack_require__(57);var setToStringTag=__webpack_require__(59);var uid=__webpack_require__(40);var wks=__webpack_require__(13);var wksExt=__webpack_require__(61);var wksDefine=__webpack_require__(62);var enumKeys=__webpack_require__(148);var isArray=__webpack_require__(149);var anObject=__webpack_require__(27);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var createDesc=__webpack_require__(39);var _create=__webpack_require__(54);var gOPNExt=__webpack_require__(150);var $GOPD=__webpack_require__(89);var $DP=__webpack_require__(20);var $keys=__webpack_require__(33);var gOPD=$GOPD.f;var dP=$DP.f;var gOPN=gOPNExt.f;var $Symbol=global.Symbol;var $JSON=global.JSON;var _stringify=$JSON&&$JSON.stringify;var PROTOTYPE=\"prototype\";var HIDDEN=wks(\"_hidden\");var TO_PRIMITIVE=wks(\"toPrimitive\");var isEnum={}.propertyIsEnumerable;var SymbolRegistry=shared(\"symbol-registry\");var AllSymbols=shared(\"symbols\");var OPSymbols=shared(\"op-symbols\");var ObjectProto=Object[PROTOTYPE];var USE_NATIVE=typeof $Symbol==\"function\";var QObject=global.QObject;var setter=!QObject||!QObject[PROTOTYPE]||!QObject[PROTOTYPE].findChild;var setSymbolDesc=DESCRIPTORS&&$fails(function(){return _create(dP({},\"a\",{get:function(){return dP(this,\"a\",{value:7}).a}})).a!=7})?function(it,key,D){var protoDesc=gOPD(ObjectProto,key);if(protoDesc)delete ObjectProto[key];dP(it,key,D);if(protoDesc&&it!==ObjectProto)dP(ObjectProto,key,protoDesc)}:dP;var wrap=function(tag){var sym=AllSymbols[tag]=_create($Symbol[PROTOTYPE]);sym._k=tag;return sym};var isSymbol=USE_NATIVE&&typeof $Symbol.iterator==\"symbol\"?function(it){return typeof it==\"symbol\"}:function(it){return it instanceof $Symbol};var $defineProperty=function defineProperty(it,key,D){if(it===ObjectProto)$defineProperty(OPSymbols,key,D);anObject(it);key=toPrimitive(key,true);anObject(D);if(has(AllSymbols,key)){if(!D.enumerable){if(!has(it,HIDDEN))dP(it,HIDDEN,createDesc(1,{}));it[HIDDEN][key]=true}else{if(has(it,HIDDEN)&&it[HIDDEN][key])it[HIDDEN][key]=false;D=_create(D,{enumerable:createDesc(0,false)})}return setSymbolDesc(it,key,D)}return dP(it,key,D)};var $defineProperties=function defineProperties(it,P){anObject(it);var keys=enumKeys(P=toIObject(P));var i=0;var l=keys.length;var key;while(l>i)$defineProperty(it,key=keys[i++],P[key]);return it};var $create=function create(it,P){return P===undefined?_create(it):$defineProperties(_create(it),P)};var $propertyIsEnumerable=function propertyIsEnumerable(key){var E=isEnum.call(this,key=toPrimitive(key,true));if(this===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return false;return E||!has(this,key)||!has(AllSymbols,key)||has(this,HIDDEN)&&this[HIDDEN][key]?E:true};var $getOwnPropertyDescriptor=function getOwnPropertyDescriptor(it,key){it=toIObject(it);key=toPrimitive(key,true);if(it===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return;var D=gOPD(it,key);if(D&&has(AllSymbols,key)&&!(has(it,HIDDEN)&&it[HIDDEN][key]))D.enumerable=true;return D};var $getOwnPropertyNames=function getOwnPropertyNames(it){var names=gOPN(toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(!has(AllSymbols,key=names[i++])&&key!=HIDDEN&&key!=META)result.push(key)}return result};var $getOwnPropertySymbols=function getOwnPropertySymbols(it){var IS_OP=it===ObjectProto;var names=gOPN(IS_OP?OPSymbols:toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(has(AllSymbols,key=names[i++])&&(IS_OP?has(ObjectProto,key):true))result.push(AllSymbols[key])}return result};if(!USE_NATIVE){$Symbol=function Symbol(){if(this instanceof $Symbol)throw TypeError(\"Symbol is not a constructor!\");var tag=uid(arguments.length>0?arguments[0]:undefined);var $set=function(value){if(this===ObjectProto)$set.call(OPSymbols,value);if(has(this,HIDDEN)&&has(this[HIDDEN],tag))this[HIDDEN][tag]=false;setSymbolDesc(this,tag,createDesc(1,value))};if(DESCRIPTORS&&setter)setSymbolDesc(ObjectProto,tag,{configurable:true,set:$set});return wrap(tag)};redefine($Symbol[PROTOTYPE],\"toString\",function toString(){return this._k});$GOPD.f=$getOwnPropertyDescriptor;$DP.f=$defineProperty;__webpack_require__(88).f=gOPNExt.f=$getOwnPropertyNames;__webpack_require__(42).f=$propertyIsEnumerable;__webpack_require__(63).f=$getOwnPropertySymbols;if(DESCRIPTORS&&!__webpack_require__(52)){redefine(ObjectProto,\"propertyIsEnumerable\",$propertyIsEnumerable,true)}wksExt.f=function(name){return wrap(wks(name))}}$export($export.G+$export.W+$export.F*!USE_NATIVE,{Symbol:$Symbol});for(var es6Symbols=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),j=0;es6Symbols.length>j;)wks(es6Symbols[j++]);for(var wellKnownSymbols=$keys(wks.store),k=0;wellKnownSymbols.length>k;)wksDefine(wellKnownSymbols[k++]);$export($export.S+$export.F*!USE_NATIVE,\"Symbol\",{for:function(key){return has(SymbolRegistry,key+=\"\")?SymbolRegistry[key]:SymbolRegistry[key]=$Symbol(key)},keyFor:function keyFor(sym){if(!isSymbol(sym))throw TypeError(sym+\" is not a symbol!\");for(var key in SymbolRegistry)if(SymbolRegistry[key]===sym)return key},useSetter:function(){setter=true},useSimple:function(){setter=false}});$export($export.S+$export.F*!USE_NATIVE,\"Object\",{create:$create,defineProperty:$defineProperty,defineProperties:$defineProperties,getOwnPropertyDescriptor:$getOwnPropertyDescriptor,getOwnPropertyNames:$getOwnPropertyNames,getOwnPropertySymbols:$getOwnPropertySymbols});$JSON&&$export($export.S+$export.F*(!USE_NATIVE||$fails(function(){var S=$Symbol();return _stringify([S])!=\"[null]\"||_stringify({a:S})!=\"{}\"||_stringify(Object(S))!=\"{}\"})),\"JSON\",{stringify:function stringify(it){if(it===undefined||isSymbol(it))return;var args=[it];var i=1;var replacer,$replacer;while(arguments.length>i)args.push(arguments[i++]);replacer=args[1];if(typeof replacer==\"function\")$replacer=replacer;if($replacer||!isArray(replacer))replacer=function(key,value){if($replacer)value=$replacer.call(this,key,value);if(!isSymbol(value))return value};args[1]=replacer;return _stringify.apply($JSON,args)}});$Symbol[PROTOTYPE][TO_PRIMITIVE]||__webpack_require__(26)($Symbol[PROTOTYPE],TO_PRIMITIVE,$Symbol[PROTOTYPE].valueOf);setToStringTag($Symbol,\"Symbol\");setToStringTag(Math,\"Math\",true);setToStringTag(global.JSON,\"JSON\",true)},function(module,exports,__webpack_require__){var META=__webpack_require__(40)(\"meta\");var isObject=__webpack_require__(32);var has=__webpack_require__(22);var setDesc=__webpack_require__(20).f;var id=0;var isExtensible=Object.isExtensible||function(){return true};var FREEZE=!__webpack_require__(28)(function(){return isExtensible(Object.preventExtensions({}))});var setMeta=function(it){setDesc(it,META,{value:{i:\"O\"+ ++id,w:{}}})};var fastKey=function(it,create){if(!isObject(it))return typeof it==\"symbol\"?it:(typeof it==\"string\"?\"S\":\"P\")+it;if(!has(it,META)){if(!isExtensible(it))return\"F\";if(!create)return\"E\";setMeta(it)}return it[META].i};var getWeak=function(it,create){if(!has(it,META)){if(!isExtensible(it))return true;if(!create)return false;setMeta(it)}return it[META].w};var onFreeze=function(it){if(FREEZE&&meta.NEED&&isExtensible(it)&&!has(it,META))setMeta(it);return it};var meta=module.exports={KEY:META,NEED:false,fastKey:fastKey,getWeak:getWeak,onFreeze:onFreeze}},function(module,exports,__webpack_require__){var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);module.exports=function(it){var result=getKeys(it);var getSymbols=gOPS.f;if(getSymbols){var symbols=getSymbols(it);var isEnum=pIE.f;var i=0;var key;while(symbols.length>i)if(isEnum.call(it,key=symbols[i++]))result.push(key)}return result}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Array.isArray||function isArray(arg){return cof(arg)==\"Array\"}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var gOPN=__webpack_require__(88).f;var toString={}.toString;var windowNames=typeof window==\"object\"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];var getWindowNames=function(it){try{return gOPN(it)}catch(e){return windowNames.slice()}};module.exports.f=function getOwnPropertyNames(it){return windowNames&&toString.call(it)==\"[object Window]\"?getWindowNames(it):gOPN(toIObject(it))}},function(module,exports){},function(module,exports,__webpack_require__){__webpack_require__(62)(\"asyncIterator\")},function(module,exports,__webpack_require__){__webpack_require__(62)(\"observable\")},function(module,exports,__webpack_require__){(function(module){var require;(function(global,factory){true?module.exports=factory():typeof define===\"function\"&&define.amd?define(factory):global.moment=factory()})(this,function(){\"use strict\";var hookCallback;function hooks(){return hookCallback.apply(null,arguments)}function setHookCallback(callback){hookCallback=callback}function isArray(input){return input instanceof Array||Object.prototype.toString.call(input)===\"[object Array]\"}function isObject(input){return input!=null&&Object.prototype.toString.call(input)===\"[object Object]\"}function isObjectEmpty(obj){if(Object.getOwnPropertyNames){return Object.getOwnPropertyNames(obj).length===0}else{var k;for(k in obj){if(obj.hasOwnProperty(k)){return false}}return true}}function isUndefined(input){return input===void 0}function isNumber(input){return typeof input===\"number\"||Object.prototype.toString.call(input)===\"[object Number]\"}function isDate(input){return input instanceof Date||Object.prototype.toString.call(input)===\"[object Date]\"}function map(arr,fn){var res=[],i;for(i=0;i<arr.length;++i){res.push(fn(arr[i],i))}return res}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function extend(a,b){for(var i in b){if(hasOwnProp(b,i)){a[i]=b[i]}}if(hasOwnProp(b,\"toString\")){a.toString=b.toString}if(hasOwnProp(b,\"valueOf\")){a.valueOf=b.valueOf}return a}function createUTC(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,true).utc()}function defaultParsingFlags(){return{empty:false,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:false,invalidMonth:null,invalidFormat:false,userInvalidated:false,iso:false,parsedDateParts:[],meridiem:null,rfc2822:false,weekdayMismatch:false}}function getParsingFlags(m){if(m._pf==null){m._pf=defaultParsingFlags()}return m._pf}var some;if(Array.prototype.some){some=Array.prototype.some}else{some=function(fun){var t=Object(this);var len=t.length>>>0;for(var i=0;i<len;i++){if(i in t&&fun.call(this,t[i],i,t)){return true}}return false}}function isValid(m){if(m._isValid==null){var flags=getParsingFlags(m);var parsedParts=some.call(flags.parsedDateParts,function(i){return i!=null});var isNowValid=!isNaN(m._d.getTime())&&flags.overflow<0&&!flags.empty&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.weekdayMismatch&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||flags.meridiem&&parsedParts);if(m._strict){isNowValid=isNowValid&&flags.charsLeftOver===0&&flags.unusedTokens.length===0&&flags.bigHour===undefined}if(Object.isFrozen==null||!Object.isFrozen(m)){m._isValid=isNowValid}else{return isNowValid}}return m._isValid}function createInvalid(flags){var m=createUTC(NaN);if(flags!=null){extend(getParsingFlags(m),flags)}else{getParsingFlags(m).userInvalidated=true}return m}var momentProperties=hooks.momentProperties=[];function copyConfig(to,from){var i,prop,val;if(!isUndefined(from._isAMomentObject)){to._isAMomentObject=from._isAMomentObject}if(!isUndefined(from._i)){to._i=from._i}if(!isUndefined(from._f)){to._f=from._f}if(!isUndefined(from._l)){to._l=from._l}if(!isUndefined(from._strict)){to._strict=from._strict}if(!isUndefined(from._tzm)){to._tzm=from._tzm}if(!isUndefined(from._isUTC)){to._isUTC=from._isUTC}if(!isUndefined(from._offset)){to._offset=from._offset}if(!isUndefined(from._pf)){to._pf=getParsingFlags(from)}if(!isUndefined(from._locale)){to._locale=from._locale}if(momentProperties.length>0){for(i=0;i<momentProperties.length;i++){prop=momentProperties[i];val=from[prop];if(!isUndefined(val)){to[prop]=val}}}return to}var updateInProgress=false;function Moment(config){copyConfig(this,config);this._d=new Date(config._d!=null?config._d.getTime():NaN);if(!this.isValid()){this._d=new Date(NaN)}if(updateInProgress===false){updateInProgress=true;hooks.updateOffset(this);updateInProgress=false}}function isMoment(obj){return obj instanceof Moment||obj!=null&&obj._isAMomentObject!=null}function absFloor(number){if(number<0){return Math.ceil(number)||0}else{return Math.floor(number)}}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;if(coercedNumber!==0&&isFinite(coercedNumber)){value=absFloor(coercedNumber)}return value}function compareArrays(array1,array2,dontConvert){var len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0,i;for(i=0;i<len;i++){if(dontConvert&&array1[i]!==array2[i]||!dontConvert&&toInt(array1[i])!==toInt(array2[i])){diffs++}}return diffs+lengthDiff}function warn(msg){if(hooks.suppressDeprecationWarnings===false&&typeof console!==\"undefined\"&&console.warn){console.warn(\"Deprecation warning: \"+msg)}}function deprecate(msg,fn){var firstTime=true;return extend(function(){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(null,msg)}if(firstTime){var args=[];var arg;for(var i=0;i<arguments.length;i++){arg=\"\";if(typeof arguments[i]===\"object\"){arg+=\"\\n[\"+i+\"] \";for(var key in arguments[0]){arg+=key+\": \"+arguments[0][key]+\", \"}arg=arg.slice(0,-2)}else{arg=arguments[i]}args.push(arg)}warn(msg+\"\\nArguments: \"+Array.prototype.slice.call(args).join(\"\")+\"\\n\"+(new Error).stack);firstTime=false}return fn.apply(this,arguments)},fn)}var deprecations={};function deprecateSimple(name,msg){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(name,msg)}if(!deprecations[name]){warn(msg);deprecations[name]=true}}hooks.suppressDeprecationWarnings=false;hooks.deprecationHandler=null;function isFunction(input){return input instanceof Function||Object.prototype.toString.call(input)===\"[object Function]\"}function set(config){var prop,i;for(i in config){prop=config[i];if(isFunction(prop)){this[i]=prop}else{this[\"_\"+i]=prop}}this._config=config;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)}function mergeConfigs(parentConfig,childConfig){var res=extend({},parentConfig),prop;for(prop in childConfig){if(hasOwnProp(childConfig,prop)){if(isObject(parentConfig[prop])&&isObject(childConfig[prop])){res[prop]={};extend(res[prop],parentConfig[prop]);extend(res[prop],childConfig[prop])}else if(childConfig[prop]!=null){res[prop]=childConfig[prop]}else{delete res[prop]}}}for(prop in parentConfig){if(hasOwnProp(parentConfig,prop)&&!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])){res[prop]=extend({},res[prop])}}return res}function Locale(config){if(config!=null){this.set(config)}}var keys;if(Object.keys){keys=Object.keys}else{keys=function(obj){var i,res=[];for(i in obj){if(hasOwnProp(obj,i)){res.push(i)}}return res}}var defaultCalendar={sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"};function calendar(key,mom,now){var output=this._calendar[key]||this._calendar[\"sameElse\"];return isFunction(output)?output.call(mom,now):output}var defaultLongDateFormat={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};function longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];if(format||!formatUpper){return format}this._longDateFormat[key]=formatUpper.replace(/MMMM|MM|DD|dddd/g,function(val){return val.slice(1)});return this._longDateFormat[key]}var defaultInvalidDate=\"Invalid date\";function invalidDate(){return this._invalidDate}var defaultOrdinal=\"%d\";var defaultDayOfMonthOrdinalParse=/\\d{1,2}/;function ordinal(number){return this._ordinal.replace(\"%d\",number)}var defaultRelativeTime={future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"};function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture):output.replace(/%d/i,number)}function pastFuture(diff,output){var format=this._relativeTime[diff>0?\"future\":\"past\"];return isFunction(format)?format(output):format.replace(/%s/i,output)}var aliases={};function addUnitAlias(unit,shorthand){var lowerCase=unit.toLowerCase();aliases[lowerCase]=aliases[lowerCase+\"s\"]=aliases[shorthand]=unit}function normalizeUnits(units){return typeof units===\"string\"?aliases[units]||aliases[units.toLowerCase()]:undefined}function normalizeObjectUnits(inputObject){var normalizedInput={},normalizedProp,prop;for(prop in inputObject){if(hasOwnProp(inputObject,prop)){normalizedProp=normalizeUnits(prop);if(normalizedProp){normalizedInput[normalizedProp]=inputObject[prop]}}}return normalizedInput}var priorities={};function addUnitPriority(unit,priority){priorities[unit]=priority}function getPrioritizedUnits(unitsObj){var units=[];for(var u in unitsObj){units.push({unit:u,priority:priorities[u]})}units.sort(function(a,b){return a.priority-b.priority});return units}function zeroFill(number,targetLength,forceSign){var absNumber=\"\"+Math.abs(number),zerosToFill=targetLength-absNumber.length,sign=number>=0;return(sign?forceSign?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber}var formattingTokens=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;var localFormattingTokens=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;var formatFunctions={};var formatTokenFunctions={};function addFormatToken(token,padded,ordinal,callback){var func=callback;if(typeof callback===\"string\"){func=function(){return this[callback]()}}if(token){formatTokenFunctions[token]=func}if(padded){formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2])}}if(ordinal){formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token)}}}function removeFormattingTokens(input){if(input.match(/\\[[\\s\\S]/)){return input.replace(/^\\[|\\]$/g,\"\")}return input.replace(/\\\\/g,\"\")}function makeFormatFunction(format){var array=format.match(formattingTokens),i,length;for(i=0,length=array.length;i<length;i++){if(formatTokenFunctions[array[i]]){array[i]=formatTokenFunctions[array[i]]}else{array[i]=removeFormattingTokens(array[i])}}return function(mom){var output=\"\",i;for(i=0;i<length;i++){output+=isFunction(array[i])?array[i].call(mom,format):array[i]}return output}}function formatMoment(m,format){if(!m.isValid()){return m.localeData().invalidDate()}format=expandFormat(format,m.localeData());formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format);return formatFunctions[format](m)}function expandFormat(format,locale){var i=5;function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input}localFormattingTokens.lastIndex=0;while(i>=0&&localFormattingTokens.test(format)){format=format.replace(localFormattingTokens,replaceLongDateFormatTokens);localFormattingTokens.lastIndex=0;i-=1}return format}var match1=/\\d/;var match2=/\\d\\d/;var match3=/\\d{3}/;var match4=/\\d{4}/;var match6=/[+-]?\\d{6}/;var match1to2=/\\d\\d?/;var match3to4=/\\d\\d\\d\\d?/;var match5to6=/\\d\\d\\d\\d\\d\\d?/;var match1to3=/\\d{1,3}/;var match1to4=/\\d{1,4}/;var match1to6=/[+-]?\\d{1,6}/;var matchUnsigned=/\\d+/;var matchSigned=/[+-]?\\d+/;var matchOffset=/Z|[+-]\\d\\d:?\\d\\d/gi;var matchShortOffset=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi;var matchTimestamp=/[+-]?\\d+(\\.\\d{1,3})?/;var matchWord=/[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i;var regexes={};function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex}}function getParseRegexForToken(token,config){if(!hasOwnProp(regexes,token)){return new RegExp(unescapeFormat(token))}return regexes[token](config._strict,config._locale)}function unescapeFormat(s){return regexEscape(s.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4}))}function regexEscape(s){return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}var tokens={};function addParseToken(token,callback){var i,func=callback;if(typeof token===\"string\"){token=[token]}if(isNumber(callback)){func=function(input,array){array[callback]=toInt(input)}}for(i=0;i<token.length;i++){tokens[token[i]]=func}}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{};callback(input,config._w,config,token)})}function addTimeToArrayFromToken(token,input,config){if(input!=null&&hasOwnProp(tokens,token)){tokens[token](input,config._a,config,token)}}var YEAR=0;var MONTH=1;var DATE=2;var HOUR=3;var MINUTE=4;var SECOND=5;var MILLISECOND=6;var WEEK=7;var WEEKDAY=8;addFormatToken(\"Y\",0,0,function(){var y=this.year();return y<=9999?\"\"+y:\"+\"+y});addFormatToken(0,[\"YY\",2],0,function(){return this.year()%100});addFormatToken(0,[\"YYYY\",4],0,\"year\");addFormatToken(0,[\"YYYYY\",5],0,\"year\");addFormatToken(0,[\"YYYYYY\",6,true],0,\"year\");addUnitAlias(\"year\",\"y\");addUnitPriority(\"year\",1);addRegexToken(\"Y\",matchSigned)\n;addRegexToken(\"YY\",match1to2,match2);addRegexToken(\"YYYY\",match1to4,match4);addRegexToken(\"YYYYY\",match1to6,match6);addRegexToken(\"YYYYYY\",match1to6,match6);addParseToken([\"YYYYY\",\"YYYYYY\"],YEAR);addParseToken(\"YYYY\",function(input,array){array[YEAR]=input.length===2?hooks.parseTwoDigitYear(input):toInt(input)});addParseToken(\"YY\",function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input)});addParseToken(\"Y\",function(input,array){array[YEAR]=parseInt(input,10)});function daysInYear(year){return isLeapYear(year)?366:365}function isLeapYear(year){return year%4===0&&year%100!==0||year%400===0}hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2e3)};var getSetYear=makeGetSet(\"FullYear\",true);function getIsLeapYear(){return isLeapYear(this.year())}function makeGetSet(unit,keepTime){return function(value){if(value!=null){set$1(this,unit,value);hooks.updateOffset(this,keepTime);return this}else{return get(this,unit)}}}function get(mom,unit){return mom.isValid()?mom._d[\"get\"+(mom._isUTC?\"UTC\":\"\")+unit]():NaN}function set$1(mom,unit,value){if(mom.isValid()&&!isNaN(value)){if(unit===\"FullYear\"&&isLeapYear(mom.year())){mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value,mom.month(),daysInMonth(value,mom.month()))}else{mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value)}}}function stringGet(units){units=normalizeUnits(units);if(isFunction(this[units])){return this[units]()}return this}function stringSet(units,value){if(typeof units===\"object\"){units=normalizeObjectUnits(units);var prioritized=getPrioritizedUnits(units);for(var i=0;i<prioritized.length;i++){this[prioritized[i].unit](units[prioritized[i].unit])}}else{units=normalizeUnits(units);if(isFunction(this[units])){return this[units](value)}}return this}function mod(n,x){return(n%x+x)%x}var indexOf;if(Array.prototype.indexOf){indexOf=Array.prototype.indexOf}else{indexOf=function(o){var i;for(i=0;i<this.length;++i){if(this[i]===o){return i}}return-1}}function daysInMonth(year,month){if(isNaN(year)||isNaN(month)){return NaN}var modMonth=mod(month,12);year+=(month-modMonth)/12;return modMonth===1?isLeapYear(year)?29:28:31-modMonth%7%2}addFormatToken(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1});addFormatToken(\"MMM\",0,0,function(format){return this.localeData().monthsShort(this,format)});addFormatToken(\"MMMM\",0,0,function(format){return this.localeData().months(this,format)});addUnitAlias(\"month\",\"M\");addUnitPriority(\"month\",8);addRegexToken(\"M\",match1to2);addRegexToken(\"MM\",match1to2,match2);addRegexToken(\"MMM\",function(isStrict,locale){return locale.monthsShortRegex(isStrict)});addRegexToken(\"MMMM\",function(isStrict,locale){return locale.monthsRegex(isStrict)});addParseToken([\"M\",\"MM\"],function(input,array){array[MONTH]=toInt(input)-1});addParseToken([\"MMM\",\"MMMM\"],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict);if(month!=null){array[MONTH]=month}else{getParsingFlags(config).invalidMonth=input}});var MONTHS_IN_FORMAT=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;var defaultLocaleMonths=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\");function localeMonths(m,format){if(!m){return isArray(this._months)?this._months:this._months[\"standalone\"]}return isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?\"format\":\"standalone\"][m.month()]}var defaultLocaleMonthsShort=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\");function localeMonthsShort(m,format){if(!m){return isArray(this._monthsShort)?this._monthsShort:this._monthsShort[\"standalone\"]}return isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?\"format\":\"standalone\"][m.month()]}function handleStrictParse(monthName,format,strict){var i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[];for(i=0;i<12;++i){mom=createUTC([2e3,i]);this._shortMonthsParse[i]=this.monthsShort(mom,\"\").toLocaleLowerCase();this._longMonthsParse[i]=this.months(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}}else{if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}}}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact){return handleStrictParse.call(this,monthName,format,strict)}if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[]}for(i=0;i<12;i++){mom=createUTC([2e3,i]);if(strict&&!this._longMonthsParse[i]){this._longMonthsParse[i]=new RegExp(\"^\"+this.months(mom,\"\").replace(\".\",\"\")+\"$\",\"i\");this._shortMonthsParse[i]=new RegExp(\"^\"+this.monthsShort(mom,\"\").replace(\".\",\"\")+\"$\",\"i\")}if(!strict&&!this._monthsParse[i]){regex=\"^\"+this.months(mom,\"\")+\"|^\"+this.monthsShort(mom,\"\");this._monthsParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"MMMM\"&&this._longMonthsParse[i].test(monthName)){return i}else if(strict&&format===\"MMM\"&&this._shortMonthsParse[i].test(monthName)){return i}else if(!strict&&this._monthsParse[i].test(monthName)){return i}}}function setMonth(mom,value){var dayOfMonth;if(!mom.isValid()){return mom}if(typeof value===\"string\"){if(/^\\d+$/.test(value)){value=toInt(value)}else{value=mom.localeData().monthsParse(value);if(!isNumber(value)){return mom}}}dayOfMonth=Math.min(mom.date(),daysInMonth(mom.year(),value));mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+\"Month\"](value,dayOfMonth);return mom}function getSetMonth(value){if(value!=null){setMonth(this,value);hooks.updateOffset(this,true);return this}else{return get(this,\"Month\")}}function getDaysInMonth(){return daysInMonth(this.year(),this.month())}var defaultMonthsShortRegex=matchWord;function monthsShortRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsShortStrictRegex}else{return this._monthsShortRegex}}else{if(!hasOwnProp(this,\"_monthsShortRegex\")){this._monthsShortRegex=defaultMonthsShortRegex}return this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex}}var defaultMonthsRegex=matchWord;function monthsRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsStrictRegex}else{return this._monthsRegex}}else{if(!hasOwnProp(this,\"_monthsRegex\")){this._monthsRegex=defaultMonthsRegex}return this._monthsStrictRegex&&isStrict?this._monthsStrictRegex:this._monthsRegex}}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length}var shortPieces=[],longPieces=[],mixedPieces=[],i,mom;for(i=0;i<12;i++){mom=createUTC([2e3,i]);shortPieces.push(this.monthsShort(mom,\"\"));longPieces.push(this.months(mom,\"\"));mixedPieces.push(this.months(mom,\"\"));mixedPieces.push(this.monthsShort(mom,\"\"))}shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<12;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i])}for(i=0;i<24;i++){mixedPieces[i]=regexEscape(mixedPieces[i])}this._monthsRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._monthsShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\")}function createDate(y,m,d,h,M,s,ms){var date=new Date(y,m,d,h,M,s,ms);if(y<100&&y>=0&&isFinite(date.getFullYear())){date.setFullYear(y)}return date}function createUTCDate(y){var date=new Date(Date.UTC.apply(null,arguments));if(y<100&&y>=0&&isFinite(date.getUTCFullYear())){date.setUTCFullYear(y)}return date}function firstWeekOffset(year,dow,doy){var fwd=7+dow-doy,fwdlw=(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7;return-fwdlw+fwd-1}function dayOfYearFromWeeks(year,week,weekday,dow,doy){var localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset,resYear,resDayOfYear;if(dayOfYear<=0){resYear=year-1;resDayOfYear=daysInYear(resYear)+dayOfYear}else if(dayOfYear>daysInYear(year)){resYear=year+1;resDayOfYear=dayOfYear-daysInYear(year)}else{resYear=year;resDayOfYear=dayOfYear}return{year:resYear,dayOfYear:resDayOfYear}}function weekOfYear(mom,dow,doy){var weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1,resWeek,resYear;if(week<1){resYear=mom.year()-1;resWeek=week+weeksInYear(resYear,dow,doy)}else if(week>weeksInYear(mom.year(),dow,doy)){resWeek=week-weeksInYear(mom.year(),dow,doy);resYear=mom.year()+1}else{resYear=mom.year();resWeek=week}return{week:resWeek,year:resYear}}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7}addFormatToken(\"w\",[\"ww\",2],\"wo\",\"week\");addFormatToken(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\");addUnitAlias(\"week\",\"w\");addUnitAlias(\"isoWeek\",\"W\");addUnitPriority(\"week\",5);addUnitPriority(\"isoWeek\",5);addRegexToken(\"w\",match1to2);addRegexToken(\"ww\",match1to2,match2);addRegexToken(\"W\",match1to2);addRegexToken(\"WW\",match1to2,match2);addWeekParseToken([\"w\",\"ww\",\"W\",\"WW\"],function(input,week,config,token){week[token.substr(0,1)]=toInt(input)});function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week}var defaultLocaleWeek={dow:0,doy:6};function localeFirstDayOfWeek(){return this._week.dow}function localeFirstDayOfYear(){return this._week.doy}function getSetWeek(input){var week=this.localeData().week(this);return input==null?week:this.add((input-week)*7,\"d\")}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return input==null?week:this.add((input-week)*7,\"d\")}addFormatToken(\"d\",0,\"do\",\"day\");addFormatToken(\"dd\",0,0,function(format){return this.localeData().weekdaysMin(this,format)});addFormatToken(\"ddd\",0,0,function(format){return this.localeData().weekdaysShort(this,format)});addFormatToken(\"dddd\",0,0,function(format){return this.localeData().weekdays(this,format)});addFormatToken(\"e\",0,0,\"weekday\");addFormatToken(\"E\",0,0,\"isoWeekday\");addUnitAlias(\"day\",\"d\");addUnitAlias(\"weekday\",\"e\");addUnitAlias(\"isoWeekday\",\"E\");addUnitPriority(\"day\",11);addUnitPriority(\"weekday\",11);addUnitPriority(\"isoWeekday\",11);addRegexToken(\"d\",match1to2);addRegexToken(\"e\",match1to2);addRegexToken(\"E\",match1to2);addRegexToken(\"dd\",function(isStrict,locale){return locale.weekdaysMinRegex(isStrict)});addRegexToken(\"ddd\",function(isStrict,locale){return locale.weekdaysShortRegex(isStrict)});addRegexToken(\"dddd\",function(isStrict,locale){return locale.weekdaysRegex(isStrict)});addWeekParseToken([\"dd\",\"ddd\",\"dddd\"],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict);if(weekday!=null){week.d=weekday}else{getParsingFlags(config).invalidWeekday=input}});addWeekParseToken([\"d\",\"e\",\"E\"],function(input,week,config,token){week[token]=toInt(input)});function parseWeekday(input,locale){if(typeof input!==\"string\"){return input}if(!isNaN(input)){return parseInt(input,10)}input=locale.weekdaysParse(input);if(typeof input===\"number\"){return input}return null}function parseIsoWeekday(input,locale){if(typeof input===\"string\"){return locale.weekdaysParse(input)%7||7}return isNaN(input)?null:input}var defaultLocaleWeekdays=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\");function localeWeekdays(m,format){if(!m){return isArray(this._weekdays)?this._weekdays:this._weekdays[\"standalone\"]}return isArray(this._weekdays)?this._weekdays[m.day()]:this._weekdays[this._weekdays.isFormat.test(format)?\"format\":\"standalone\"][m.day()]}var defaultLocaleWeekdaysShort=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\");function localeWeekdaysShort(m){return m?this._weekdaysShort[m.day()]:this._weekdaysShort}var defaultLocaleWeekdaysMin=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\");function localeWeekdaysMin(m){return m?this._weekdaysMin[m.day()]:this._weekdaysMin}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[];this._shortWeekdaysParse=[];this._minWeekdaysParse=[];for(i=0;i<7;++i){mom=createUTC([2e3,1]).day(i);this._minWeekdaysParse[i]=this.weekdaysMin(mom,\"\").toLocaleLowerCase();this._shortWeekdaysParse[i]=this.weekdaysShort(mom,\"\").toLocaleLowerCase();this._weekdaysParse[i]=this.weekdays(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}}else{if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}}}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact){return handleStrictParse$1.call(this,weekdayName,format,strict)}if(!this._weekdaysParse){this._weekdaysParse=[];this._minWeekdaysParse=[];this._shortWeekdaysParse=[];this._fullWeekdaysParse=[]}for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);if(strict&&!this._fullWeekdaysParse[i]){this._fullWeekdaysParse[i]=new RegExp(\"^\"+this.weekdays(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._shortWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysShort(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._minWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysMin(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\")}if(!this._weekdaysParse[i]){regex=\"^\"+this.weekdays(mom,\"\")+\"|^\"+this.weekdaysShort(mom,\"\")+\"|^\"+this.weekdaysMin(mom,\"\");this._weekdaysParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"dddd\"&&this._fullWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"ddd\"&&this._shortWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"dd\"&&this._minWeekdaysParse[i].test(weekdayName)){return i}else if(!strict&&this._weekdaysParse[i].test(weekdayName)){return i}}}function getSetDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var day=this._isUTC?this._d.getUTCDay():this._d.getDay();if(input!=null){input=parseWeekday(input,this.localeData());return this.add(input-day,\"d\")}else{return day}}function getSetLocaleDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var weekday=(this.day()+7-this.localeData()._week.dow)%7;return input==null?weekday:this.add(input-weekday,\"d\")}function getSetISODayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}if(input!=null){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7)}else{return this.day()||7}}var defaultWeekdaysRegex=matchWord;function weekdaysRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysStrictRegex}else{return this._weekdaysRegex}}else{if(!hasOwnProp(this,\"_weekdaysRegex\")){this._weekdaysRegex=defaultWeekdaysRegex}return this._weekdaysStrictRegex&&isStrict?this._weekdaysStrictRegex:this._weekdaysRegex}}var defaultWeekdaysShortRegex=matchWord;function weekdaysShortRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysShortStrictRegex}else{return this._weekdaysShortRegex}}else{if(!hasOwnProp(this,\"_weekdaysShortRegex\")){this._weekdaysShortRegex=defaultWeekdaysShortRegex}return this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex}}var defaultWeekdaysMinRegex=matchWord;function weekdaysMinRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysMinStrictRegex}else{return this._weekdaysMinRegex}}else{if(!hasOwnProp(this,\"_weekdaysMinRegex\")){this._weekdaysMinRegex=defaultWeekdaysMinRegex}return this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex}}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length}var minPieces=[],shortPieces=[],longPieces=[],mixedPieces=[],i,mom,minp,shortp,longp;for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);minp=this.weekdaysMin(mom,\"\");shortp=this.weekdaysShort(mom,\"\");longp=this.weekdays(mom,\"\");minPieces.push(minp);shortPieces.push(shortp);longPieces.push(longp);mixedPieces.push(minp);mixedPieces.push(shortp);mixedPieces.push(longp)}minPieces.sort(cmpLenRev);shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<7;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i]);mixedPieces[i]=regexEscape(mixedPieces[i])}this._weekdaysRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\");this._weekdaysMinStrictRegex=new RegExp(\"^(\"+minPieces.join(\"|\")+\")\",\"i\")}function hFormat(){return this.hours()%12||12}function kFormat(){return this.hours()||24}addFormatToken(\"H\",[\"HH\",2],0,\"hour\");addFormatToken(\"h\",[\"hh\",2],0,hFormat);addFormatToken(\"k\",[\"kk\",2],0,kFormat);addFormatToken(\"hmm\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)});addFormatToken(\"hmmss\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});addFormatToken(\"Hmm\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)});addFormatToken(\"Hmmss\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase)})}meridiem(\"a\",true);meridiem(\"A\",false);addUnitAlias(\"hour\",\"h\");addUnitPriority(\"hour\",13);function matchMeridiem(isStrict,locale){return locale._meridiemParse}addRegexToken(\"a\",matchMeridiem);addRegexToken(\"A\",matchMeridiem);addRegexToken(\"H\",match1to2);addRegexToken(\"h\",match1to2);addRegexToken(\"k\",match1to2);addRegexToken(\"HH\",match1to2,match2);addRegexToken(\"hh\",match1to2,match2);addRegexToken(\"kk\",match1to2,match2);addRegexToken(\"hmm\",match3to4);addRegexToken(\"hmmss\",match5to6);addRegexToken(\"Hmm\",match3to4);addRegexToken(\"Hmmss\",match5to6);addParseToken([\"H\",\"HH\"],HOUR);addParseToken([\"k\",\"kk\"],function(input,array,config){var kInput=toInt(input);array[HOUR]=kInput===24?0:kInput});addParseToken([\"a\",\"A\"],function(input,array,config){config._isPm=config._locale.isPM(input);config._meridiem=input});addParseToken([\"h\",\"hh\"],function(input,array,config){array[HOUR]=toInt(input);getParsingFlags(config).bigHour=true});addParseToken(\"hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));getParsingFlags(config).bigHour=true});addParseToken(\"hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));getParsingFlags(config).bigHour=true});addParseToken(\"Hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos))});addParseToken(\"Hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2))});function localeIsPM(input){return(input+\"\").toLowerCase().charAt(0)===\"p\"}var defaultLocaleMeridiemParse=/[ap]\\.?m?\\.?/i;function localeMeridiem(hours,minutes,isLower){if(hours>11){return isLower?\"pm\":\"PM\"}else{return isLower?\"am\":\"AM\"}}var getSetHour=makeGetSet(\"Hours\",true);var baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:defaultInvalidDate,ordinal:defaultOrdinal,dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,weekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse};var locales={};var localeFamilies={};var globalLocale;function normalizeLocale(key){return key?key.toLowerCase().replace(\"_\",\"-\"):key}function chooseLocale(names){var i=0,j,next,locale,split;while(i<names.length){split=normalizeLocale(names[i]).split(\"-\");j=split.length;next=normalizeLocale(names[i+1]);next=next?next.split(\"-\"):null;while(j>0){locale=loadLocale(split.slice(0,j).join(\"-\"));if(locale){return locale}if(next&&next.length>=j&&compareArrays(split,next,true)>=j-1){break}j--}i++}return null}function loadLocale(name){var oldLocale=null;if(!locales[name]&&typeof module!==\"undefined\"&&module&&module.exports){try{oldLocale=globalLocale._abbr;var aliasedRequire=require;!function webpackMissingModule(){var e=new Error('Cannot find module \"./locale\"');e.code=\"MODULE_NOT_FOUND\";throw e}();getSetGlobalLocale(oldLocale)}catch(e){}}return locales[name]}function getSetGlobalLocale(key,values){var data;if(key){if(isUndefined(values)){data=getLocale(key)}else{data=defineLocale(key,values)}if(data){globalLocale=data}}return globalLocale._abbr}function defineLocale(name,config){if(config!==null){var parentConfig=baseConfig;config.abbr=name;if(locales[name]!=null){deprecateSimple(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change \"+\"an existing locale. moment.defineLocale(localeName, \"+\"config) should only be used for creating a new locale \"+\"See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\");parentConfig=locales[name]._config}else if(config.parentLocale!=null){if(locales[config.parentLocale]!=null){parentConfig=locales[config.parentLocale]._config}else{if(!localeFamilies[config.parentLocale]){localeFamilies[config.parentLocale]=[]}localeFamilies[config.parentLocale].push({name:name,config:config});return null}}locales[name]=new Locale(mergeConfigs(parentConfig,config));if(localeFamilies[name]){localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config)})}getSetGlobalLocale(name);return locales[name]}else{delete locales[name];return null}}function updateLocale(name,config){if(config!=null){var locale,parentConfig=baseConfig;if(locales[name]!=null){parentConfig=locales[name]._config}config=mergeConfigs(parentConfig,config);locale=new Locale(config);locale.parentLocale=locales[name];locales[name]=locale;getSetGlobalLocale(name)}else{if(locales[name]!=null){if(locales[name].parentLocale!=null){locales[name]=locales[name].parentLocale}else if(locales[name]!=null){delete locales[name]}}}return locales[name]}function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr){key=key._locale._abbr}if(!key){return globalLocale}if(!isArray(key)){locale=loadLocale(key);if(locale){return locale}key=[key]}return chooseLocale(key)}function listLocales(){return keys(locales)}function checkOverflow(m){var overflow;var a=m._a;if(a&&getParsingFlags(m).overflow===-2){overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||a[HOUR]===24&&(a[MINUTE]!==0||a[SECOND]!==0||a[MILLISECOND]!==0)?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1;if(getParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)){overflow=DATE}if(getParsingFlags(m)._overflowWeeks&&overflow===-1){overflow=WEEK}if(getParsingFlags(m)._overflowWeekday&&overflow===-1){overflow=WEEKDAY}getParsingFlags(m).overflow=overflow}return m}function defaults(a,b,c){if(a!=null){return a}if(b!=null){return b}return c}function currentDateArray(config){var nowValue=new Date(hooks.now());if(config._useUTC){return[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate()]}return[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()]}function configFromArray(config){var i,date,input=[],currentDate,yearToUse;if(config._d){return}currentDate=currentDateArray(config);if(config._w&&config._a[DATE]==null&&config._a[MONTH]==null){dayOfYearFromWeekInfo(config)}if(config._dayOfYear!=null){yearToUse=defaults(config._a[YEAR],currentDate[YEAR]);if(config._dayOfYear>daysInYear(yearToUse)||config._dayOfYear===0){getParsingFlags(config)._overflowDayOfYear=true}date=createUTCDate(yearToUse,0,config._dayOfYear);config._a[MONTH]=date.getUTCMonth();config._a[DATE]=date.getUTCDate()}for(i=0;i<3&&config._a[i]==null;++i){config._a[i]=input[i]=currentDate[i]}for(;i<7;i++){config._a[i]=input[i]=config._a[i]==null?i===2?1:0:config._a[i]}if(config._a[HOUR]===24&&config._a[MINUTE]===0&&config._a[SECOND]===0&&config._a[MILLISECOND]===0){config._nextDay=true;config._a[HOUR]=0}config._d=(config._useUTC?createUTCDate:createDate).apply(null,input);if(config._tzm!=null){config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm)}if(config._nextDay){config._a[HOUR]=24}if(config._w&&typeof config._w.d!==\"undefined\"&&config._w.d!==config._d.getDay()){getParsingFlags(config).weekdayMismatch=true}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow;w=config._w;if(w.GG!=null||w.W!=null||w.E!=null){dow=1;doy=4;weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year);week=defaults(w.W,1);weekday=defaults(w.E,1);if(weekday<1||weekday>7){weekdayOverflow=true}}else{dow=config._locale._week.dow;doy=config._locale._week.doy;var curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year);week=defaults(w.w,curWeek.week);if(w.d!=null){weekday=w.d;if(weekday<0||weekday>6){weekdayOverflow=true}}else if(w.e!=null){weekday=w.e+dow;if(w.e<0||w.e>6){weekdayOverflow=true}}else{weekday=dow}}if(week<1||week>weeksInYear(weekYear,dow,doy)){getParsingFlags(config)._overflowWeeks=true}else if(weekdayOverflow!=null){getParsingFlags(config)._overflowWeekday=true}else{temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy);config._a[YEAR]=temp.year;config._dayOfYear=temp.dayOfYear}}var extendedIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var basicIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var tzRegex=/Z|[+-]\\d\\d(?::?\\d\\d)?/;var isoDates=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,false],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,false],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,false],[\"YYYYDDD\",/\\d{7}/]];var isoTimes=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]];var aspNetJsonRegex=/^\\/?Date\\((\\-?\\d+)/i;function configFromISO(config){var i,l,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string),allowTime,dateFormat,timeFormat,tzFormat;if(match){getParsingFlags(config).iso=true;for(i=0,l=isoDates.length;i<l;i++){if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0];allowTime=isoDates[i][2]!==false;break}}if(dateFormat==null){config._isValid=false;return}if(match[3]){for(i=0,l=isoTimes.length;i<l;i++){if(isoTimes[i][1].exec(match[3])){timeFormat=(match[2]||\" \")+isoTimes[i][0];break}}if(timeFormat==null){config._isValid=false;return}}if(!allowTime&&timeFormat!=null){config._isValid=false;return}if(match[4]){if(tzRegex.exec(match[4])){tzFormat=\"Z\"}else{config._isValid=false;return}}config._f=dateFormat+(timeFormat||\"\")+(tzFormat||\"\");configFromStringAndFormat(config)}else{config._isValid=false}}var rfc2822=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/;function extractFromRFC2822Strings(yearStr,monthStr,dayStr,hourStr,minuteStr,secondStr){var result=[untruncateYear(yearStr),defaultLocaleMonthsShort.indexOf(monthStr),parseInt(dayStr,10),parseInt(hourStr,10),parseInt(minuteStr,10)];if(secondStr){result.push(parseInt(secondStr,10))}return result}function untruncateYear(yearStr){var year=parseInt(yearStr,10);if(year<=49){return 2e3+year}else if(year<=999){return 1900+year}return year}function preprocessRFC2822(s){return s.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim()}function checkWeekday(weekdayStr,parsedInput,config){if(weekdayStr){var weekdayProvided=defaultLocaleWeekdaysShort.indexOf(weekdayStr),weekdayActual=new Date(parsedInput[0],parsedInput[1],parsedInput[2]).getDay();if(weekdayProvided!==weekdayActual){getParsingFlags(config).weekdayMismatch=true;config._isValid=false;return false}}return true}var obsOffsets={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function calculateOffset(obsOffset,militaryOffset,numOffset){if(obsOffset){return obsOffsets[obsOffset]}else if(militaryOffset){return 0}else{var hm=parseInt(numOffset,10);var m=hm%100,h=(hm-m)/100;return h*60+m}}function configFromRFC2822(config){var match=rfc2822.exec(preprocessRFC2822(config._i));if(match){var parsedArray=extractFromRFC2822Strings(match[4],match[3],match[2],match[5],match[6],match[7]);if(!checkWeekday(match[1],parsedArray,config)){return}config._a=parsedArray;config._tzm=calculateOffset(match[8],match[9],match[10]);config._d=createUTCDate.apply(null,config._a);config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);getParsingFlags(config).rfc2822=true}else{config._isValid=false}}function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(matched!==null){config._d=new Date(+matched[1]);return}configFromISO(config);if(config._isValid===false){delete config._isValid}else{return}configFromRFC2822(config);if(config._isValid===false){delete config._isValid}else{return}hooks.createFromInputFallback(config)}hooks.createFromInputFallback=deprecate(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), \"+\"which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are \"+\"discouraged and will be removed in an upcoming major release. Please refer to \"+\"http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(config){config._d=new Date(config._i+(config._useUTC?\" UTC\":\"\"))});hooks.ISO_8601=function(){};hooks.RFC_2822=function(){};function configFromStringAndFormat(config){if(config._f===hooks.ISO_8601){configFromISO(config);return}if(config._f===hooks.RFC_2822){configFromRFC2822(config);return}config._a=[];getParsingFlags(config).empty=true\n;var string=\"\"+config._i,i,parsedInput,tokens,token,skipped,stringLength=string.length,totalParsedInputLength=0;tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[];for(i=0;i<tokens.length;i++){token=tokens[i];parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0];if(parsedInput){skipped=string.substr(0,string.indexOf(parsedInput));if(skipped.length>0){getParsingFlags(config).unusedInput.push(skipped)}string=string.slice(string.indexOf(parsedInput)+parsedInput.length);totalParsedInputLength+=parsedInput.length}if(formatTokenFunctions[token]){if(parsedInput){getParsingFlags(config).empty=false}else{getParsingFlags(config).unusedTokens.push(token)}addTimeToArrayFromToken(token,parsedInput,config)}else if(config._strict&&!parsedInput){getParsingFlags(config).unusedTokens.push(token)}}getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength;if(string.length>0){getParsingFlags(config).unusedInput.push(string)}if(config._a[HOUR]<=12&&getParsingFlags(config).bigHour===true&&config._a[HOUR]>0){getParsingFlags(config).bigHour=undefined}getParsingFlags(config).parsedDateParts=config._a.slice(0);getParsingFlags(config).meridiem=config._meridiem;config._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem);configFromArray(config);checkOverflow(config)}function meridiemFixWrap(locale,hour,meridiem){var isPm;if(meridiem==null){return hour}if(locale.meridiemHour!=null){return locale.meridiemHour(hour,meridiem)}else if(locale.isPM!=null){isPm=locale.isPM(meridiem);if(isPm&&hour<12){hour+=12}if(!isPm&&hour===12){hour=0}return hour}else{return hour}}function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore;if(config._f.length===0){getParsingFlags(config).invalidFormat=true;config._d=new Date(NaN);return}for(i=0;i<config._f.length;i++){currentScore=0;tempConfig=copyConfig({},config);if(config._useUTC!=null){tempConfig._useUTC=config._useUTC}tempConfig._f=config._f[i];configFromStringAndFormat(tempConfig);if(!isValid(tempConfig)){continue}currentScore+=getParsingFlags(tempConfig).charsLeftOver;currentScore+=getParsingFlags(tempConfig).unusedTokens.length*10;getParsingFlags(tempConfig).score=currentScore;if(scoreToBeat==null||currentScore<scoreToBeat){scoreToBeat=currentScore;bestMoment=tempConfig}}extend(config,bestMoment||tempConfig)}function configFromObject(config){if(config._d){return}var i=normalizeObjectUnits(config._i);config._a=map([i.year,i.month,i.day||i.date,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10)});configFromArray(config)}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config)));if(res._nextDay){res.add(1,\"d\");res._nextDay=undefined}return res}function prepareConfig(config){var input=config._i,format=config._f;config._locale=config._locale||getLocale(config._l);if(input===null||format===undefined&&input===\"\"){return createInvalid({nullInput:true})}if(typeof input===\"string\"){config._i=input=config._locale.preparse(input)}if(isMoment(input)){return new Moment(checkOverflow(input))}else if(isDate(input)){config._d=input}else if(isArray(format)){configFromStringAndArray(config)}else if(format){configFromStringAndFormat(config)}else{configFromInput(config)}if(!isValid(config)){config._d=null}return config}function configFromInput(config){var input=config._i;if(isUndefined(input)){config._d=new Date(hooks.now())}else if(isDate(input)){config._d=new Date(input.valueOf())}else if(typeof input===\"string\"){configFromString(config)}else if(isArray(input)){config._a=map(input.slice(0),function(obj){return parseInt(obj,10)});configFromArray(config)}else if(isObject(input)){configFromObject(config)}else if(isNumber(input)){config._d=new Date(input)}else{hooks.createFromInputFallback(config)}}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={};if(locale===true||locale===false){strict=locale;locale=undefined}if(isObject(input)&&isObjectEmpty(input)||isArray(input)&&input.length===0){input=undefined}c._isAMomentObject=true;c._useUTC=c._isUTC=isUTC;c._l=locale;c._i=input;c._f=format;c._strict=strict;return createFromConfig(c)}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,false)}var prototypeMin=deprecate(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other<this?this:other}else{return createInvalid()}});var prototypeMax=deprecate(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other>this?this:other}else{return createInvalid()}});function pickBy(fn,moments){var res,i;if(moments.length===1&&isArray(moments[0])){moments=moments[0]}if(!moments.length){return createLocal()}res=moments[0];for(i=1;i<moments.length;++i){if(!moments[i].isValid()||moments[i][fn](res)){res=moments[i]}}return res}function min(){var args=[].slice.call(arguments,0);return pickBy(\"isBefore\",args)}function max(){var args=[].slice.call(arguments,0);return pickBy(\"isAfter\",args)}var now=function(){return Date.now?Date.now():+new Date};var ordering=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];function isDurationValid(m){for(var key in m){if(!(indexOf.call(ordering,key)!==-1&&(m[key]==null||!isNaN(m[key])))){return false}}var unitHasDecimal=false;for(var i=0;i<ordering.length;++i){if(m[ordering[i]]){if(unitHasDecimal){return false}if(parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])){unitHasDecimal=true}}}return true}function isValid$1(){return this._isValid}function createInvalid$1(){return createDuration(NaN)}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput);this._milliseconds=+milliseconds+seconds*1e3+minutes*6e4+hours*1e3*60*60;this._days=+days+weeks*7;this._months=+months+quarters*3+years*12;this._data={};this._locale=getLocale();this._bubble()}function isDuration(obj){return obj instanceof Duration}function absRound(number){if(number<0){return Math.round(-1*number)*-1}else{return Math.round(number)}}function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset();var sign=\"+\";if(offset<0){offset=-offset;sign=\"-\"}return sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2)})}offset(\"Z\",\":\");offset(\"ZZ\",\"\");addRegexToken(\"Z\",matchShortOffset);addRegexToken(\"ZZ\",matchShortOffset);addParseToken([\"Z\",\"ZZ\"],function(input,array,config){config._useUTC=true;config._tzm=offsetFromString(matchShortOffset,input)});var chunkOffset=/([\\+\\-]|\\d\\d)/gi;function offsetFromString(matcher,string){var matches=(string||\"\").match(matcher);if(matches===null){return null}var chunk=matches[matches.length-1]||[];var parts=(chunk+\"\").match(chunkOffset)||[\"-\",0,0];var minutes=+(parts[1]*60)+toInt(parts[2]);return minutes===0?0:parts[0]===\"+\"?minutes:-minutes}function cloneWithOffset(input,model){var res,diff;if(model._isUTC){res=model.clone();diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf();res._d.setTime(res._d.valueOf()+diff);hooks.updateOffset(res,false);return res}else{return createLocal(input).local()}}function getDateOffset(m){return-Math.round(m._d.getTimezoneOffset()/15)*15}hooks.updateOffset=function(){};function getSetOffset(input,keepLocalTime,keepMinutes){var offset=this._offset||0,localAdjust;if(!this.isValid()){return input!=null?this:NaN}if(input!=null){if(typeof input===\"string\"){input=offsetFromString(matchShortOffset,input);if(input===null){return this}}else if(Math.abs(input)<16&&!keepMinutes){input=input*60}if(!this._isUTC&&keepLocalTime){localAdjust=getDateOffset(this)}this._offset=input;this._isUTC=true;if(localAdjust!=null){this.add(localAdjust,\"m\")}if(offset!==input){if(!keepLocalTime||this._changeInProgress){addSubtract(this,createDuration(input-offset,\"m\"),1,false)}else if(!this._changeInProgress){this._changeInProgress=true;hooks.updateOffset(this,true);this._changeInProgress=null}}return this}else{return this._isUTC?offset:getDateOffset(this)}}function getSetZone(input,keepLocalTime){if(input!=null){if(typeof input!==\"string\"){input=-input}this.utcOffset(input,keepLocalTime);return this}else{return-this.utcOffset()}}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime)}function setOffsetToLocal(keepLocalTime){if(this._isUTC){this.utcOffset(0,keepLocalTime);this._isUTC=false;if(keepLocalTime){this.subtract(getDateOffset(this),\"m\")}}return this}function setOffsetToParsedOffset(){if(this._tzm!=null){this.utcOffset(this._tzm,false,true)}else if(typeof this._i===\"string\"){var tZone=offsetFromString(matchOffset,this._i);if(tZone!=null){this.utcOffset(tZone)}else{this.utcOffset(0,true)}}return this}function hasAlignedHourOffset(input){if(!this.isValid()){return false}input=input?createLocal(input).utcOffset():0;return(this.utcOffset()-input)%60===0}function isDaylightSavingTime(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted)){return this._isDSTShifted}var c={};copyConfig(c,this);c=prepareConfig(c);if(c._a){var other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0}else{this._isDSTShifted=false}return this._isDSTShifted}function isLocal(){return this.isValid()?!this._isUTC:false}function isUtcOffset(){return this.isValid()?this._isUTC:false}function isUtc(){return this.isValid()?this._isUTC&&this._offset===0:false}var aspNetRegex=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;var isoRegex=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function createDuration(input,key){var duration=input,match=null,sign,ret,diffRes;if(isDuration(input)){duration={ms:input._milliseconds,d:input._days,M:input._months}}else if(isNumber(input)){duration={};if(key){duration[key]=input}else{duration.milliseconds=input}}else if(!!(match=aspNetRegex.exec(input))){sign=match[1]===\"-\"?-1:1;duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(match[MILLISECOND]*1e3))*sign}}else if(!!(match=isoRegex.exec(input))){sign=match[1]===\"-\"?-1:match[1]===\"+\"?1:1;duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign)}}else if(duration==null){duration={}}else if(typeof duration===\"object\"&&(\"from\"in duration||\"to\"in duration)){diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to));duration={};duration.ms=diffRes.milliseconds;duration.M=diffRes.months}ret=new Duration(duration);if(isDuration(input)&&hasOwnProp(input,\"_locale\")){ret._locale=input._locale}return ret}createDuration.fn=Duration.prototype;createDuration.invalid=createInvalid$1;function parseIso(inp,sign){var res=inp&&parseFloat(inp.replace(\",\",\".\"));return(isNaN(res)?0:res)*sign}function positiveMomentsDifference(base,other){var res={milliseconds:0,months:0};res.months=other.month()-base.month()+(other.year()-base.year())*12;if(base.clone().add(res.months,\"M\").isAfter(other)){--res.months}res.milliseconds=+other-+base.clone().add(res.months,\"M\");return res}function momentsDifference(base,other){var res;if(!(base.isValid()&&other.isValid())){return{milliseconds:0,months:0}}other=cloneWithOffset(other,base);if(base.isBefore(other)){res=positiveMomentsDifference(base,other)}else{res=positiveMomentsDifference(other,base);res.milliseconds=-res.milliseconds;res.months=-res.months}return res}function createAdder(direction,name){return function(val,period){var dur,tmp;if(period!==null&&!isNaN(+period)){deprecateSimple(name,\"moment().\"+name+\"(period, number) is deprecated. Please use moment().\"+name+\"(number, period). \"+\"See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\");tmp=val;val=period;period=tmp}val=typeof val===\"string\"?+val:val;dur=createDuration(val,period);addSubtract(this,dur,direction);return this}}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);if(!mom.isValid()){return}updateOffset=updateOffset==null?true:updateOffset;if(months){setMonth(mom,get(mom,\"Month\")+months*isAdding)}if(days){set$1(mom,\"Date\",get(mom,\"Date\")+days*isAdding)}if(milliseconds){mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding)}if(updateOffset){hooks.updateOffset(mom,days||months)}}var add=createAdder(1,\"add\");var subtract=createAdder(-1,\"subtract\");function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,\"days\",true);return diff<-6?\"sameElse\":diff<-1?\"lastWeek\":diff<0?\"lastDay\":diff<1?\"sameDay\":diff<2?\"nextDay\":diff<7?\"nextWeek\":\"sameElse\"}function calendar$1(time,formats){var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf(\"day\"),format=hooks.calendarFormat(this,sod)||\"sameElse\";var output=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)))}function clone(){return new Moment(this)}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()>localInput.valueOf()}else{return localInput.valueOf()<this.clone().startOf(units).valueOf()}}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()<localInput.valueOf()}else{return this.clone().endOf(units).valueOf()<localInput.valueOf()}}function isBetween(from,to,units,inclusivity){inclusivity=inclusivity||\"()\";return(inclusivity[0]===\"(\"?this.isAfter(from,units):!this.isBefore(from,units))&&(inclusivity[1]===\")\"?this.isBefore(to,units):!this.isAfter(to,units))}function isSame(input,units){var localInput=isMoment(input)?input:createLocal(input),inputMs;if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(units||\"millisecond\");if(units===\"millisecond\"){return this.valueOf()===localInput.valueOf()}else{inputMs=localInput.valueOf();return this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf()}}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units)}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units)}function diff(input,units,asFloat){var that,zoneDelta,delta,output;if(!this.isValid()){return NaN}that=cloneWithOffset(input,this);if(!that.isValid()){return NaN}zoneDelta=(that.utcOffset()-this.utcOffset())*6e4;units=normalizeUnits(units);switch(units){case\"year\":output=monthDiff(this,that)/12;break;case\"month\":output=monthDiff(this,that);break;case\"quarter\":output=monthDiff(this,that)/3;break;case\"second\":output=(this-that)/1e3;break;case\"minute\":output=(this-that)/6e4;break;case\"hour\":output=(this-that)/36e5;break;case\"day\":output=(this-that-zoneDelta)/864e5;break;case\"week\":output=(this-that-zoneDelta)/6048e5;break;default:output=this-that}return asFloat?output:absFloor(output)}function monthDiff(a,b){var wholeMonthDiff=(b.year()-a.year())*12+(b.month()-a.month()),anchor=a.clone().add(wholeMonthDiff,\"months\"),anchor2,adjust;if(b-anchor<0){anchor2=a.clone().add(wholeMonthDiff-1,\"months\");adjust=(b-anchor)/(anchor-anchor2)}else{anchor2=a.clone().add(wholeMonthDiff+1,\"months\");adjust=(b-anchor)/(anchor2-anchor)}return-(wholeMonthDiff+adjust)||0}hooks.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\";hooks.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";function toString(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")}function toISOString(){if(!this.isValid()){return null}var m=this.clone().utc();if(m.year()<0||m.year()>9999){return formatMoment(m,\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}if(isFunction(Date.prototype.toISOString)){return this.toDate().toISOString()}return formatMoment(m,\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}function inspect(){if(!this.isValid()){return\"moment.invalid(/* \"+this._i+\" */)\"}var func=\"moment\";var zone=\"\";if(!this.isLocal()){func=this.utcOffset()===0?\"moment.utc\":\"moment.parseZone\";zone=\"Z\"}var prefix=\"[\"+func+'(\"]';var year=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\";var datetime=\"-MM-DD[T]HH:mm:ss.SSS\";var suffix=zone+'[\")]';return this.format(prefix+year+datetime+suffix)}function format(inputString){if(!inputString){inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat}var output=formatMoment(this,inputString);return this.localeData().postformat(output)}function from(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix)}function to(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix)}function locale(key){var newLocaleData;if(key===undefined){return this._locale._abbr}else{newLocaleData=getLocale(key);if(newLocaleData!=null){this._locale=newLocaleData}return this}}var lang=deprecate(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(key){if(key===undefined){return this.localeData()}else{return this.locale(key)}});function localeData(){return this._locale}function startOf(units){units=normalizeUnits(units);switch(units){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}if(units===\"week\"){this.weekday(0)}if(units===\"isoWeek\"){this.isoWeekday(1)}if(units===\"quarter\"){this.month(Math.floor(this.month()/3)*3)}return this}function endOf(units){units=normalizeUnits(units);if(units===undefined||units===\"millisecond\"){return this}if(units===\"date\"){units=\"day\"}return this.startOf(units).add(1,units===\"isoWeek\"?\"week\":units).subtract(1,\"ms\")}function valueOf(){return this._d.valueOf()-(this._offset||0)*6e4}function unix(){return Math.floor(this.valueOf()/1e3)}function toDate(){return new Date(this.valueOf())}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond()]}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds()}}function toJSON(){return this.isValid()?this.toISOString():null}function isValid$2(){return isValid(this)}function parsingFlags(){return extend({},getParsingFlags(this))}function invalidAt(){return getParsingFlags(this).overflow}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}addFormatToken(0,[\"gg\",2],0,function(){return this.weekYear()%100});addFormatToken(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100});function addWeekYearFormatToken(token,getter){addFormatToken(0,[token,token.length],0,getter)}addWeekYearFormatToken(\"gggg\",\"weekYear\");addWeekYearFormatToken(\"ggggg\",\"weekYear\");addWeekYearFormatToken(\"GGGG\",\"isoWeekYear\");addWeekYearFormatToken(\"GGGGG\",\"isoWeekYear\");addUnitAlias(\"weekYear\",\"gg\");addUnitAlias(\"isoWeekYear\",\"GG\");addUnitPriority(\"weekYear\",1);addUnitPriority(\"isoWeekYear\",1);addRegexToken(\"G\",matchSigned);addRegexToken(\"g\",matchSigned);addRegexToken(\"GG\",match1to2,match2);addRegexToken(\"gg\",match1to2,match2);addRegexToken(\"GGGG\",match1to4,match4);addRegexToken(\"gggg\",match1to4,match4);addRegexToken(\"GGGGG\",match1to6,match6);addRegexToken(\"ggggg\",match1to6,match6);addWeekParseToken([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(input,week,config,token){week[token.substr(0,2)]=toInt(input)});addWeekParseToken([\"gg\",\"GG\"],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input)});function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(this,input,this.isoWeek(),this.isoWeekday(),1,4)}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4)}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy)}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;if(input==null){return weekOfYear(this,dow,doy).year}else{weeksTarget=weeksInYear(input,dow,doy);if(week>weeksTarget){week=weeksTarget}return setWeekAll.call(this,input,week,weekday,dow,doy)}}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);this.year(date.getUTCFullYear());this.month(date.getUTCMonth());this.date(date.getUTCDate());return this}addFormatToken(\"Q\",0,\"Qo\",\"quarter\");addUnitAlias(\"quarter\",\"Q\");addUnitPriority(\"quarter\",7);addRegexToken(\"Q\",match1);addParseToken(\"Q\",function(input,array){array[MONTH]=(toInt(input)-1)*3});function getSetQuarter(input){return input==null?Math.ceil((this.month()+1)/3):this.month((input-1)*3+this.month()%3)}addFormatToken(\"D\",[\"DD\",2],\"Do\",\"date\");addUnitAlias(\"date\",\"D\");addUnitPriority(\"date\",9);addRegexToken(\"D\",match1to2);addRegexToken(\"DD\",match1to2,match2);addRegexToken(\"Do\",function(isStrict,locale){return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient});addParseToken([\"D\",\"DD\"],DATE);addParseToken(\"Do\",function(input,array){array[DATE]=toInt(input.match(match1to2)[0],10)});var getSetDayOfMonth=makeGetSet(\"Date\",true);addFormatToken(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\");addUnitAlias(\"dayOfYear\",\"DDD\");addUnitPriority(\"dayOfYear\",4);addRegexToken(\"DDD\",match1to3);addRegexToken(\"DDDD\",match3);addParseToken([\"DDD\",\"DDDD\"],function(input,array,config){config._dayOfYear=toInt(input)});function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return input==null?dayOfYear:this.add(input-dayOfYear,\"d\")}addFormatToken(\"m\",[\"mm\",2],0,\"minute\");addUnitAlias(\"minute\",\"m\");addUnitPriority(\"minute\",14);addRegexToken(\"m\",match1to2);addRegexToken(\"mm\",match1to2,match2);addParseToken([\"m\",\"mm\"],MINUTE);var getSetMinute=makeGetSet(\"Minutes\",false);addFormatToken(\"s\",[\"ss\",2],0,\"second\");addUnitAlias(\"second\",\"s\");addUnitPriority(\"second\",15);addRegexToken(\"s\",match1to2);addRegexToken(\"ss\",match1to2,match2);addParseToken([\"s\",\"ss\"],SECOND);var getSetSecond=makeGetSet(\"Seconds\",false);addFormatToken(\"S\",0,0,function(){return~~(this.millisecond()/100)});addFormatToken(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)});addFormatToken(0,[\"SSS\",3],0,\"millisecond\");addFormatToken(0,[\"SSSS\",4],0,function(){return this.millisecond()*10});addFormatToken(0,[\"SSSSS\",5],0,function(){return this.millisecond()*100});addFormatToken(0,[\"SSSSSS\",6],0,function(){return this.millisecond()*1e3});addFormatToken(0,[\"SSSSSSS\",7],0,function(){return this.millisecond()*1e4});addFormatToken(0,[\"SSSSSSSS\",8],0,function(){return this.millisecond()*1e5});addFormatToken(0,[\"SSSSSSSSS\",9],0,function(){return this.millisecond()*1e6});addUnitAlias(\"millisecond\",\"ms\");addUnitPriority(\"millisecond\",16);addRegexToken(\"S\",match1to3,match1);addRegexToken(\"SS\",match1to3,match2);addRegexToken(\"SSS\",match1to3,match3);var token;for(token=\"SSSS\";token.length<=9;token+=\"S\"){addRegexToken(token,matchUnsigned)}function parseMs(input,array){array[MILLISECOND]=toInt((\"0.\"+input)*1e3)}for(token=\"S\";token.length<=9;token+=\"S\"){addParseToken(token,parseMs)}var getSetMillisecond=makeGetSet(\"Milliseconds\",false);addFormatToken(\"z\",0,0,\"zoneAbbr\");addFormatToken(\"zz\",0,0,\"zoneName\");function getZoneAbbr(){return this._isUTC?\"UTC\":\"\"}function getZoneName(){return this._isUTC?\"Coordinated Universal Time\":\"\"}var proto=Moment.prototype;proto.add=add;proto.calendar=calendar$1;proto.clone=clone;proto.diff=diff;proto.endOf=endOf;proto.format=format;proto.from=from;proto.fromNow=fromNow;proto.to=to;proto.toNow=toNow;proto.get=stringGet;proto.invalidAt=invalidAt;proto.isAfter=isAfter;proto.isBefore=isBefore;proto.isBetween=isBetween;proto.isSame=isSame;proto.isSameOrAfter=isSameOrAfter;proto.isSameOrBefore=isSameOrBefore;proto.isValid=isValid$2;proto.lang=lang;proto.locale=locale;proto.localeData=localeData;proto.max=prototypeMax;proto.min=prototypeMin;proto.parsingFlags=parsingFlags;proto.set=stringSet;proto.startOf=startOf;proto.subtract=subtract;proto.toArray=toArray;proto.toObject=toObject;proto.toDate=toDate;proto.toISOString=toISOString;proto.inspect=inspect;proto.toJSON=toJSON;proto.toString=toString;proto.unix=unix;proto.valueOf=valueOf;proto.creationData=creationData;proto.year=getSetYear;proto.isLeapYear=getIsLeapYear;proto.weekYear=getSetWeekYear;proto.isoWeekYear=getSetISOWeekYear;proto.quarter=proto.quarters=getSetQuarter;proto.month=getSetMonth;proto.daysInMonth=getDaysInMonth;proto.week=proto.weeks=getSetWeek;proto.isoWeek=proto.isoWeeks=getSetISOWeek;proto.weeksInYear=getWeeksInYear;proto.isoWeeksInYear=getISOWeeksInYear;proto.date=getSetDayOfMonth;proto.day=proto.days=getSetDayOfWeek;proto.weekday=getSetLocaleDayOfWeek;proto.isoWeekday=getSetISODayOfWeek;proto.dayOfYear=getSetDayOfYear;proto.hour=proto.hours=getSetHour;proto.minute=proto.minutes=getSetMinute;proto.second=proto.seconds=getSetSecond;proto.millisecond=proto.milliseconds=getSetMillisecond;proto.utcOffset=getSetOffset;proto.utc=setOffsetToUTC;proto.local=setOffsetToLocal;proto.parseZone=setOffsetToParsedOffset;proto.hasAlignedHourOffset=hasAlignedHourOffset;proto.isDST=isDaylightSavingTime;proto.isLocal=isLocal;proto.isUtcOffset=isUtcOffset;proto.isUtc=isUtc;proto.isUTC=isUtc;proto.zoneAbbr=getZoneAbbr;proto.zoneName=getZoneName;proto.dates=deprecate(\"dates accessor is deprecated. Use date instead.\",getSetDayOfMonth);proto.months=deprecate(\"months accessor is deprecated. Use month instead\",getSetMonth);proto.years=deprecate(\"years accessor is deprecated. Use year instead\",getSetYear);proto.zone=deprecate(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",getSetZone);proto.isDSTShifted=deprecate(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",isDaylightSavingTimeShifted);function createUnix(input){return createLocal(input*1e3)}function createInZone(){return createLocal.apply(null,arguments).parseZone()}function preParsePostFormat(string){return string}var proto$1=Locale.prototype;proto$1.calendar=calendar;proto$1.longDateFormat=longDateFormat;proto$1.invalidDate=invalidDate;proto$1.ordinal=ordinal;proto$1.preparse=preParsePostFormat;proto$1.postformat=preParsePostFormat;proto$1.relativeTime=relativeTime;proto$1.pastFuture=pastFuture;proto$1.set=set;proto$1.months=localeMonths;proto$1.monthsShort=localeMonthsShort;proto$1.monthsParse=localeMonthsParse;proto$1.monthsRegex=monthsRegex;proto$1.monthsShortRegex=monthsShortRegex;proto$1.week=localeWeek;proto$1.firstDayOfYear=localeFirstDayOfYear;proto$1.firstDayOfWeek=localeFirstDayOfWeek;proto$1.weekdays=localeWeekdays;proto$1.weekdaysMin=localeWeekdaysMin;proto$1.weekdaysShort=localeWeekdaysShort;proto$1.weekdaysParse=localeWeekdaysParse;proto$1.weekdaysRegex=weekdaysRegex;proto$1.weekdaysShortRegex=weekdaysShortRegex;proto$1.weekdaysMinRegex=weekdaysMinRegex;proto$1.isPM=localeIsPM;proto$1.meridiem=localeMeridiem;function get$1(format,index,field,setter){var locale=getLocale();var utc=createUTC().set(setter,index);return locale[field](utc,format)}function listMonthsImpl(format,index,field){if(isNumber(format)){index=format;format=undefined}format=format||\"\";if(index!=null){return get$1(format,index,field,\"month\")}var i;var out=[];for(i=0;i<12;i++){out[i]=get$1(format,i,field,\"month\")}return out}function listWeekdaysImpl(localeSorted,format,index,field){if(typeof localeSorted===\"boolean\"){if(isNumber(format)){index=format;format=undefined}format=format||\"\"}else{format=localeSorted;index=format;localeSorted=false;if(isNumber(format)){index=format;format=undefined}format=format||\"\"}var locale=getLocale(),shift=localeSorted?locale._week.dow:0;if(index!=null){return get$1(format,(index+shift)%7,field,\"day\")}var i;var out=[];for(i=0;i<7;i++){out[i]=get$1(format,(i+shift)%7,field,\"day\")}return out}function listMonths(format,index){return listMonthsImpl(format,index,\"months\")}function listMonthsShort(format,index){return listMonthsImpl(format,index,\"monthsShort\")}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdays\")}function listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysShort\")}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysMin\")}getSetGlobalLocale(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10,output=toInt(number%100/10)===1?\"th\":b===1?\"st\":b===2?\"nd\":b===3?\"rd\":\"th\";return number+output}});hooks.lang=deprecate(\"moment.lang is deprecated. Use moment.locale instead.\",getSetGlobalLocale);hooks.langData=deprecate(\"moment.langData is deprecated. Use moment.localeData instead.\",getLocale);var mathAbs=Math.abs;function abs(){var data=this._data;this._milliseconds=mathAbs(this._milliseconds);this._days=mathAbs(this._days);this._months=mathAbs(this._months);data.milliseconds=mathAbs(data.milliseconds);data.seconds=mathAbs(data.seconds);data.minutes=mathAbs(data.minutes);data.hours=mathAbs(data.hours);data.months=mathAbs(data.months);data.years=mathAbs(data.years);return this}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);duration._milliseconds+=direction*other._milliseconds;duration._days+=direction*other._days;duration._months+=direction*other._months;return duration._bubble()}function add$1(input,value){return addSubtract$1(this,input,value,1)}function subtract$1(input,value){return addSubtract$1(this,input,value,-1)}function absCeil(number){if(number<0){return Math.floor(number)}else{return Math.ceil(number)}}function bubble(){var milliseconds=this._milliseconds;var days=this._days;var months=this._months;var data=this._data;var seconds,minutes,hours,years,monthsFromDays;if(!(milliseconds>=0&&days>=0&&months>=0||milliseconds<=0&&days<=0&&months<=0)){milliseconds+=absCeil(monthsToDays(months)+days)*864e5;days=0;months=0}data.milliseconds=milliseconds%1e3;seconds=absFloor(milliseconds/1e3);data.seconds=seconds%60;minutes=absFloor(seconds/60)\n;data.minutes=minutes%60;hours=absFloor(minutes/60);data.hours=hours%24;days+=absFloor(hours/24);monthsFromDays=absFloor(daysToMonths(days));months+=monthsFromDays;days-=absCeil(monthsToDays(monthsFromDays));years=absFloor(months/12);months%=12;data.days=days;data.months=months;data.years=years;return this}function daysToMonths(days){return days*4800/146097}function monthsToDays(months){return months*146097/4800}function as(units){if(!this.isValid()){return NaN}var days;var months;var milliseconds=this._milliseconds;units=normalizeUnits(units);if(units===\"month\"||units===\"year\"){days=this._days+milliseconds/864e5;months=this._months+daysToMonths(days);return units===\"month\"?months:months/12}else{days=this._days+Math.round(monthsToDays(this._months));switch(units){case\"week\":return days/7+milliseconds/6048e5;case\"day\":return days+milliseconds/864e5;case\"hour\":return days*24+milliseconds/36e5;case\"minute\":return days*1440+milliseconds/6e4;case\"second\":return days*86400+milliseconds/1e3;case\"millisecond\":return Math.floor(days*864e5)+milliseconds;default:throw new Error(\"Unknown unit \"+units)}}}function valueOf$1(){if(!this.isValid()){return NaN}return this._milliseconds+this._days*864e5+this._months%12*2592e6+toInt(this._months/12)*31536e6}function makeAs(alias){return function(){return this.as(alias)}}var asMilliseconds=makeAs(\"ms\");var asSeconds=makeAs(\"s\");var asMinutes=makeAs(\"m\");var asHours=makeAs(\"h\");var asDays=makeAs(\"d\");var asWeeks=makeAs(\"w\");var asMonths=makeAs(\"M\");var asYears=makeAs(\"y\");function clone$1(){return createDuration(this)}function get$2(units){units=normalizeUnits(units);return this.isValid()?this[units+\"s\"]():NaN}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN}}var milliseconds=makeGetter(\"milliseconds\");var seconds=makeGetter(\"seconds\");var minutes=makeGetter(\"minutes\");var hours=makeGetter(\"hours\");var days=makeGetter(\"days\");var months=makeGetter(\"months\");var years=makeGetter(\"years\");function weeks(){return absFloor(this.days()/7)}var round=Math.round;var thresholds={ss:44,s:45,m:45,h:22,d:26,M:11};function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture)}function relativeTime$1(posNegDuration,withoutSuffix,locale){var duration=createDuration(posNegDuration).abs();var seconds=round(duration.as(\"s\"));var minutes=round(duration.as(\"m\"));var hours=round(duration.as(\"h\"));var days=round(duration.as(\"d\"));var months=round(duration.as(\"M\"));var years=round(duration.as(\"y\"));var a=seconds<=thresholds.ss&&[\"s\",seconds]||seconds<thresholds.s&&[\"ss\",seconds]||minutes<=1&&[\"m\"]||minutes<thresholds.m&&[\"mm\",minutes]||hours<=1&&[\"h\"]||hours<thresholds.h&&[\"hh\",hours]||days<=1&&[\"d\"]||days<thresholds.d&&[\"dd\",days]||months<=1&&[\"M\"]||months<thresholds.M&&[\"MM\",months]||years<=1&&[\"y\"]||[\"yy\",years];a[2]=withoutSuffix;a[3]=+posNegDuration>0;a[4]=locale;return substituteTimeAgo.apply(null,a)}function getSetRelativeTimeRounding(roundingFunction){if(roundingFunction===undefined){return round}if(typeof roundingFunction===\"function\"){round=roundingFunction;return true}return false}function getSetRelativeTimeThreshold(threshold,limit){if(thresholds[threshold]===undefined){return false}if(limit===undefined){return thresholds[threshold]}thresholds[threshold]=limit;if(threshold===\"s\"){thresholds.ss=limit-1}return true}function humanize(withSuffix){if(!this.isValid()){return this.localeData().invalidDate()}var locale=this.localeData();var output=relativeTime$1(this,!withSuffix,locale);if(withSuffix){output=locale.pastFuture(+this,output)}return locale.postformat(output)}var abs$1=Math.abs;function sign(x){return(x>0)-(x<0)||+x}function toISOString$1(){if(!this.isValid()){return this.localeData().invalidDate()}var seconds=abs$1(this._milliseconds)/1e3;var days=abs$1(this._days);var months=abs$1(this._months);var minutes,hours,years;minutes=absFloor(seconds/60);hours=absFloor(minutes/60);seconds%=60;minutes%=60;years=absFloor(months/12);months%=12;var Y=years;var M=months;var D=days;var h=hours;var m=minutes;var s=seconds?seconds.toFixed(3).replace(/\\.?0+$/,\"\"):\"\";var total=this.asSeconds();if(!total){return\"P0D\"}var totalSign=total<0?\"-\":\"\";var ymSign=sign(this._months)!==sign(total)?\"-\":\"\";var daysSign=sign(this._days)!==sign(total)?\"-\":\"\";var hmsSign=sign(this._milliseconds)!==sign(total)?\"-\":\"\";return totalSign+\"P\"+(Y?ymSign+Y+\"Y\":\"\")+(M?ymSign+M+\"M\":\"\")+(D?daysSign+D+\"D\":\"\")+(h||m||s?\"T\":\"\")+(h?hmsSign+h+\"H\":\"\")+(m?hmsSign+m+\"M\":\"\")+(s?hmsSign+s+\"S\":\"\")}var proto$2=Duration.prototype;proto$2.isValid=isValid$1;proto$2.abs=abs;proto$2.add=add$1;proto$2.subtract=subtract$1;proto$2.as=as;proto$2.asMilliseconds=asMilliseconds;proto$2.asSeconds=asSeconds;proto$2.asMinutes=asMinutes;proto$2.asHours=asHours;proto$2.asDays=asDays;proto$2.asWeeks=asWeeks;proto$2.asMonths=asMonths;proto$2.asYears=asYears;proto$2.valueOf=valueOf$1;proto$2._bubble=bubble;proto$2.clone=clone$1;proto$2.get=get$2;proto$2.milliseconds=milliseconds;proto$2.seconds=seconds;proto$2.minutes=minutes;proto$2.hours=hours;proto$2.days=days;proto$2.weeks=weeks;proto$2.months=months;proto$2.years=years;proto$2.humanize=humanize;proto$2.toISOString=toISOString$1;proto$2.toString=toISOString$1;proto$2.toJSON=toISOString$1;proto$2.locale=locale;proto$2.localeData=localeData;proto$2.toIsoString=deprecate(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",toISOString$1);proto$2.lang=lang;addFormatToken(\"X\",0,0,\"unix\");addFormatToken(\"x\",0,0,\"valueOf\");addRegexToken(\"x\",matchSigned);addRegexToken(\"X\",matchTimestamp);addParseToken(\"X\",function(input,array,config){config._d=new Date(parseFloat(input,10)*1e3)});addParseToken(\"x\",function(input,array,config){config._d=new Date(toInt(input))});hooks.version=\"2.19.1\";setHookCallback(createLocal);hooks.fn=proto;hooks.min=min;hooks.max=max;hooks.now=now;hooks.utc=createUTC;hooks.unix=createUnix;hooks.months=listMonths;hooks.isDate=isDate;hooks.locale=getSetGlobalLocale;hooks.invalid=createInvalid;hooks.duration=createDuration;hooks.isMoment=isMoment;hooks.weekdays=listWeekdays;hooks.parseZone=createInZone;hooks.localeData=getLocale;hooks.isDuration=isDuration;hooks.monthsShort=listMonthsShort;hooks.weekdaysMin=listWeekdaysMin;hooks.defineLocale=defineLocale;hooks.updateLocale=updateLocale;hooks.locales=listLocales;hooks.weekdaysShort=listWeekdaysShort;hooks.normalizeUnits=normalizeUnits;hooks.relativeTimeRounding=getSetRelativeTimeRounding;hooks.relativeTimeThreshold=getSetRelativeTimeThreshold;hooks.calendarFormat=getCalendarFormat;hooks.prototype=proto;return hooks})}).call(exports,__webpack_require__(155)(module))},function(module,exports){module.exports=function(module){if(!module.webpackPolyfill){module.deprecate=function(){};module.paths=[];if(!module.children)module.children=[];Object.defineProperty(module,\"loaded\",{enumerable:true,get:function(){return module.l}});Object.defineProperty(module,\"id\",{enumerable:true,get:function(){return module.i}});module.webpackPolyfill=1}return module}},function(module,exports){function webpackEmptyContext(req){throw new Error(\"Cannot find module '\"+req+\"'.\")}webpackEmptyContext.keys=function(){return[]};webpackEmptyContext.resolve=webpackEmptyContext;module.exports=webpackEmptyContext;webpackEmptyContext.id=156},function(module,exports,__webpack_require__){\"use strict\";(function(global){var _rng;var globalVar=typeof window!==\"undefined\"?window:typeof global!==\"undefined\"?global:null;if(globalVar&&globalVar.crypto&&crypto.getRandomValues){var _rnds8=new Uint8Array(16);_rng=function whatwgRNG(){crypto.getRandomValues(_rnds8);return _rnds8}}if(!_rng){var _rnds=new Array(16);_rng=function _rng(){for(var i=0,r;i<16;i++){if((i&3)===0)r=Math.random()*4294967296;_rnds[i]=r>>>((i&3)<<3)&255}return _rnds}}var _byteToHex=[];var _hexToByte={};for(var i=0;i<256;i++){_byteToHex[i]=(i+256).toString(16).substr(1);_hexToByte[_byteToHex[i]]=i}function parse(s,buf,offset){var i=buf&&offset||0,ii=0;buf=buf||[];s.toLowerCase().replace(/[0-9a-f]{2}/g,function(oct){if(ii<16){buf[i+ii++]=_hexToByte[oct]}});while(ii<16){buf[i+ii++]=0}return buf}function unparse(buf,offset){var i=offset||0,bth=_byteToHex;return bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]}var _seedBytes=_rng();var _nodeId=[_seedBytes[0]|1,_seedBytes[1],_seedBytes[2],_seedBytes[3],_seedBytes[4],_seedBytes[5]];var _clockseq=(_seedBytes[6]<<8|_seedBytes[7])&16383;var _lastMSecs=0,_lastNSecs=0;function v1(options,buf,offset){var i=buf&&offset||0;var b=buf||[];options=options||{};var clockseq=options.clockseq!==undefined?options.clockseq:_clockseq;var msecs=options.msecs!==undefined?options.msecs:(new Date).getTime();var nsecs=options.nsecs!==undefined?options.nsecs:_lastNSecs+1;var dt=msecs-_lastMSecs+(nsecs-_lastNSecs)/1e4;if(dt<0&&options.clockseq===undefined){clockseq=clockseq+1&16383}if((dt<0||msecs>_lastMSecs)&&options.nsecs===undefined){nsecs=0}if(nsecs>=1e4){throw new Error(\"uuid.v1(): Can't create more than 10M uuids/sec\")}_lastMSecs=msecs;_lastNSecs=nsecs;_clockseq=clockseq;msecs+=122192928e5;var tl=((msecs&268435455)*1e4+nsecs)%4294967296;b[i++]=tl>>>24&255;b[i++]=tl>>>16&255;b[i++]=tl>>>8&255;b[i++]=tl&255;var tmh=msecs/4294967296*1e4&268435455;b[i++]=tmh>>>8&255;b[i++]=tmh&255;b[i++]=tmh>>>24&15|16;b[i++]=tmh>>>16&255;b[i++]=clockseq>>>8|128;b[i++]=clockseq&255;var node=options.node||_nodeId;for(var n=0;n<6;n++){b[i+n]=node[n]}return buf?buf:unparse(b)}function v4(options,buf,offset){var i=buf&&offset||0;if(typeof options==\"string\"){buf=options==\"binary\"?new Array(16):null;options=null}options=options||{};var rnds=options.random||(options.rng||_rng)();rnds[6]=rnds[6]&15|64;rnds[8]=rnds[8]&63|128;if(buf){for(var ii=0;ii<16;ii++){buf[i+ii]=rnds[ii]}}return buf||unparse(rnds)}var uuid=v4;uuid.v1=v1;uuid.v4=v4;uuid.parse=parse;uuid.unparse=unparse;module.exports=uuid}).call(exports,__webpack_require__(158))},function(module,exports){var g;g=function(){return this}();try{g=g||Function(\"return this\")()||(1,eval)(\"this\")}catch(e){if(typeof window===\"object\")g=window}module.exports=g},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Graph3d=__webpack_require__(161);exports.graph3d={Camera:__webpack_require__(95),Filter:__webpack_require__(96),Point2d:__webpack_require__(91),Point3d:__webpack_require__(34),Slider:__webpack_require__(92),StepNumber:__webpack_require__(93)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){var core=__webpack_require__(7);var $JSON=core.JSON||(core.JSON={stringify:JSON.stringify});module.exports=function stringify(it){return $JSON.stringify.apply($JSON,arguments)}},function(module,exports,__webpack_require__){\"use strict\";var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var Point3d=__webpack_require__(34);var Point2d=__webpack_require__(91);var Slider=__webpack_require__(92);var StepNumber=__webpack_require__(93);var Settings=__webpack_require__(94);var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(172),allOptions=_require2.allOptions;var DataGroup=__webpack_require__(173);Graph3d.STYLE=Settings.STYLE;var autoByDefault=undefined;Graph3d.DEFAULTS={width:\"400px\",height:\"400px\",filterLabel:\"time\",legendLabel:\"value\",xLabel:\"x\",yLabel:\"y\",zLabel:\"z\",xValueLabel:function xValueLabel(v){return v},yValueLabel:function yValueLabel(v){return v},zValueLabel:function zValueLabel(v){return v},showXAxis:true,showYAxis:true,showZAxis:true,showGrid:true,showPerspective:true,showShadow:false,keepAspectRatio:true,verticalRatio:.5,dotSizeRatio:.02,dotSizeMinFraction:.5,dotSizeMaxFraction:2.5,showAnimationControls:autoByDefault,animationInterval:1e3,animationPreload:false,animationAutoStart:autoByDefault,axisColor:\"#4D4D4D\",gridColor:\"#D3D3D3\",xCenter:\"55%\",yCenter:\"50%\",style:Graph3d.STYLE.DOT,tooltip:false,tooltipStyle:{content:{padding:\"10px\",border:\"1px solid #4d4d4d\",color:\"#1a1a1a\",background:\"rgba(255,255,255,0.7)\",borderRadius:\"2px\",boxShadow:\"5px 5px 10px rgba(128,128,128,0.5)\"},line:{height:\"40px\",width:\"0\",borderLeft:\"1px solid #4d4d4d\"},dot:{height:\"0\",width:\"0\",border:\"5px solid #4d4d4d\",borderRadius:\"5px\"}},dataColor:{fill:\"#7DC1FF\",stroke:\"#3267D2\",strokeWidth:1},cameraPosition:{horizontal:1,vertical:.5,distance:1.7},showLegend:autoByDefault,backgroundColor:autoByDefault,xBarWidth:autoByDefault,yBarWidth:autoByDefault,valueMin:autoByDefault,valueMax:autoByDefault,xMin:autoByDefault,xMax:autoByDefault,xStep:autoByDefault,yMin:autoByDefault,yMax:autoByDefault,yStep:autoByDefault,zMin:autoByDefault,zMax:autoByDefault,zStep:autoByDefault};function Graph3d(container,data,options){if(!(this instanceof Graph3d)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.containerElement=container;this.dataGroup=new DataGroup;this.dataPoints=null;this.create();Settings.setDefaults(Graph3d.DEFAULTS,this);this.colX=undefined;this.colY=undefined;this.colZ=undefined;this.colValue=undefined;this.setOptions(options);this.setData(data)}Emitter(Graph3d.prototype);Graph3d.prototype._setScale=function(){this.scale=new Point3d(1/this.xRange.range(),1/this.yRange.range(),1/this.zRange.range());if(this.keepAspectRatio){if(this.scale.x<this.scale.y){this.scale.y=this.scale.x}else{this.scale.x=this.scale.y}}this.scale.z*=this.verticalRatio;if(this.valueRange!==undefined){this.scale.value=1/this.valueRange.range()}var xCenter=this.xRange.center()*this.scale.x;var yCenter=this.yRange.center()*this.scale.y;var zCenter=this.zRange.center()*this.scale.z;this.camera.setArmLocation(xCenter,yCenter,zCenter)};Graph3d.prototype._convert3Dto2D=function(point3d){var translation=this._convertPointToTranslation(point3d);return this._convertTranslationToScreen(translation)};Graph3d.prototype._convertPointToTranslation=function(point3d){var cameraLocation=this.camera.getCameraLocation(),cameraRotation=this.camera.getCameraRotation(),ax=point3d.x*this.scale.x,ay=point3d.y*this.scale.y,az=point3d.z*this.scale.z,cx=cameraLocation.x,cy=cameraLocation.y,cz=cameraLocation.z,sinTx=Math.sin(cameraRotation.x),cosTx=Math.cos(cameraRotation.x),sinTy=Math.sin(cameraRotation.y),cosTy=Math.cos(cameraRotation.y),sinTz=Math.sin(cameraRotation.z),cosTz=Math.cos(cameraRotation.z),dx=cosTy*(sinTz*(ay-cy)+cosTz*(ax-cx))-sinTy*(az-cz),dy=sinTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))+cosTx*(cosTz*(ay-cy)-sinTz*(ax-cx)),dz=cosTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))-sinTx*(cosTz*(ay-cy)-sinTz*(ax-cx));return new Point3d(dx,dy,dz)};Graph3d.prototype._convertTranslationToScreen=function(translation){var ex=this.eye.x,ey=this.eye.y,ez=this.eye.z,dx=translation.x,dy=translation.y,dz=translation.z;var bx;var by;if(this.showPerspective){bx=(dx-ex)*(ez/dz);by=(dy-ey)*(ez/dz)}else{bx=dx*-(ez/this.camera.getArmLength());by=dy*-(ez/this.camera.getArmLength())}return new Point2d(this.currentXCenter+bx*this.frame.canvas.clientWidth,this.currentYCenter-by*this.frame.canvas.clientWidth)};Graph3d.prototype._calcTranslations=function(points){for(var i=0;i<points.length;i++){var point=points[i];point.trans=this._convertPointToTranslation(point.point);point.screen=this._convertTranslationToScreen(point.trans);var transBottom=this._convertPointToTranslation(point.bottom);point.dist=this.showPerspective?transBottom.length():-transBottom.z}var sortDepth=function sortDepth(a,b){return b.dist-a.dist};points.sort(sortDepth)};Graph3d.prototype._initializeRanges=function(){var dg=this.dataGroup;this.xRange=dg.xRange;this.yRange=dg.yRange;this.zRange=dg.zRange;this.valueRange=dg.valueRange;this.xStep=dg.xStep;this.yStep=dg.yStep;this.zStep=dg.zStep;this.xBarWidth=dg.xBarWidth;this.yBarWidth=dg.yBarWidth;this.colX=dg.colX;this.colY=dg.colY;this.colZ=dg.colZ;this.colValue=dg.colValue;this._setScale()};Graph3d.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};Graph3d.prototype._getDataPoints=function(data){var x,y,i,obj;var dataPoints=[];if(this.style===Graph3d.STYLE.GRID||this.style===Graph3d.STYLE.SURFACE){var dataX=this.dataGroup.getDistinctValues(this.colX,data);var dataY=this.dataGroup.getDistinctValues(this.colY,data);dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Graph3d.STYLE.LINE){for(i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};Graph3d.prototype.create=function(){while(this.containerElement.hasChildNodes()){this.containerElement.removeChild(this.containerElement.firstChild)}this.frame=document.createElement(\"div\");this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);{var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}this.frame.filter=document.createElement(\"div\");this.frame.filter.style.position=\"absolute\";this.frame.filter.style.bottom=\"0px\";this.frame.filter.style.left=\"0px\";this.frame.filter.style.width=\"100%\";this.frame.appendChild(this.frame.filter);var me=this;var onmousedown=function onmousedown(event){me._onMouseDown(event)};var ontouchstart=function ontouchstart(event){me._onTouchStart(event)};var onmousewheel=function onmousewheel(event){me._onWheel(event)};var ontooltip=function ontooltip(event){me._onTooltip(event)};var onclick=function onclick(event){me._onClick(event)};util.addEventListener(this.frame.canvas,\"mousedown\",onmousedown);util.addEventListener(this.frame.canvas,\"touchstart\",ontouchstart);util.addEventListener(this.frame.canvas,\"mousewheel\",onmousewheel);util.addEventListener(this.frame.canvas,\"mousemove\",ontooltip);util.addEventListener(this.frame.canvas,\"click\",onclick);this.containerElement.appendChild(this.frame)};Graph3d.prototype._setSize=function(width,height){this.frame.style.width=width;this.frame.style.height=height;this._resizeCanvas()};Graph3d.prototype._resizeCanvas=function(){this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=this.frame.canvas.clientWidth;this.frame.canvas.height=this.frame.canvas.clientHeight;this.frame.filter.style.width=this.frame.canvas.clientWidth-2*10+\"px\"};Graph3d.prototype.animationStart=function(){if(!this.animationAutoStart||!this.dataGroup.dataFilter)return;if(!this.frame.filter||!this.frame.filter.slider)throw new Error(\"No animation available\");this.frame.filter.slider.play()};Graph3d.prototype.animationStop=function(){if(!this.frame.filter||!this.frame.filter.slider)return;this.frame.filter.slider.stop()};Graph3d.prototype._resizeCenter=function(){if(this.xCenter.charAt(this.xCenter.length-1)===\"%\"){this.currentXCenter=parseFloat(this.xCenter)/100*this.frame.canvas.clientWidth}else{this.currentXCenter=parseFloat(this.xCenter)}if(this.yCenter.charAt(this.yCenter.length-1)===\"%\"){this.currentYCenter=parseFloat(this.yCenter)/100*(this.frame.canvas.clientHeight-this.frame.filter.clientHeight)}else{this.currentYCenter=parseFloat(this.yCenter)}};Graph3d.prototype.getCameraPosition=function(){var pos=this.camera.getArmRotation();pos.distance=this.camera.getArmLength();return pos};Graph3d.prototype._readData=function(data){this.dataPoints=this.dataGroup.initializeData(this,data,this.style);this._initializeRanges();this._redrawFilter()};Graph3d.prototype.setData=function(data){if(data===undefined||data===null)return;this._readData(data);this.redraw();this.animationStart()};Graph3d.prototype.setOptions=function(options){if(options===undefined)return;var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}this.animationStop();Settings.setOptions(options,this);this.setPointDrawingMethod();this._setSize(this.width,this.height);this.setData(this.dataGroup.getDataTable());this.animationStart()};Graph3d.prototype.setPointDrawingMethod=function(){var method=undefined;switch(this.style){case Graph3d.STYLE.BAR:method=Graph3d.prototype._redrawBarGraphPoint;break;case Graph3d.STYLE.BARCOLOR:method=Graph3d.prototype._redrawBarColorGraphPoint;break;case Graph3d.STYLE.BARSIZE:method=Graph3d.prototype._redrawBarSizeGraphPoint;break;case Graph3d.STYLE.DOT:method=Graph3d.prototype._redrawDotGraphPoint;break;case Graph3d.STYLE.DOTLINE:method=Graph3d.prototype._redrawDotLineGraphPoint;break;case Graph3d.STYLE.DOTCOLOR:method=Graph3d.prototype._redrawDotColorGraphPoint;break;case Graph3d.STYLE.DOTSIZE:method=Graph3d.prototype._redrawDotSizeGraphPoint;break;case Graph3d.STYLE.SURFACE:method=Graph3d.prototype._redrawSurfaceGraphPoint;break;case Graph3d.STYLE.GRID:method=Graph3d.prototype._redrawGridGraphPoint;break;case Graph3d.STYLE.LINE:method=Graph3d.prototype._redrawLineGraphPoint;break;default:throw new Error(\"Can not determine point drawing method \"+\"for graph style '\"+this.style+\"'\")}this._pointDrawingMethod=method};Graph3d.prototype.redraw=function(){if(this.dataPoints===undefined){throw new Error(\"Graph data not initialized\")}this._resizeCanvas();this._resizeCenter();this._redrawSlider();this._redrawClear();this._redrawAxis();this._redrawDataGraph();this._redrawInfo();this._redrawLegend()};Graph3d.prototype._getContext=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.lineJoin=\"round\";ctx.lineCap=\"round\";return ctx};Graph3d.prototype._redrawClear=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.clearRect(0,0,canvas.width,canvas.height)};Graph3d.prototype._dotSize=function(){return this.frame.clientWidth*this.dotSizeRatio};Graph3d.prototype._getLegendWidth=function(){var width;if(this.style===Graph3d.STYLE.DOTSIZE){var dotSize=this._dotSize();width=dotSize*this.dotSizeMaxFraction}else if(this.style===Graph3d.STYLE.BARSIZE){width=this.xBarWidth}else{width=20}return width};Graph3d.prototype._redrawLegend=function(){if(this.showLegend!==true){return}if(this.style===Graph3d.STYLE.LINE||this.style===Graph3d.STYLE.BARSIZE){return}var isSizeLegend=this.style===Graph3d.STYLE.BARSIZE||this.style===Graph3d.STYLE.DOTSIZE;var isValueLegend=this.style===Graph3d.STYLE.DOTSIZE||this.style===Graph3d.STYLE.DOTCOLOR||this.style===Graph3d.STYLE.BARCOLOR;var height=Math.max(this.frame.clientHeight*.25,100);var top=this.margin;var width=this._getLegendWidth();var right=this.frame.clientWidth-this.margin;var left=right-width;var bottom=top+height;var ctx=this._getContext();ctx.lineWidth=1;ctx.font=\"14px arial\";if(isSizeLegend===false){var ymin=0;var ymax=height;var y;for(y=ymin;y<ymax;y++){var f=(y-ymin)/(ymax-ymin);var hue=f*240;var color=this._hsv2rgb(hue,1,1);ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(left,top+y);ctx.lineTo(right,top+y);ctx.stroke()}ctx.strokeStyle=this.axisColor;ctx.strokeRect(left,top,width,height)}else{var widthMin;if(this.style===Graph3d.STYLE.DOTSIZE){widthMin=width*(this.dotSizeMinFraction/this.dotSizeMaxFraction)}else if(this.style===Graph3d.STYLE.BARSIZE){}ctx.strokeStyle=this.axisColor;ctx.fillStyle=this.dataColor.fill;ctx.beginPath();ctx.moveTo(left,top);ctx.lineTo(right,top);ctx.lineTo(left+widthMin,bottom);ctx.lineTo(left,bottom);ctx.closePath();ctx.fill();ctx.stroke()}var gridLineLen=5;var legendMin=isValueLegend?this.valueRange.min:this.zRange.min;var legendMax=isValueLegend?this.valueRange.max:this.zRange.max;var step=new StepNumber(legendMin,legendMax,(legendMax-legendMin)/5,true);step.start(true);var from;var to;while(!step.end()){y=bottom-(step.getCurrent()-legendMin)/(legendMax-legendMin)*height;from=new Point2d(left-gridLineLen,y);to=new Point2d(left,y);this._line(ctx,from,to);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(step.getCurrent(),left-2*gridLineLen,y);step.next()}ctx.textAlign=\"right\";ctx.textBaseline=\"top\";var label=this.legendLabel;ctx.fillText(label,right,bottom+this.margin)};Graph3d.prototype._redrawFilter=function(){var dataFilter=this.dataGroup.dataFilter;var filter=this.frame.filter;filter.innerHTML=\"\";if(!dataFilter){filter.slider=undefined;return}var options={visible:this.showAnimationControls};var slider=new Slider(filter,options);filter.slider=slider;filter.style.padding=\"10px\";slider.setValues(dataFilter.values);slider.setPlayInterval(this.animationInterval);var me=this;var onchange=function onchange(){var dataFilter=me.dataGroup.dataFilter;var index=slider.getIndex();dataFilter.selectValue(index);me.dataPoints=dataFilter._getDataPoints();me.redraw()};slider.setOnChangeCallback(onchange)};Graph3d.prototype._redrawSlider=function(){if(this.frame.filter.slider!==undefined){this.frame.filter.slider.redraw()}};Graph3d.prototype._redrawInfo=function(){var info=this.dataGroup.getInfo();if(info===undefined)return;var ctx=this._getContext();ctx.font=\"14px arial\";ctx.lineStyle=\"gray\";ctx.fillStyle=\"gray\";ctx.textAlign=\"left\";ctx.textBaseline=\"top\";var x=this.margin;var y=this.margin;ctx.fillText(info,x,y)};Graph3d.prototype._line=function(ctx,from,to,strokeStyle){if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(from.x,from.y);ctx.lineTo(to.x,to.y);ctx.stroke()};Graph3d.prototype.drawAxisLabelX=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)>0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)<0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelY=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)<0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)>0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelZ=function(ctx,point3d,text,offset){if(offset===undefined){offset=0}var point2d=this._convert3Dto2D(point3d);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x-offset,point2d.y)};Graph3d.prototype._line3d=function(ctx,from,to,strokeStyle){var from2d=this._convert3Dto2D(from);var to2d=this._convert3Dto2D(to);this._line(ctx,from2d,to2d,strokeStyle)};Graph3d.prototype._redrawAxis=function(){var ctx=this._getContext(),from,to,step,prettyStep,text,xText,yText,zText,offset,xOffset,yOffset;ctx.font=24/this.camera.getArmLength()+\"px arial\";var gridLenX=.025/this.scale.x;var gridLenY=.025/this.scale.y;var textMargin=5/this.camera.getArmLength();var armAngle=this.camera.getArmRotation().horizontal;var armVector=new Point2d(Math.cos(armAngle),Math.sin(armAngle));var xRange=this.xRange;var yRange=this.yRange;var zRange=this.zRange;var point3d;ctx.lineWidth=1;prettyStep=this.defaultXStep===undefined;step=new StepNumber(xRange.min,xRange.max,this.xStep,prettyStep);step.start(true);while(!step.end()){var x=step.getCurrent();if(this.showGrid){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.max,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showXAxis){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.min+gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(x,yRange.max,zRange.min);to=new Point3d(x,yRange.max-gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){yText=armVector.x>0?yRange.min:yRange.max;point3d=new Point3d(x,yText,zRange.min);var msg=\" \"+this.xValueLabel(x)+\" \";this.drawAxisLabelX(ctx,point3d,msg,armAngle,textMargin)}step.next()}ctx.lineWidth=1;prettyStep=this.defaultYStep===undefined;step=new StepNumber(yRange.min,yRange.max,this.yStep,prettyStep);step.start(true);while(!step.end()){var y=step.getCurrent();if(this.showGrid){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.max,y,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showYAxis){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.min+gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,y,zRange.min);to=new Point3d(xRange.max-gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showYAxis){xText=armVector.y>0?xRange.min:xRange.max;point3d=new Point3d(xText,y,zRange.min);var _msg=\" \"+this.yValueLabel(y)+\" \";this.drawAxisLabelY(ctx,point3d,_msg,armAngle,textMargin)}step.next()}if(this.showZAxis){ctx.lineWidth=1;prettyStep=this.defaultZStep===undefined;step=new StepNumber(zRange.min,zRange.max,this.zStep,prettyStep);step.start(true);xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;while(!step.end()){var z=step.getCurrent();var from3d=new Point3d(xText,yText,z);var from2d=this._convert3Dto2D(from3d);to=new Point2d(from2d.x-textMargin,from2d.y);this._line(ctx,from2d,to,this.axisColor);var _msg2=this.zValueLabel(z)+\" \";this.drawAxisLabelZ(ctx,from3d,_msg2,5);step.next()}ctx.lineWidth=1;from=new Point3d(xText,yText,zRange.min);to=new Point3d(xText,yText,zRange.max);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){var xMin2d;var xMax2d;ctx.lineWidth=1;xMin2d=new Point3d(xRange.min,yRange.min,zRange.min);xMax2d=new Point3d(xRange.max,yRange.min,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor);xMin2d=new Point3d(xRange.min,yRange.max,zRange.min);xMax2d=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor)}if(this.showYAxis){ctx.lineWidth=1;from=new Point3d(xRange.min,yRange.min,zRange.min);to=new Point3d(xRange.min,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,yRange.min,zRange.min);to=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor)}var xLabel=this.xLabel;if(xLabel.length>0&&this.showXAxis){yOffset=.1/this.scale.y;xText=(xRange.max+3*xRange.min)/4;yText=armVector.x>0?yRange.min-yOffset:yRange.max+yOffset\n;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelX(ctx,text,xLabel,armAngle)}var yLabel=this.yLabel;if(yLabel.length>0&&this.showYAxis){xOffset=.1/this.scale.x;xText=armVector.y>0?xRange.min-xOffset:xRange.max+xOffset;yText=(yRange.max+3*yRange.min)/4;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelY(ctx,text,yLabel,armAngle)}var zLabel=this.zLabel;if(zLabel.length>0&&this.showZAxis){offset=30;xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;zText=(zRange.max+3*zRange.min)/4;text=new Point3d(xText,yText,zText);this.drawAxisLabelZ(ctx,text,zLabel,offset)}};Graph3d.prototype._hsv2rgb=function(H,S,V){var R,G,B,C,Hi,X;C=V*S;Hi=Math.floor(H/60);X=C*(1-Math.abs(H/60%2-1));switch(Hi){case 0:R=C;G=X;B=0;break;case 1:R=X;G=C;B=0;break;case 2:R=0;G=C;B=X;break;case 3:R=0;G=X;B=C;break;case 4:R=X;G=0;B=C;break;case 5:R=C;G=0;B=X;break;default:R=0;G=0;B=0;break}return\"RGB(\"+parseInt(R*255)+\",\"+parseInt(G*255)+\",\"+parseInt(B*255)+\")\"};Graph3d.prototype._getStrokeWidth=function(point){if(point!==undefined){if(this.showPerspective){return 1/-point.trans.z*this.dataColor.strokeWidth}else{return-(this.eye.z/this.camera.getArmLength())*this.dataColor.strokeWidth}}return this.dataColor.strokeWidth};Graph3d.prototype._redrawBar=function(ctx,point,xWidth,yWidth,color,borderColor){var surface;var me=this;var point3d=point.point;var zMin=this.zRange.min;var top=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,point3d.z)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,point3d.z)}];var bottom=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,zMin)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,zMin)}];top.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});bottom.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});var surfaces=[{corners:top,center:Point3d.avg(bottom[0].point,bottom[2].point)},{corners:[top[0],top[1],bottom[1],bottom[0]],center:Point3d.avg(bottom[1].point,bottom[0].point)},{corners:[top[1],top[2],bottom[2],bottom[1]],center:Point3d.avg(bottom[2].point,bottom[1].point)},{corners:[top[2],top[3],bottom[3],bottom[2]],center:Point3d.avg(bottom[3].point,bottom[2].point)},{corners:[top[3],top[0],bottom[0],bottom[3]],center:Point3d.avg(bottom[0].point,bottom[3].point)}];point.surfaces=surfaces;for(var j=0;j<surfaces.length;j++){surface=surfaces[j];var transCenter=this._convertPointToTranslation(surface.center);surface.dist=this.showPerspective?transCenter.length():-transCenter.z}surfaces.sort(function(a,b){var diff=b.dist-a.dist;if(diff)return diff;if(a.corners===top)return 1;if(b.corners===top)return-1;return 0});ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;for(var _j=2;_j<surfaces.length;_j++){surface=surfaces[_j];this._polygon(ctx,surface.corners)}};Graph3d.prototype._polygon=function(ctx,points,fillStyle,strokeStyle){if(points.length<2){return}if(fillStyle!==undefined){ctx.fillStyle=fillStyle}if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(points[0].screen.x,points[0].screen.y);for(var i=1;i<points.length;++i){var point=points[i];ctx.lineTo(point.screen.x,point.screen.y)}ctx.closePath();ctx.fill();ctx.stroke()};Graph3d.prototype._drawCircle=function(ctx,point,color,borderColor,size){var radius=this._calcRadius(point,size);ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;ctx.beginPath();ctx.arc(point.screen.x,point.screen.y,radius,0,Math.PI*2,true);ctx.fill();ctx.stroke()};Graph3d.prototype._getColorsRegular=function(point){var hue=(1-(point.point.z-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var color=this._hsv2rgb(hue,1,1);var borderColor=this._hsv2rgb(hue,1,.8);return{fill:color,border:borderColor}};Graph3d.prototype._getColorsColor=function(point){var color,borderColor;if(typeof point.point.value===\"string\"){color=point.point.value;borderColor=point.point.value}else{var hue=(1-(point.point.value-this.valueRange.min)*this.scale.value)*240;color=this._hsv2rgb(hue,1,1);borderColor=this._hsv2rgb(hue,1,.8)}return{fill:color,border:borderColor}};Graph3d.prototype._getColorsSize=function(){return{fill:this.dataColor.fill,border:this.dataColor.stroke}};Graph3d.prototype._calcRadius=function(point,size){if(size===undefined){size=this._dotSize()}var radius;if(this.showPerspective){radius=size/-point.trans.z}else{radius=size*-(this.eye.z/this.camera.getArmLength())}if(radius<0){radius=0}return radius};Graph3d.prototype._redrawBarGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsRegular(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarColorGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsColor(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarSizeGraphPoint=function(ctx,point){var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var xWidth=this.xBarWidth/2*(fraction*.8+.2);var yWidth=this.yBarWidth/2*(fraction*.8+.2);var colors=this._getColorsSize();this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawDotGraphPoint=function(ctx,point){var colors=this._getColorsRegular(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotLineGraphPoint=function(ctx,point){var from=this._convert3Dto2D(point.bottom);ctx.lineWidth=1;this._line(ctx,from,point.screen,this.gridColor);this._redrawDotGraphPoint(ctx,point)};Graph3d.prototype._redrawDotColorGraphPoint=function(ctx,point){var colors=this._getColorsColor(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotSizeGraphPoint=function(ctx,point){var dotSize=this._dotSize();var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var sizeMin=dotSize*this.dotSizeMinFraction;var sizeRange=dotSize*this.dotSizeMaxFraction-sizeMin;var size=sizeMin+sizeRange*fraction;var colors=this._getColorsSize();this._drawCircle(ctx,point,colors.fill,colors.border,size)};Graph3d.prototype._redrawSurfaceGraphPoint=function(ctx,point){var right=point.pointRight;var top=point.pointTop;var cross=point.pointCross;if(point===undefined||right===undefined||top===undefined||cross===undefined){return}var topSideVisible=true;var fillStyle;var strokeStyle;if(this.showGrayBottom||this.showShadow){var aDiff=Point3d.subtract(cross.trans,point.trans);var bDiff=Point3d.subtract(top.trans,right.trans);var crossproduct=Point3d.crossProduct(aDiff,bDiff);var len=crossproduct.length();topSideVisible=crossproduct.z>0}if(topSideVisible){var zAvg=(point.point.z+right.point.z+top.point.z+cross.point.z)/4;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var s=1;var v;if(this.showShadow){v=Math.min(1+crossproduct.x/len/2,1);fillStyle=this._hsv2rgb(h,s,v);strokeStyle=fillStyle}else{v=1;fillStyle=this._hsv2rgb(h,s,v);strokeStyle=this.axisColor}}else{fillStyle=\"gray\";strokeStyle=this.axisColor}ctx.lineWidth=this._getStrokeWidth(point);var points=[point,right,cross,top];this._polygon(ctx,points,fillStyle,strokeStyle)};Graph3d.prototype._drawGridLine=function(ctx,from,to){if(from===undefined||to===undefined){return}var zAvg=(from.point.z+to.point.z)/2;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;ctx.lineWidth=this._getStrokeWidth(from)*2;ctx.strokeStyle=this._hsv2rgb(h,1,1);this._line(ctx,from.screen,to.screen)};Graph3d.prototype._redrawGridGraphPoint=function(ctx,point){this._drawGridLine(ctx,point,point.pointRight);this._drawGridLine(ctx,point,point.pointTop)};Graph3d.prototype._redrawLineGraphPoint=function(ctx,point){if(point.pointNext===undefined){return}ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=this.dataColor.stroke;this._line(ctx,point.screen,point.pointNext.screen)};Graph3d.prototype._redrawDataGraph=function(){var ctx=this._getContext();var i;if(this.dataPoints===undefined||this.dataPoints.length<=0)return;this._calcTranslations(this.dataPoints);for(i=0;i<this.dataPoints.length;i++){var point=this.dataPoints[i];this._pointDrawingMethod.call(this,ctx,point)}};Graph3d.prototype._storeMousePosition=function(event){this.startMouseX=getMouseX(event);this.startMouseY=getMouseY(event);this._startCameraOffset=this.camera.getOffset()};Graph3d.prototype._onMouseDown=function(event){event=event||window.event;if(this.leftButtonDown){this._onMouseUp(event)}this.leftButtonDown=event.which?event.which===1:event.button===1;if(!this.leftButtonDown&&!this.touchDown)return;this._storeMousePosition(event);this.startStart=new Date(this.start);this.startEnd=new Date(this.end);this.startArmRotation=this.camera.getArmRotation();this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",me.onmousemove);util.addEventListener(document,\"mouseup\",me.onmouseup);util.preventDefault(event)};Graph3d.prototype._onMouseMove=function(event){this.moving=true;event=event||window.event;var diffX=parseFloat(getMouseX(event))-this.startMouseX;var diffY=parseFloat(getMouseY(event))-this.startMouseY;if(event&&event.ctrlKey===true){var scaleX=this.frame.clientWidth*.5;var scaleY=this.frame.clientHeight*.5;var offXNew=(this._startCameraOffset.x||0)-diffX/scaleX*this.camera.armLength*.8;var offYNew=(this._startCameraOffset.y||0)+diffY/scaleY*this.camera.armLength*.8;this.camera.setOffset(offXNew,offYNew);this._storeMousePosition(event)}else{var horizontalNew=this.startArmRotation.horizontal+diffX/200;var verticalNew=this.startArmRotation.vertical+diffY/200;var snapAngle=4;var snapValue=Math.sin(snapAngle/360*2*Math.PI);if(Math.abs(Math.sin(horizontalNew))<snapValue){horizontalNew=Math.round(horizontalNew/Math.PI)*Math.PI-.001}if(Math.abs(Math.cos(horizontalNew))<snapValue){horizontalNew=(Math.round(horizontalNew/Math.PI-.5)+.5)*Math.PI-.001}if(Math.abs(Math.sin(verticalNew))<snapValue){verticalNew=Math.round(verticalNew/Math.PI)*Math.PI}if(Math.abs(Math.cos(verticalNew))<snapValue){verticalNew=(Math.round(verticalNew/Math.PI-.5)+.5)*Math.PI}this.camera.setArmRotation(horizontalNew,verticalNew)}this.redraw();var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";this.leftButtonDown=false;util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Graph3d.prototype._onClick=function(event){if(!this.onclick_callback)return;if(!this.moving){var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint)this.onclick_callback(dataPoint.point.data)}else{this.moving=false}util.preventDefault(event)};Graph3d.prototype._onTooltip=function(event){var delay=300;var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;if(!this.showTooltip){return}if(this.tooltipTimeout){clearTimeout(this.tooltipTimeout)}if(this.leftButtonDown){this._hideTooltip();return}if(this.tooltip&&this.tooltip.dataPoint){var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint!==this.tooltip.dataPoint){if(dataPoint){this._showTooltip(dataPoint)}else{this._hideTooltip()}}}else{var me=this;this.tooltipTimeout=setTimeout(function(){me.tooltipTimeout=null;var dataPoint=me._dataPointFromXY(mouseX,mouseY);if(dataPoint){me._showTooltip(dataPoint)}},delay)}};Graph3d.prototype._onTouchStart=function(event){this.touchDown=true;var me=this;this.ontouchmove=function(event){me._onTouchMove(event)};this.ontouchend=function(event){me._onTouchEnd(event)};util.addEventListener(document,\"touchmove\",me.ontouchmove);util.addEventListener(document,\"touchend\",me.ontouchend);this._onMouseDown(event)};Graph3d.prototype._onTouchMove=function(event){this._onMouseMove(event)};Graph3d.prototype._onTouchEnd=function(event){this.touchDown=false;util.removeEventListener(document,\"touchmove\",this.ontouchmove);util.removeEventListener(document,\"touchend\",this.ontouchend);this._onMouseUp(event)};Graph3d.prototype._onWheel=function(event){if(!event)event=window.event;var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta){var oldLength=this.camera.getArmLength();var newLength=oldLength*(1-delta/10);this.camera.setArmLength(newLength);this.redraw();this._hideTooltip()}var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._insideTriangle=function(point,triangle){var a=triangle[0],b=triangle[1],c=triangle[2];function sign(x){return x>0?1:x<0?-1:0}var as=sign((b.x-a.x)*(point.y-a.y)-(b.y-a.y)*(point.x-a.x));var bs=sign((c.x-b.x)*(point.y-b.y)-(c.y-b.y)*(point.x-b.x));var cs=sign((a.x-c.x)*(point.y-c.y)-(a.y-c.y)*(point.x-c.x));return(as==0||bs==0||as==bs)&&(bs==0||cs==0||bs==cs)&&(as==0||cs==0||as==cs)};Graph3d.prototype._dataPointFromXY=function(x,y){var i,distMax=100,dataPoint=null,closestDataPoint=null,closestDist=null,center=new Point2d(x,y);if(this.style===Graph3d.STYLE.BAR||this.style===Graph3d.STYLE.BARCOLOR||this.style===Graph3d.STYLE.BARSIZE){for(i=this.dataPoints.length-1;i>=0;i--){dataPoint=this.dataPoints[i];var surfaces=dataPoint.surfaces;if(surfaces){for(var s=surfaces.length-1;s>=0;s--){var surface=surfaces[s];var corners=surface.corners;var triangle1=[corners[0].screen,corners[1].screen,corners[2].screen];var triangle2=[corners[2].screen,corners[3].screen,corners[0].screen];if(this._insideTriangle(center,triangle1)||this._insideTriangle(center,triangle2)){return dataPoint}}}}}else{for(i=0;i<this.dataPoints.length;i++){dataPoint=this.dataPoints[i];var point=dataPoint.screen;if(point){var distX=Math.abs(x-point.x);var distY=Math.abs(y-point.y);var dist=Math.sqrt(distX*distX+distY*distY);if((closestDist===null||dist<closestDist)&&dist<distMax){closestDist=dist;closestDataPoint=dataPoint}}}}return closestDataPoint};Graph3d.prototype.hasBars=function(style){return style==Graph3d.STYLE.BAR||style==Graph3d.STYLE.BARCOLOR||style==Graph3d.STYLE.BARSIZE};Graph3d.prototype._showTooltip=function(dataPoint){var content,line,dot;if(!this.tooltip){content=document.createElement(\"div\");(0,_assign2[\"default\"])(content.style,{},this.tooltipStyle.content);content.style.position=\"absolute\";line=document.createElement(\"div\");(0,_assign2[\"default\"])(line.style,{},this.tooltipStyle.line);line.style.position=\"absolute\";dot=document.createElement(\"div\");(0,_assign2[\"default\"])(dot.style,{},this.tooltipStyle.dot);dot.style.position=\"absolute\";this.tooltip={dataPoint:null,dom:{content:content,line:line,dot:dot}}}else{content=this.tooltip.dom.content;line=this.tooltip.dom.line;dot=this.tooltip.dom.dot}this._hideTooltip();this.tooltip.dataPoint=dataPoint;if(typeof this.showTooltip===\"function\"){content.innerHTML=this.showTooltip(dataPoint.point)}else{content.innerHTML=\"<table>\"+\"<tr><td>\"+this.xLabel+\":</td><td>\"+dataPoint.point.x+\"</td></tr>\"+\"<tr><td>\"+this.yLabel+\":</td><td>\"+dataPoint.point.y+\"</td></tr>\"+\"<tr><td>\"+this.zLabel+\":</td><td>\"+dataPoint.point.z+\"</td></tr>\"+\"</table>\"}content.style.left=\"0\";content.style.top=\"0\";this.frame.appendChild(content);this.frame.appendChild(line);this.frame.appendChild(dot);var contentWidth=content.offsetWidth;var contentHeight=content.offsetHeight;var lineHeight=line.offsetHeight;var dotWidth=dot.offsetWidth;var dotHeight=dot.offsetHeight;var left=dataPoint.screen.x-contentWidth/2;left=Math.min(Math.max(left,10),this.frame.clientWidth-10-contentWidth);line.style.left=dataPoint.screen.x+\"px\";line.style.top=dataPoint.screen.y-lineHeight+\"px\";content.style.left=left+\"px\";content.style.top=dataPoint.screen.y-lineHeight-contentHeight+\"px\";dot.style.left=dataPoint.screen.x-dotWidth/2+\"px\";dot.style.top=dataPoint.screen.y-dotHeight/2+\"px\"};Graph3d.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var prop in this.tooltip.dom){if(this.tooltip.dom.hasOwnProperty(prop)){var elem=this.tooltip.dom[prop];if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}}}};function getMouseX(event){if(\"clientX\"in event)return event.clientX;return event.targetTouches[0]&&event.targetTouches[0].clientX||0}function getMouseY(event){if(\"clientY\"in event)return event.clientY;return event.targetTouches[0]&&event.targetTouches[0].clientY||0}Graph3d.prototype.setCameraPosition=function(pos){Settings.setCameraPosition(pos,this);this.redraw()};Graph3d.prototype.setSize=function(width,height){this._setSize(width,height);this.redraw()};module.exports=Graph3d},function(module,exports,__webpack_require__){__webpack_require__(163);module.exports=__webpack_require__(7).Object.assign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F,\"Object\",{assign:__webpack_require__(164)})},function(module,exports,__webpack_require__){\"use strict\";var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);var toObject=__webpack_require__(41);var IObject=__webpack_require__(78);var $assign=Object.assign;module.exports=!$assign||__webpack_require__(28)(function(){var A={};var B={};var S=Symbol();var K=\"abcdefghijklmnopqrst\";A[S]=7;K.split(\"\").forEach(function(k){B[k]=k});return $assign({},A)[S]!=7||Object.keys($assign({},B)).join(\"\")!=K})?function assign(target,source){var T=toObject(target);var aLen=arguments.length;var index=1;var getSymbols=gOPS.f;var isEnum=pIE.f;while(aLen>index){var S=IObject(arguments[index++]);var keys=getSymbols?getKeys(S).concat(getSymbols(S)):getKeys(S);var length=keys.length;var j=0;var key;while(length>j)if(isEnum.call(S,key=keys[j++]))T[key]=S[key]}return T}:$assign},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(166),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(167);module.exports=__webpack_require__(7).Math.sign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Math\",{sign:__webpack_require__(168)})},function(module,exports){module.exports=Math.sign||function sign(x){return(x=+x)==0||x!=x?x:x<0?-1:1}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(170),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(171);var $Object=__webpack_require__(7).Object;module.exports=function defineProperty(it,key,desc){return $Object.defineProperty(it,key,desc)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F*!__webpack_require__(21),\"Object\",{defineProperty:__webpack_require__(20).f})},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var object=\"object\";var colorOptions={fill:{string:string},stroke:{string:string},strokeWidth:{number:number},__type__:{string:string,object:object,undefined:\"undefined\"}};var allOptions={animationAutoStart:{boolean:bool,undefined:\"undefined\"},animationInterval:{number:number},animationPreload:{boolean:bool},axisColor:{string:string},backgroundColor:colorOptions,xBarWidth:{number:number,undefined:\"undefined\"},yBarWidth:{number:number,undefined:\"undefined\"},cameraPosition:{distance:{number:number},horizontal:{number:number},vertical:{number:number},__type__:{object:object}},xCenter:{string:string},yCenter:{string:string},dataColor:colorOptions,dotSizeMinFraction:{number:number},dotSizeMaxFraction:{number:number},dotSizeRatio:{number:number},filterLabel:{string:string},gridColor:{string:string},onclick:{function:\"function\"},keepAspectRatio:{boolean:bool},xLabel:{string:string},yLabel:{string:string},zLabel:{string:string},legendLabel:{string:string},xMin:{number:number,undefined:\"undefined\"},yMin:{number:number,undefined:\"undefined\"},zMin:{number:number,undefined:\"undefined\"},xMax:{number:number,undefined:\"undefined\"},yMax:{number:number,undefined:\"undefined\"},zMax:{number:number,undefined:\"undefined\"},showAnimationControls:{boolean:bool,undefined:\"undefined\"},showGrid:{boolean:bool},showLegend:{boolean:bool,undefined:\"undefined\"},showPerspective:{boolean:bool},showShadow:{boolean:bool},showXAxis:{boolean:bool},showYAxis:{boolean:bool},showZAxis:{boolean:bool},xStep:{number:number,undefined:\"undefined\"},yStep:{number:number,undefined:\"undefined\"},zStep:{number:number,undefined:\"undefined\"},style:{number:number,string:[\"bar\",\"bar-color\",\"bar-size\",\"dot\",\"dot-line\",\"dot-color\",\"dot-size\",\"line\",\"grid\",\"surface\"]},tooltip:{boolean:bool,function:\"function\"},tooltipStyle:{content:{color:{string:string},background:{string:string},border:{string:string},borderRadius:{string:string},boxShadow:{string:string},padding:{string:string},__type__:{object:object}},line:{borderLeft:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},dot:{border:{string:string},borderRadius:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},__type__:{object:object}},xValueLabel:{function:\"function\"},yValueLabel:{function:\"function\"},zValueLabel:{function:\"function\"},valueMax:{number:number,undefined:\"undefined\"},valueMin:{number:number,undefined:\"undefined\"},verticalRatio:{number:number},height:{string:string},width:{string:string},__type__:{object:object}};exports.allOptions=allOptions},function(module,exports,__webpack_require__){\"use strict\";var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(174);var Filter=__webpack_require__(96);var Settings=__webpack_require__(94);var Point3d=__webpack_require__(34);function DataGroup(){this.dataTable=null}DataGroup.prototype.initializeData=function(graph3d,rawData,style){if(rawData===undefined)return;if(Array.isArray(rawData)){rawData=new DataSet(rawData)}var data;if(rawData instanceof DataSet||rawData instanceof DataView){data=rawData.get()}else{throw new Error(\"Array, DataSet, or DataView expected\")}if(data.length==0)return;this.style=style;if(this.dataSet){this.dataSet.off(\"*\",this._onChange)}this.dataSet=rawData;this.dataTable=data;var me=this;this._onChange=function(){graph3d.setData(me.dataSet)};this.dataSet.on(\"*\",this._onChange);this.colX=\"x\";this.colY=\"y\";this.colZ=\"z\";var withBars=graph3d.hasBars(style);if(withBars){if(graph3d.defaultXBarWidth!==undefined){this.xBarWidth=graph3d.defaultXBarWidth}else{this.xBarWidth=this.getSmallestDifference(data,this.colX)||1}if(graph3d.defaultYBarWidth!==undefined){this.yBarWidth=graph3d.defaultYBarWidth}else{this.yBarWidth=this.getSmallestDifference(data,this.colY)||1}}this._initializeRange(data,this.colX,graph3d,withBars);this._initializeRange(data,this.colY,graph3d,withBars);this._initializeRange(data,this.colZ,graph3d,false);if(data[0].hasOwnProperty(\"style\")){this.colValue=\"style\";var valueRange=this.getColumnRange(data,this.colValue);this._setRangeDefaults(valueRange,graph3d.defaultValueMin,graph3d.defaultValueMax);this.valueRange=valueRange}var table=this.getDataTable();if(table[0].hasOwnProperty(\"filter\")){if(this.dataFilter===undefined){this.dataFilter=new Filter(this,\"filter\",graph3d);this.dataFilter.setOnLoadCallback(function(){graph3d.redraw()})}}var dataPoints;if(this.dataFilter){dataPoints=this.dataFilter._getDataPoints()}else{dataPoints=this._getDataPoints(this.getDataTable())}return dataPoints};DataGroup.prototype._collectRangeSettings=function(column,graph3d){var index=[\"x\",\"y\",\"z\"].indexOf(column);if(index==-1){throw new Error(\"Column '\"+column+\"' invalid\")}var upper=column.toUpperCase();return{barWidth:this[column+\"BarWidth\"],min:graph3d[\"default\"+upper+\"Min\"],max:graph3d[\"default\"+upper+\"Max\"],step:graph3d[\"default\"+upper+\"Step\"],range_label:column+\"Range\",step_label:column+\"Step\"}};DataGroup.prototype._initializeRange=function(data,column,graph3d,withBars){var NUMSTEPS=5;var settings=this._collectRangeSettings(column,graph3d);var range=this.getColumnRange(data,column);if(withBars&&column!=\"z\"){range.expand(settings.barWidth/2)}this._setRangeDefaults(range,settings.min,settings.max);this[settings.range_label]=range;this[settings.step_label]=settings.step!==undefined?settings.step:range.range()/NUMSTEPS};DataGroup.prototype.getDistinctValues=function(column,data){if(data===undefined){data=this.dataTable}var values=[];for(var i=0;i<data.length;i++){var value=data[i][column]||0;if(values.indexOf(value)===-1){values.push(value)}}return values.sort(function(a,b){return a-b})};DataGroup.prototype.getSmallestDifference=function(data,column){var values=this.getDistinctValues(data,column);var smallest_diff=null;for(var i=1;i<values.length;i++){var diff=values[i]-values[i-1];if(smallest_diff==null||smallest_diff>diff){smallest_diff=diff}}return smallest_diff};DataGroup.prototype.getColumnRange=function(data,column){var range=new Range;for(var i=0;i<data.length;i++){var item=data[i][column];range.adjust(item)}return range};DataGroup.prototype.getNumberOfRows=function(){return this.dataTable.length};DataGroup.prototype._setRangeDefaults=function(range,defaultMin,defaultMax){if(defaultMin!==undefined){range.min=defaultMin}if(defaultMax!==undefined){range.max=defaultMax}if(range.max<=range.min)range.max=range.min+1};DataGroup.prototype.getDataTable=function(){return this.dataTable};DataGroup.prototype.getDataSet=function(){return this.dataSet};DataGroup.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};DataGroup.prototype.initDataAsMatrix=function(data){var x,y,i,obj;var dataX=this.getDistinctValues(this.colX,data);var dataY=this.getDistinctValues(this.colY,data);var dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}return dataPoints};DataGroup.prototype.getInfo=function(){var dataFilter=this.dataFilter;if(!dataFilter)return undefined;return dataFilter.getLabel()+\": \"+dataFilter.getSelectedValue()};DataGroup.prototype.reload=function(){if(this.dataTable){this.setData(this.dataTable)}};DataGroup.prototype._getDataPoints=function(data){var dataPoints=[];if(this.style===Settings.STYLE.GRID||this.style===Settings.STYLE.SURFACE){dataPoints=this.initDataAsMatrix(data)}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Settings.STYLE.LINE){for(var i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};DataGroup.prototype._checkValueField=function(data){var hasValueField=this.style===Settings.STYLE.BARCOLOR||this.style===Settings.STYLE.BARSIZE||this.style===Settings.STYLE.DOTCOLOR||this.style===Settings.STYLE.DOTSIZE;if(!hasValueField){return}if(this.colValue===undefined){throw new Error(\"Expected data to have \"+\" field 'style' \"+\" for graph style '\"+this.style+\"'\")}if(data[0][this.colValue]===undefined){throw new Error(\"Expected data to have \"+\" field '\"+this.colValue+\"' \"+\" for graph style '\"+this.style+\"'\")}};module.exports=DataGroup},function(module,exports,__webpack_require__){\"use strict\";function Range(){this.min=undefined;this.max=undefined}Range.prototype.adjust=function(value){if(value===undefined)return;if(this.min===undefined||this.min>value){this.min=value}if(this.max===undefined||this.max<value){this.max=value}};Range.prototype.combine=function(range){this.add(range.min);this.add(range.max)};Range.prototype.expand=function(val){if(val===undefined){return}var newMin=this.min-val;var newMax=this.max+val;if(newMin>newMax){throw new Error(\"Passed expansion value makes range invalid\")}this.min=newMin;this.max=newMax};Range.prototype.range=function(){return this.max-this.min};Range.prototype.center=function(){return(this.min+this.max)/2};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{window.propagating=factory()}})(function(){var _firstTarget=null;return function propagating(hammer,options){var _options=options||{preventDefault:false};if(hammer.Manager){var Hammer=hammer;var PropagatingHammer=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer(element,o),o)};Hammer.assign(PropagatingHammer,Hammer);PropagatingHammer.Manager=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer.Manager(element,o),o)};return PropagatingHammer}var wrapper=Object.create(hammer);var element=hammer.element;if(!element.hammer)element.hammer=[];element.hammer.push(wrapper);hammer.on(\"hammer.input\",function(event){if(_options.preventDefault===true||_options.preventDefault===event.pointerType){event.preventDefault()}if(event.isFirst){_firstTarget=event.target}});wrapper._handlers={};wrapper.on=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(!_handlers){wrapper._handlers[event]=_handlers=[];hammer.on(event,propagatedHandler)}_handlers.push(handler)});return wrapper};wrapper.off=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(_handlers){_handlers=handler?_handlers.filter(function(h){return h!==handler}):[];if(_handlers.length>0){wrapper._handlers[event]=_handlers}else{hammer.off(event,propagatedHandler);delete wrapper._handlers[event]}}});return wrapper};wrapper.emit=function(eventType,event){_firstTarget=event.target;hammer.emit(eventType,event)};wrapper.destroy=function(){var hammers=hammer.element.hammer;var idx=hammers.indexOf(wrapper);if(idx!==-1)hammers.splice(idx,1);if(!hammers.length)delete hammer.element.hammer;wrapper._handlers={};hammer.destroy()};function split(events){return events.match(/[^ ]+/g)}function propagatedHandler(event){if(event.type!==\"hammer.input\"){if(!event.srcEvent._handled){event.srcEvent._handled={}}if(event.srcEvent._handled[event.type]){return}else{event.srcEvent._handled[event.type]=true}}var stopped=false\n;event.stopPropagation=function(){stopped=true};var srcStop=event.srcEvent.stopPropagation.bind(event.srcEvent);if(typeof srcStop==\"function\"){event.srcEvent.stopPropagation=function(){srcStop();event.stopPropagation()}}event.firstTarget=_firstTarget;var elem=_firstTarget;while(elem&&!stopped){var elemHammer=elem.hammer;if(elemHammer){var _handlers;for(var k=0;k<elemHammer.length;k++){_handlers=elemHammer[k]._handlers[event.type];if(_handlers)for(var i=0;i<_handlers.length&&!stopped;i++){_handlers[i](event)}}}elem=elem.parentNode}}return wrapper}})},function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_RESULT__;(function(window,document,exportName,undefined){\"use strict\";var VENDOR_PREFIXES=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"];var TEST_ELEMENT=document.createElement(\"div\");var TYPE_FUNCTION=\"function\";var round=Math.round;var abs=Math.abs;var now=Date.now;function setTimeoutContext(fn,timeout,context){return setTimeout(bindFn(fn,context),timeout)}function invokeArrayArg(arg,fn,context){if(Array.isArray(arg)){each(arg,context[fn],context);return true}return false}function each(obj,iterator,context){var i;if(!obj){return}if(obj.forEach){obj.forEach(iterator,context)}else if(obj.length!==undefined){i=0;while(i<obj.length){iterator.call(context,obj[i],i,obj);i++}}else{for(i in obj){obj.hasOwnProperty(i)&&iterator.call(context,obj[i],i,obj)}}}function deprecate(method,name,message){var deprecationMessage=\"DEPRECATED METHOD: \"+name+\"\\n\"+message+\" AT \\n\";return function(){var e=new Error(\"get-stack-trace\");var stack=e&&e.stack?e.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\";var log=window.console&&(window.console.warn||window.console.log);if(log){log.call(window.console,deprecationMessage,stack)}return method.apply(this,arguments)}}var assign;if(typeof Object.assign!==\"function\"){assign=function assign(target){if(target===undefined||target===null){throw new TypeError(\"Cannot convert undefined or null to object\")}var output=Object(target);for(var index=1;index<arguments.length;index++){var source=arguments[index];if(source!==undefined&&source!==null){for(var nextKey in source){if(source.hasOwnProperty(nextKey)){output[nextKey]=source[nextKey]}}}}return output}}else{assign=Object.assign}var extend=deprecate(function extend(dest,src,merge){var keys=Object.keys(src);var i=0;while(i<keys.length){if(!merge||merge&&dest[keys[i]]===undefined){dest[keys[i]]=src[keys[i]]}i++}return dest},\"extend\",\"Use `assign`.\");var merge=deprecate(function merge(dest,src){return extend(dest,src,true)},\"merge\",\"Use `assign`.\");function inherit(child,base,properties){var baseP=base.prototype,childP;childP=child.prototype=Object.create(baseP);childP.constructor=child;childP._super=baseP;if(properties){assign(childP,properties)}}function bindFn(fn,context){return function boundFn(){return fn.apply(context,arguments)}}function boolOrFn(val,args){if(typeof val==TYPE_FUNCTION){return val.apply(args?args[0]||undefined:undefined,args)}return val}function ifUndefined(val1,val2){return val1===undefined?val2:val1}function addEventListeners(target,types,handler){each(splitStr(types),function(type){target.addEventListener(type,handler,false)})}function removeEventListeners(target,types,handler){each(splitStr(types),function(type){target.removeEventListener(type,handler,false)})}function hasParent(node,parent){while(node){if(node==parent){return true}node=node.parentNode}return false}function inStr(str,find){return str.indexOf(find)>-1}function splitStr(str){return str.trim().split(/\\s+/g)}function inArray(src,find,findByKey){if(src.indexOf&&!findByKey){return src.indexOf(find)}else{var i=0;while(i<src.length){if(findByKey&&src[i][findByKey]==find||!findByKey&&src[i]===find){return i}i++}return-1}}function toArray(obj){return Array.prototype.slice.call(obj,0)}function uniqueArray(src,key,sort){var results=[];var values=[];var i=0;while(i<src.length){var val=key?src[i][key]:src[i];if(inArray(values,val)<0){results.push(src[i])}values[i]=val;i++}if(sort){if(!key){results=results.sort()}else{results=results.sort(function sortUniqueArray(a,b){return a[key]>b[key]})}}return results}function prefixed(obj,property){var prefix,prop;var camelProp=property[0].toUpperCase()+property.slice(1);var i=0;while(i<VENDOR_PREFIXES.length){prefix=VENDOR_PREFIXES[i];prop=prefix?prefix+camelProp:property;if(prop in obj){return prop}i++}return undefined}var _uniqueId=1;function uniqueId(){return _uniqueId++}function getWindowForElement(element){var doc=element.ownerDocument||element;return doc.defaultView||doc.parentWindow||window}var MOBILE_REGEX=/mobile|tablet|ip(ad|hone|od)|android/i;var SUPPORT_TOUCH=\"ontouchstart\"in window;var SUPPORT_POINTER_EVENTS=prefixed(window,\"PointerEvent\")!==undefined;var SUPPORT_ONLY_TOUCH=SUPPORT_TOUCH&&MOBILE_REGEX.test(navigator.userAgent);var INPUT_TYPE_TOUCH=\"touch\";var INPUT_TYPE_PEN=\"pen\";var INPUT_TYPE_MOUSE=\"mouse\";var INPUT_TYPE_KINECT=\"kinect\";var COMPUTE_INTERVAL=25;var INPUT_START=1;var INPUT_MOVE=2;var INPUT_END=4;var INPUT_CANCEL=8;var DIRECTION_NONE=1;var DIRECTION_LEFT=2;var DIRECTION_RIGHT=4;var DIRECTION_UP=8;var DIRECTION_DOWN=16;var DIRECTION_HORIZONTAL=DIRECTION_LEFT|DIRECTION_RIGHT;var DIRECTION_VERTICAL=DIRECTION_UP|DIRECTION_DOWN;var DIRECTION_ALL=DIRECTION_HORIZONTAL|DIRECTION_VERTICAL;var PROPS_XY=[\"x\",\"y\"];var PROPS_CLIENT_XY=[\"clientX\",\"clientY\"];function Input(manager,callback){var self=this;this.manager=manager;this.callback=callback;this.element=manager.element;this.target=manager.options.inputTarget;this.domHandler=function(ev){if(boolOrFn(manager.options.enable,[manager])){self.handler(ev)}};this.init()}Input.prototype={handler:function(){},init:function(){this.evEl&&addEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&addEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&addEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&removeEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&removeEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&removeEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)}};function createInputInstance(manager){var Type;var inputClass=manager.options.inputClass;if(inputClass){Type=inputClass}else if(SUPPORT_POINTER_EVENTS){Type=PointerEventInput}else if(SUPPORT_ONLY_TOUCH){Type=TouchInput}else if(!SUPPORT_TOUCH){Type=MouseInput}else{Type=TouchMouseInput}return new Type(manager,inputHandler)}function inputHandler(manager,eventType,input){var pointersLen=input.pointers.length;var changedPointersLen=input.changedPointers.length;var isFirst=eventType&INPUT_START&&pointersLen-changedPointersLen===0;var isFinal=eventType&(INPUT_END|INPUT_CANCEL)&&pointersLen-changedPointersLen===0;input.isFirst=!!isFirst;input.isFinal=!!isFinal;if(isFirst){manager.session={}}input.eventType=eventType;computeInputData(manager,input);manager.emit(\"hammer.input\",input);manager.recognize(input);manager.session.prevInput=input}function computeInputData(manager,input){var session=manager.session;var pointers=input.pointers;var pointersLength=pointers.length;if(!session.firstInput){session.firstInput=simpleCloneInputData(input)}if(pointersLength>1&&!session.firstMultiple){session.firstMultiple=simpleCloneInputData(input)}else if(pointersLength===1){session.firstMultiple=false}var firstInput=session.firstInput;var firstMultiple=session.firstMultiple;var offsetCenter=firstMultiple?firstMultiple.center:firstInput.center;var center=input.center=getCenter(pointers);input.timeStamp=now();input.deltaTime=input.timeStamp-firstInput.timeStamp;input.angle=getAngle(offsetCenter,center);input.distance=getDistance(offsetCenter,center);computeDeltaXY(session,input);input.offsetDirection=getDirection(input.deltaX,input.deltaY);var overallVelocity=getVelocity(input.deltaTime,input.deltaX,input.deltaY);input.overallVelocityX=overallVelocity.x;input.overallVelocityY=overallVelocity.y;input.overallVelocity=abs(overallVelocity.x)>abs(overallVelocity.y)?overallVelocity.x:overallVelocity.y;input.scale=firstMultiple?getScale(firstMultiple.pointers,pointers):1;input.rotation=firstMultiple?getRotation(firstMultiple.pointers,pointers):0;input.maxPointers=!session.prevInput?input.pointers.length:input.pointers.length>session.prevInput.maxPointers?input.pointers.length:session.prevInput.maxPointers;computeIntervalInputData(session,input);var target=manager.element;if(hasParent(input.srcEvent.target,target)){target=input.srcEvent.target}input.target=target}function computeDeltaXY(session,input){var center=input.center;var offset=session.offsetDelta||{};var prevDelta=session.prevDelta||{};var prevInput=session.prevInput||{};if(input.eventType===INPUT_START||prevInput.eventType===INPUT_END){prevDelta=session.prevDelta={x:prevInput.deltaX||0,y:prevInput.deltaY||0};offset=session.offsetDelta={x:center.x,y:center.y}}input.deltaX=prevDelta.x+(center.x-offset.x);input.deltaY=prevDelta.y+(center.y-offset.y)}function computeIntervalInputData(session,input){var last=session.lastInterval||input,deltaTime=input.timeStamp-last.timeStamp,velocity,velocityX,velocityY,direction;if(input.eventType!=INPUT_CANCEL&&(deltaTime>COMPUTE_INTERVAL||last.velocity===undefined)){var deltaX=input.deltaX-last.deltaX;var deltaY=input.deltaY-last.deltaY;var v=getVelocity(deltaTime,deltaX,deltaY);velocityX=v.x;velocityY=v.y;velocity=abs(v.x)>abs(v.y)?v.x:v.y;direction=getDirection(deltaX,deltaY);session.lastInterval=input}else{velocity=last.velocity;velocityX=last.velocityX;velocityY=last.velocityY;direction=last.direction}input.velocity=velocity;input.velocityX=velocityX;input.velocityY=velocityY;input.direction=direction}function simpleCloneInputData(input){var pointers=[];var i=0;while(i<input.pointers.length){pointers[i]={clientX:round(input.pointers[i].clientX),clientY:round(input.pointers[i].clientY)};i++}return{timeStamp:now(),pointers:pointers,center:getCenter(pointers),deltaX:input.deltaX,deltaY:input.deltaY}}function getCenter(pointers){var pointersLength=pointers.length;if(pointersLength===1){return{x:round(pointers[0].clientX),y:round(pointers[0].clientY)}}var x=0,y=0,i=0;while(i<pointersLength){x+=pointers[i].clientX;y+=pointers[i].clientY;i++}return{x:round(x/pointersLength),y:round(y/pointersLength)}}function getVelocity(deltaTime,x,y){return{x:x/deltaTime||0,y:y/deltaTime||0}}function getDirection(x,y){if(x===y){return DIRECTION_NONE}if(abs(x)>=abs(y)){return x<0?DIRECTION_LEFT:DIRECTION_RIGHT}return y<0?DIRECTION_UP:DIRECTION_DOWN}function getDistance(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.sqrt(x*x+y*y)}function getAngle(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.atan2(y,x)*180/Math.PI}function getRotation(start,end){return getAngle(end[1],end[0],PROPS_CLIENT_XY)+getAngle(start[1],start[0],PROPS_CLIENT_XY)}function getScale(start,end){return getDistance(end[0],end[1],PROPS_CLIENT_XY)/getDistance(start[0],start[1],PROPS_CLIENT_XY)}var MOUSE_INPUT_MAP={mousedown:INPUT_START,mousemove:INPUT_MOVE,mouseup:INPUT_END};var MOUSE_ELEMENT_EVENTS=\"mousedown\";var MOUSE_WINDOW_EVENTS=\"mousemove mouseup\";function MouseInput(){this.evEl=MOUSE_ELEMENT_EVENTS;this.evWin=MOUSE_WINDOW_EVENTS;this.pressed=false;Input.apply(this,arguments)}inherit(MouseInput,Input,{handler:function MEhandler(ev){var eventType=MOUSE_INPUT_MAP[ev.type];if(eventType&INPUT_START&&ev.button===0){this.pressed=true}if(eventType&INPUT_MOVE&&ev.which!==1){eventType=INPUT_END}if(!this.pressed){return}if(eventType&INPUT_END){this.pressed=false}this.callback(this.manager,eventType,{pointers:[ev],changedPointers:[ev],pointerType:INPUT_TYPE_MOUSE,srcEvent:ev})}});var POINTER_INPUT_MAP={pointerdown:INPUT_START,pointermove:INPUT_MOVE,pointerup:INPUT_END,pointercancel:INPUT_CANCEL,pointerout:INPUT_CANCEL};var IE10_POINTER_TYPE_ENUM={2:INPUT_TYPE_TOUCH,3:INPUT_TYPE_PEN,4:INPUT_TYPE_MOUSE,5:INPUT_TYPE_KINECT};var POINTER_ELEMENT_EVENTS=\"pointerdown\";var POINTER_WINDOW_EVENTS=\"pointermove pointerup pointercancel\";if(window.MSPointerEvent&&!window.PointerEvent){POINTER_ELEMENT_EVENTS=\"MSPointerDown\";POINTER_WINDOW_EVENTS=\"MSPointerMove MSPointerUp MSPointerCancel\"}function PointerEventInput(){this.evEl=POINTER_ELEMENT_EVENTS;this.evWin=POINTER_WINDOW_EVENTS;Input.apply(this,arguments);this.store=this.manager.session.pointerEvents=[]}inherit(PointerEventInput,Input,{handler:function PEhandler(ev){var store=this.store;var removePointer=false;var eventTypeNormalized=ev.type.toLowerCase().replace(\"ms\",\"\");var eventType=POINTER_INPUT_MAP[eventTypeNormalized];var pointerType=IE10_POINTER_TYPE_ENUM[ev.pointerType]||ev.pointerType;var isTouch=pointerType==INPUT_TYPE_TOUCH;var storeIndex=inArray(store,ev.pointerId,\"pointerId\");if(eventType&INPUT_START&&(ev.button===0||isTouch)){if(storeIndex<0){store.push(ev);storeIndex=store.length-1}}else if(eventType&(INPUT_END|INPUT_CANCEL)){removePointer=true}if(storeIndex<0){return}store[storeIndex]=ev;this.callback(this.manager,eventType,{pointers:store,changedPointers:[ev],pointerType:pointerType,srcEvent:ev});if(removePointer){store.splice(storeIndex,1)}}});var SINGLE_TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var SINGLE_TOUCH_TARGET_EVENTS=\"touchstart\";var SINGLE_TOUCH_WINDOW_EVENTS=\"touchstart touchmove touchend touchcancel\";function SingleTouchInput(){this.evTarget=SINGLE_TOUCH_TARGET_EVENTS;this.evWin=SINGLE_TOUCH_WINDOW_EVENTS;this.started=false;Input.apply(this,arguments)}inherit(SingleTouchInput,Input,{handler:function TEhandler(ev){var type=SINGLE_TOUCH_INPUT_MAP[ev.type];if(type===INPUT_START){this.started=true}if(!this.started){return}var touches=normalizeSingleTouches.call(this,ev,type);if(type&(INPUT_END|INPUT_CANCEL)&&touches[0].length-touches[1].length===0){this.started=false}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function normalizeSingleTouches(ev,type){var all=toArray(ev.touches);var changed=toArray(ev.changedTouches);if(type&(INPUT_END|INPUT_CANCEL)){all=uniqueArray(all.concat(changed),\"identifier\",true)}return[all,changed]}var TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var TOUCH_TARGET_EVENTS=\"touchstart touchmove touchend touchcancel\";function TouchInput(){this.evTarget=TOUCH_TARGET_EVENTS;this.targetIds={};Input.apply(this,arguments)}inherit(TouchInput,Input,{handler:function MTEhandler(ev){var type=TOUCH_INPUT_MAP[ev.type];var touches=getTouches.call(this,ev,type);if(!touches){return}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function getTouches(ev,type){var allTouches=toArray(ev.touches);var targetIds=this.targetIds;if(type&(INPUT_START|INPUT_MOVE)&&allTouches.length===1){targetIds[allTouches[0].identifier]=true;return[allTouches,allTouches]}var i,targetTouches,changedTouches=toArray(ev.changedTouches),changedTargetTouches=[],target=this.target;targetTouches=allTouches.filter(function(touch){return hasParent(touch.target,target)});if(type===INPUT_START){i=0;while(i<targetTouches.length){targetIds[targetTouches[i].identifier]=true;i++}}i=0;while(i<changedTouches.length){if(targetIds[changedTouches[i].identifier]){changedTargetTouches.push(changedTouches[i])}if(type&(INPUT_END|INPUT_CANCEL)){delete targetIds[changedTouches[i].identifier]}i++}if(!changedTargetTouches.length){return}return[uniqueArray(targetTouches.concat(changedTargetTouches),\"identifier\",true),changedTargetTouches]}var DEDUP_TIMEOUT=2500;var DEDUP_DISTANCE=25;function TouchMouseInput(){Input.apply(this,arguments);var handler=bindFn(this.handler,this);this.touch=new TouchInput(this.manager,handler);this.mouse=new MouseInput(this.manager,handler);this.primaryTouch=null;this.lastTouches=[]}inherit(TouchMouseInput,Input,{handler:function TMEhandler(manager,inputEvent,inputData){var isTouch=inputData.pointerType==INPUT_TYPE_TOUCH,isMouse=inputData.pointerType==INPUT_TYPE_MOUSE;if(isMouse&&inputData.sourceCapabilities&&inputData.sourceCapabilities.firesTouchEvents){return}if(isTouch){recordTouches.call(this,inputEvent,inputData)}else if(isMouse&&isSyntheticEvent.call(this,inputData)){return}this.callback(manager,inputEvent,inputData)},destroy:function destroy(){this.touch.destroy();this.mouse.destroy()}});function recordTouches(eventType,eventData){if(eventType&INPUT_START){this.primaryTouch=eventData.changedPointers[0].identifier;setLastTouch.call(this,eventData)}else if(eventType&(INPUT_END|INPUT_CANCEL)){setLastTouch.call(this,eventData)}}function setLastTouch(eventData){var touch=eventData.changedPointers[0];if(touch.identifier===this.primaryTouch){var lastTouch={x:touch.clientX,y:touch.clientY};this.lastTouches.push(lastTouch);var lts=this.lastTouches;var removeLastTouch=function(){var i=lts.indexOf(lastTouch);if(i>-1){lts.splice(i,1)}};setTimeout(removeLastTouch,DEDUP_TIMEOUT)}}function isSyntheticEvent(eventData){var x=eventData.srcEvent.clientX,y=eventData.srcEvent.clientY;for(var i=0;i<this.lastTouches.length;i++){var t=this.lastTouches[i];var dx=Math.abs(x-t.x),dy=Math.abs(y-t.y);if(dx<=DEDUP_DISTANCE&&dy<=DEDUP_DISTANCE){return true}}return false}var PREFIXED_TOUCH_ACTION=prefixed(TEST_ELEMENT.style,\"touchAction\");var NATIVE_TOUCH_ACTION=PREFIXED_TOUCH_ACTION!==undefined;var TOUCH_ACTION_COMPUTE=\"compute\";var TOUCH_ACTION_AUTO=\"auto\";var TOUCH_ACTION_MANIPULATION=\"manipulation\";var TOUCH_ACTION_NONE=\"none\";var TOUCH_ACTION_PAN_X=\"pan-x\";var TOUCH_ACTION_PAN_Y=\"pan-y\";var TOUCH_ACTION_MAP=getTouchActionProps();function TouchAction(manager,value){this.manager=manager;this.set(value)}TouchAction.prototype={set:function(value){if(value==TOUCH_ACTION_COMPUTE){value=this.compute()}if(NATIVE_TOUCH_ACTION&&this.manager.element.style&&TOUCH_ACTION_MAP[value]){this.manager.element.style[PREFIXED_TOUCH_ACTION]=value}this.actions=value.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var actions=[];each(this.manager.recognizers,function(recognizer){if(boolOrFn(recognizer.options.enable,[recognizer])){actions=actions.concat(recognizer.getTouchAction())}});return cleanTouchActions(actions.join(\" \"))},preventDefaults:function(input){var srcEvent=input.srcEvent;var direction=input.offsetDirection;if(this.manager.session.prevented){srcEvent.preventDefault();return}var actions=this.actions;var hasNone=inStr(actions,TOUCH_ACTION_NONE)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];if(hasNone){var isTapPointer=input.pointers.length===1;var isTapMovement=input.distance<2;var isTapTouchTime=input.deltaTime<250;if(isTapPointer&&isTapMovement&&isTapTouchTime){return}}if(hasPanX&&hasPanY){return}if(hasNone||hasPanY&&direction&DIRECTION_HORIZONTAL||hasPanX&&direction&DIRECTION_VERTICAL){return this.preventSrc(srcEvent)}},preventSrc:function(srcEvent){this.manager.session.prevented=true;srcEvent.preventDefault()}};function cleanTouchActions(actions){if(inStr(actions,TOUCH_ACTION_NONE)){return TOUCH_ACTION_NONE}var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X);var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y);if(hasPanX&&hasPanY){return TOUCH_ACTION_NONE}if(hasPanX||hasPanY){return hasPanX?TOUCH_ACTION_PAN_X:TOUCH_ACTION_PAN_Y}if(inStr(actions,TOUCH_ACTION_MANIPULATION)){return TOUCH_ACTION_MANIPULATION}return TOUCH_ACTION_AUTO}function getTouchActionProps(){if(!NATIVE_TOUCH_ACTION){return false}var touchMap={};var cssSupports=window.CSS&&window.CSS.supports;[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(val){touchMap[val]=cssSupports?window.CSS.supports(\"touch-action\",val):true});return touchMap}var STATE_POSSIBLE=1;var STATE_BEGAN=2;var STATE_CHANGED=4;var STATE_ENDED=8;var STATE_RECOGNIZED=STATE_ENDED;var STATE_CANCELLED=16;var STATE_FAILED=32;function Recognizer(options){this.options=assign({},this.defaults,options||{});this.id=uniqueId();this.manager=null;this.options.enable=ifUndefined(this.options.enable,true);this.state=STATE_POSSIBLE;this.simultaneous={};this.requireFail=[]}Recognizer.prototype={defaults:{},set:function(options){assign(this.options,options);this.manager&&this.manager.touchAction.update();return this},recognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"recognizeWith\",this)){return this}var simultaneous=this.simultaneous;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(!simultaneous[otherRecognizer.id]){simultaneous[otherRecognizer.id]=otherRecognizer;otherRecognizer.recognizeWith(this)}return this},dropRecognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRecognizeWith\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);delete this.simultaneous[otherRecognizer.id];return this},requireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"requireFailure\",this)){return this}var requireFail=this.requireFail;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(inArray(requireFail,otherRecognizer)===-1){requireFail.push(otherRecognizer);otherRecognizer.requireFailure(this)}return this},dropRequireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRequireFailure\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);var index=inArray(this.requireFail,otherRecognizer);if(index>-1){this.requireFail.splice(index,1)}return this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(otherRecognizer){return!!this.simultaneous[otherRecognizer.id]},emit:function(input){var self=this;var state=this.state;function emit(event){self.manager.emit(event,input)}if(state<STATE_ENDED){emit(self.options.event+stateStr(state))}emit(self.options.event);if(input.additionalEvent){emit(input.additionalEvent)}if(state>=STATE_ENDED){emit(self.options.event+stateStr(state))}},tryEmit:function(input){if(this.canEmit()){return this.emit(input)}this.state=STATE_FAILED},canEmit:function(){var i=0;while(i<this.requireFail.length){if(!(this.requireFail[i].state&(STATE_FAILED|STATE_POSSIBLE))){return false}i++}return true},recognize:function(inputData){var inputDataClone=assign({},inputData);if(!boolOrFn(this.options.enable,[this,inputDataClone])){this.reset();this.state=STATE_FAILED;return}if(this.state&(STATE_RECOGNIZED|STATE_CANCELLED|STATE_FAILED)){this.state=STATE_POSSIBLE}this.state=this.process(inputDataClone);if(this.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED|STATE_CANCELLED)){this.tryEmit(inputDataClone)}},process:function(inputData){},getTouchAction:function(){},reset:function(){}};function stateStr(state){if(state&STATE_CANCELLED){return\"cancel\"}else if(state&STATE_ENDED){return\"end\"}else if(state&STATE_CHANGED){return\"move\"}else if(state&STATE_BEGAN){return\"start\"}return\"\"}function directionStr(direction){if(direction==DIRECTION_DOWN){return\"down\"}else if(direction==DIRECTION_UP){return\"up\"}else if(direction==DIRECTION_LEFT){return\"left\"}else if(direction==DIRECTION_RIGHT){return\"right\"}return\"\"}function getRecognizerByNameIfManager(otherRecognizer,recognizer){var manager=recognizer.manager;if(manager){return manager.get(otherRecognizer)}return otherRecognizer}function AttrRecognizer(){Recognizer.apply(this,arguments)}inherit(AttrRecognizer,Recognizer,{defaults:{pointers:1},attrTest:function(input){var optionPointers=this.options.pointers;return optionPointers===0||input.pointers.length===optionPointers},process:function(input){var state=this.state;var eventType=input.eventType;var isRecognized=state&(STATE_BEGAN|STATE_CHANGED);var isValid=this.attrTest(input);if(isRecognized&&(eventType&INPUT_CANCEL||!isValid)){return state|STATE_CANCELLED}else if(isRecognized||isValid){if(eventType&INPUT_END){return state|STATE_ENDED}else if(!(state&STATE_BEGAN)){return STATE_BEGAN}return state|STATE_CHANGED}return STATE_FAILED}});function PanRecognizer(){AttrRecognizer.apply(this,arguments);this.pX=null;this.pY=null}inherit(PanRecognizer,AttrRecognizer,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:DIRECTION_ALL},getTouchAction:function(){var direction=this.options.direction;var actions=[];if(direction&DIRECTION_HORIZONTAL){actions.push(TOUCH_ACTION_PAN_Y)}if(direction&DIRECTION_VERTICAL){actions.push(TOUCH_ACTION_PAN_X)}return actions},directionTest:function(input){var options=this.options;var hasMoved=true;var distance=input.distance;var direction=input.direction;var x=input.deltaX;var y=input.deltaY;if(!(direction&options.direction)){if(options.direction&DIRECTION_HORIZONTAL){direction=x===0?DIRECTION_NONE:x<0?DIRECTION_LEFT:DIRECTION_RIGHT;hasMoved=x!=this.pX;distance=Math.abs(input.deltaX)}else{direction=y===0?DIRECTION_NONE:y<0?DIRECTION_UP:DIRECTION_DOWN;hasMoved=y!=this.pY;distance=Math.abs(input.deltaY)}}input.direction=direction;return hasMoved&&distance>options.threshold&&direction&options.direction},attrTest:function(input){return AttrRecognizer.prototype.attrTest.call(this,input)&&(this.state&STATE_BEGAN||!(this.state&STATE_BEGAN)&&this.directionTest(input))},emit:function(input){this.pX=input.deltaX;this.pY=input.deltaY;var direction=directionStr(input.direction);if(direction){input.additionalEvent=this.options.event+direction}this._super.emit.call(this,input)}});function PinchRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(PinchRecognizer,AttrRecognizer,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.scale-1)>this.options.threshold||this.state&STATE_BEGAN)},emit:function(input){if(input.scale!==1){var inOut=input.scale<1?\"in\":\"out\";input.additionalEvent=this.options.event+inOut}this._super.emit.call(this,input)}});function PressRecognizer(){Recognizer.apply(this,arguments);this._timer=null;this._input=null}inherit(PressRecognizer,Recognizer,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[TOUCH_ACTION_AUTO]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTime=input.deltaTime>options.time;this._input=input;if(!validMovement||!validPointers||input.eventType&(INPUT_END|INPUT_CANCEL)&&!validTime){this.reset()}else if(input.eventType&INPUT_START){this.reset();this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.time,this)}else if(input.eventType&INPUT_END){return STATE_RECOGNIZED}return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(input){if(this.state!==STATE_RECOGNIZED){return}if(input&&input.eventType&INPUT_END){this.manager.emit(this.options.event+\"up\",input)}else{this._input.timeStamp=now();this.manager.emit(this.options.event,this._input)}}});function RotateRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(RotateRecognizer,AttrRecognizer,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.rotation)>this.options.threshold||this.state&STATE_BEGAN)}});function SwipeRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(SwipeRecognizer,AttrRecognizer,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:DIRECTION_HORIZONTAL|DIRECTION_VERTICAL,pointers:1},getTouchAction:function(){return PanRecognizer.prototype.getTouchAction.call(this)},attrTest:function(input){var direction=this.options.direction;var velocity;if(direction&(DIRECTION_HORIZONTAL|DIRECTION_VERTICAL)){velocity=input.overallVelocity}else if(direction&DIRECTION_HORIZONTAL){velocity=input.overallVelocityX}else if(direction&DIRECTION_VERTICAL){velocity=input.overallVelocityY}return this._super.attrTest.call(this,input)&&direction&input.offsetDirection&&input.distance>this.options.threshold&&input.maxPointers==this.options.pointers&&abs(velocity)>this.options.velocity&&input.eventType&INPUT_END},emit:function(input){var direction=directionStr(input.offsetDirection);if(direction){this.manager.emit(this.options.event+direction,input)}this.manager.emit(this.options.event,input)}});function TapRecognizer(){Recognizer.apply(this,arguments);this.pTime=false;this.pCenter=false;this._timer=null;this._input=null;this.count=0}inherit(TapRecognizer,Recognizer,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[TOUCH_ACTION_MANIPULATION]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTouchTime=input.deltaTime<options.time;this.reset();if(input.eventType&INPUT_START&&this.count===0){return this.failTimeout()}if(validMovement&&validTouchTime&&validPointers){if(input.eventType!=INPUT_END){return this.failTimeout()}var validInterval=this.pTime?input.timeStamp-this.pTime<options.interval:true;var validMultiTap=!this.pCenter||getDistance(this.pCenter,input.center)<options.posThreshold;this.pTime=input.timeStamp;this.pCenter=input.center;if(!validMultiTap||!validInterval){this.count=1}else{this.count+=1}this._input=input;var tapCount=this.count%options.taps;if(tapCount===0){if(!this.hasRequireFailures()){return STATE_RECOGNIZED}else{this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.interval,this);return STATE_BEGAN}}}return STATE_FAILED},failTimeout:function(){this._timer=setTimeoutContext(function(){this.state=STATE_FAILED},this.options.interval,this);return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(){if(this.state==STATE_RECOGNIZED){this._input.tapCount=this.count;this.manager.emit(this.options.event,this._input)}}});function Hammer(element,options){options=options||{};options.recognizers=ifUndefined(options.recognizers,Hammer.defaults.preset);return new Manager(element,options)}Hammer.VERSION=\"2.0.7\";Hammer.defaults={domEvents:false,touchAction:TOUCH_ACTION_COMPUTE,enable:true,inputTarget:null,inputClass:null,preset:[[RotateRecognizer,{enable:false}],[PinchRecognizer,{enable:false},[\"rotate\"]],[SwipeRecognizer,{direction:DIRECTION_HORIZONTAL}],[PanRecognizer,{direction:DIRECTION_HORIZONTAL},[\"swipe\"]],[TapRecognizer],[TapRecognizer,{event:\"doubletap\",taps:2},[\"tap\"]],[PressRecognizer]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};var STOP=1;var FORCED_STOP=2;function Manager(element,options){this.options=assign({},Hammer.defaults,options||{});this.options.inputTarget=this.options.inputTarget||element;this.handlers={};this.session={};this.recognizers=[];this.oldCssProps={};this.element=element;this.input=createInputInstance(this);this.touchAction=new TouchAction(this,this.options.touchAction);toggleCssProps(this,true);each(this.options.recognizers,function(item){var recognizer=this.add(new item[0](item[1]));item[2]&&recognizer.recognizeWith(item[2]);item[3]&&recognizer.requireFailure(item[3])},this)}Manager.prototype={set:function(options){assign(this.options,options);if(options.touchAction){this.touchAction.update()}if(options.inputTarget){this.input.destroy();this.input.target=options.inputTarget;this.input.init()}return this},stop:function(force){this.session.stopped=force?FORCED_STOP:STOP},recognize:function(inputData){var session=this.session;if(session.stopped){return}this.touchAction.preventDefaults(inputData)\n;var recognizer;var recognizers=this.recognizers;var curRecognizer=session.curRecognizer;if(!curRecognizer||curRecognizer&&curRecognizer.state&STATE_RECOGNIZED){curRecognizer=session.curRecognizer=null}var i=0;while(i<recognizers.length){recognizer=recognizers[i];if(session.stopped!==FORCED_STOP&&(!curRecognizer||recognizer==curRecognizer||recognizer.canRecognizeWith(curRecognizer))){recognizer.recognize(inputData)}else{recognizer.reset()}if(!curRecognizer&&recognizer.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED)){curRecognizer=session.curRecognizer=recognizer}i++}},get:function(recognizer){if(recognizer instanceof Recognizer){return recognizer}var recognizers=this.recognizers;for(var i=0;i<recognizers.length;i++){if(recognizers[i].options.event==recognizer){return recognizers[i]}}return null},add:function(recognizer){if(invokeArrayArg(recognizer,\"add\",this)){return this}var existing=this.get(recognizer.options.event);if(existing){this.remove(existing)}this.recognizers.push(recognizer);recognizer.manager=this;this.touchAction.update();return recognizer},remove:function(recognizer){if(invokeArrayArg(recognizer,\"remove\",this)){return this}recognizer=this.get(recognizer);if(recognizer){var recognizers=this.recognizers;var index=inArray(recognizers,recognizer);if(index!==-1){recognizers.splice(index,1);this.touchAction.update()}}return this},on:function(events,handler){if(events===undefined){return}if(handler===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){handlers[event]=handlers[event]||[];handlers[event].push(handler)});return this},off:function(events,handler){if(events===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){if(!handler){delete handlers[event]}else{handlers[event]&&handlers[event].splice(inArray(handlers[event],handler),1)}});return this},emit:function(event,data){if(this.options.domEvents){triggerDomEvent(event,data)}var handlers=this.handlers[event]&&this.handlers[event].slice();if(!handlers||!handlers.length){return}data.type=event;data.preventDefault=function(){data.srcEvent.preventDefault()};var i=0;while(i<handlers.length){handlers[i](data);i++}},destroy:function(){this.element&&toggleCssProps(this,false);this.handlers={};this.session={};this.input.destroy();this.element=null}};function toggleCssProps(manager,add){var element=manager.element;if(!element.style){return}var prop;each(manager.options.cssProps,function(value,name){prop=prefixed(element.style,name);if(add){manager.oldCssProps[prop]=element.style[prop];element.style[prop]=value}else{element.style[prop]=manager.oldCssProps[prop]||\"\"}});if(!add){manager.oldCssProps={}}}function triggerDomEvent(event,data){var gestureEvent=document.createEvent(\"Event\");gestureEvent.initEvent(event,true,true);gestureEvent.gesture=data;data.target.dispatchEvent(gestureEvent)}assign(Hammer,{INPUT_START:INPUT_START,INPUT_MOVE:INPUT_MOVE,INPUT_END:INPUT_END,INPUT_CANCEL:INPUT_CANCEL,STATE_POSSIBLE:STATE_POSSIBLE,STATE_BEGAN:STATE_BEGAN,STATE_CHANGED:STATE_CHANGED,STATE_ENDED:STATE_ENDED,STATE_RECOGNIZED:STATE_RECOGNIZED,STATE_CANCELLED:STATE_CANCELLED,STATE_FAILED:STATE_FAILED,DIRECTION_NONE:DIRECTION_NONE,DIRECTION_LEFT:DIRECTION_LEFT,DIRECTION_RIGHT:DIRECTION_RIGHT,DIRECTION_UP:DIRECTION_UP,DIRECTION_DOWN:DIRECTION_DOWN,DIRECTION_HORIZONTAL:DIRECTION_HORIZONTAL,DIRECTION_VERTICAL:DIRECTION_VERTICAL,DIRECTION_ALL:DIRECTION_ALL,Manager:Manager,Input:Input,TouchAction:TouchAction,TouchInput:TouchInput,MouseInput:MouseInput,PointerEventInput:PointerEventInput,TouchMouseInput:TouchMouseInput,SingleTouchInput:SingleTouchInput,Recognizer:Recognizer,AttrRecognizer:AttrRecognizer,Tap:TapRecognizer,Pan:PanRecognizer,Swipe:SwipeRecognizer,Pinch:PinchRecognizer,Rotate:RotateRecognizer,Press:PressRecognizer,on:addEventListeners,off:removeEventListeners,each:each,merge:merge,extend:extend,assign:assign,inherit:inherit,bindFn:bindFn,prefixed:prefixed});var freeGlobal=typeof window!==\"undefined\"?window:typeof self!==\"undefined\"?self:{};freeGlobal.Hammer=Hammer;if(true){!(__WEBPACK_AMD_DEFINE_RESULT__=function(){return Hammer}.call(exports,__webpack_require__,exports,module),__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof module!=\"undefined\"&&module.exports){module.exports=Hammer}else{window[exportName]=Hammer}})(window,document,\"Hammer\")},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Timeline=__webpack_require__(178);exports.Graph2d=__webpack_require__(180);exports.timeline={Core:__webpack_require__(65),DateUtil:__webpack_require__(36),Range:__webpack_require__(64),stack:__webpack_require__(100),TimeStep:__webpack_require__(66),components:{items:{Item:__webpack_require__(38),BackgroundItem:__webpack_require__(103),BoxItem:__webpack_require__(101),PointItem:__webpack_require__(102),RangeItem:__webpack_require__(70)},BackgroundGroup:__webpack_require__(69),Component:__webpack_require__(16),CurrentTime:__webpack_require__(67),CustomTime:__webpack_require__(46),DataAxis:__webpack_require__(107),DataScale:__webpack_require__(108),GraphGroup:__webpack_require__(109),Group:__webpack_require__(68),ItemSet:__webpack_require__(99),Legend:__webpack_require__(112),LineGraph:__webpack_require__(106),TimeAxis:__webpack_require__(45)}};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var ItemSet=__webpack_require__(99);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(105).allOptions;var configureOptions=__webpack_require__(105).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Timeline(container,items,groups,options){if(!(this instanceof Timeline)){throw new SyntaxError(\"Constructor must be called with the new operator\")}if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Timeline option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);if(!options||options&&typeof options.rtl==\"undefined\"){this.dom.root.style.visibility=\"hidden\";var directionFromDom,domNode=this.dom.root;while(!directionFromDom&&domNode){directionFromDom=window.getComputedStyle(domNode,null).direction;domNode=domNode.parentElement}this.options.rtl=directionFromDom&&directionFromDom.toLowerCase()==\"rtl\"}else{this.options.rtl=options.rtl}this.options.rollingMode=options&&options.rollingMode;this.options.onInitialDrawComplete=options&&options.onInitialDrawComplete;this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function getScale(){return me.timeAxis.step.scale},getStep:function getStep(){return me.timeAxis.step.step},toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body,this.options);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body,this.options);this.timeAxis2=null;this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body,this.options);this.components.push(this.currentTime);this.itemSet=new ItemSet(this.body,this.options);this.components.push(this.itemSet);this.itemsData=null;this.groupsData=null;this.dom.root.onclick=function(event){me.emit(\"click\",me.getEventProperties(event))};this.dom.root.ondblclick=function(event){me.emit(\"doubleClick\",me.getEventProperties(event))};this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};this.dom.root.onmouseover=function(event){me.emit(\"mouseOver\",me.getEventProperties(event))};if(window.PointerEvent){this.dom.root.onpointerdown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onpointermove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onpointerup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}else{this.dom.root.onmousemove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onmousedown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onmouseup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}this.initialFitDone=false;this.on(\"changed\",function(){if(this.itemsData==null||this.options.rollingMode)return;if(!me.initialFitDone){me.initialFitDone=true;if(me.options.start!=undefined||me.options.end!=undefined){if(me.options.start==undefined||me.options.end==undefined){var range=me.getItemRange()}var start=me.options.start!=undefined?me.options.start:range.min;var end=me.options.end!=undefined?me.options.end:range.max;me.setWindow(start,end,{animation:false})}else{me.fit({animation:false})}}if(!me.initialDrawDone&&me.initialRangeChangeDone){me.initialDrawDone=true;me.dom.root.style.visibility=\"visible\";if(me.options.onInitialDrawComplete){setTimeout(function(){return me.options.onInitialDrawComplete()},0)}}});if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Timeline.prototype=new Core;Timeline.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};Timeline.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:true});this._redraw()};Timeline.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options);if(\"type\"in options){if(options.type!==this.options.type){this.options.type=options.type;var itemsData=this.itemsData;if(itemsData){var selection=this.getSelection();this.setItems(null);this.setItems(itemsData);this.setSelection(selection)}}}};Timeline.prototype.setItems=function(items){var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.itemSet&&this.itemSet.setItems(newDataSet)};Timeline.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else{var filter=function filter(group){return group.visible!==false};if(groups instanceof DataSet||groups instanceof DataView){newDataSet=new DataView(groups,{filter:filter})}else{newDataSet=new DataSet(groups.filter(filter))}}this.groupsData=newDataSet;this.itemSet.setGroups(newDataSet)};Timeline.prototype.setData=function(data){if(data&&data.groups){this.setGroups(data.groups)}if(data&&data.items){this.setItems(data.items)}};Timeline.prototype.setSelection=function(ids,options){this.itemSet&&this.itemSet.setSelection(ids);if(options&&options.focus){this.focus(ids,options)}};Timeline.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]};Timeline.prototype.focus=function(id,options){if(!this.itemsData||id==undefined)return;var ids=Array.isArray(id)?id:[id];var itemsData=this.itemsData.getDataSet().get(ids,{type:{start:\"Date\",end:\"Date\"}});var start=null;var end=null;itemsData.forEach(function(itemData){var s=itemData.start.valueOf();var e=\"end\"in itemData?itemData.end.valueOf():itemData.start.valueOf();if(start===null||s<start){start=s}if(end===null||e>end){end=e}});if(start!==null&&end!==null){var me=this;var item=this.itemSet.items[ids[0]];var startPos=this._getScrollTop()*-1;var initialVerticalScroll=null;var verticalAnimationFrame=function verticalAnimationFrame(ease,willDraw,done){var verticalScroll=getItemVerticalScroll(me,item);if(!initialVerticalScroll){initialVerticalScroll=verticalScroll}if(initialVerticalScroll.itemTop==verticalScroll.itemTop&&!initialVerticalScroll.shouldScroll){return}else if(initialVerticalScroll.itemTop!=verticalScroll.itemTop&&verticalScroll.shouldScroll){initialVerticalScroll=verticalScroll;startPos=me._getScrollTop()*-1}var from=startPos;var to=initialVerticalScroll.scrollOffset;var scrollTop=done?to:from+(to-from)*ease;me._setScrollTop(-scrollTop);if(!willDraw){me._redraw()}};var setFinalVerticalPosition=function setFinalVerticalPosition(){var finalVerticalScroll=getItemVerticalScroll(me,item);if(finalVerticalScroll.shouldScroll&&finalVerticalScroll.itemTop!=initialVerticalScroll.itemTop){me._setScrollTop(-finalVerticalScroll.scrollOffset);me._redraw()}};var finalVerticalCallback=function finalVerticalCallback(){setFinalVerticalPosition();setTimeout(setFinalVerticalPosition,100)};var middle=(start+end)/2;var interval=Math.max(this.range.end-this.range.start,(end-start)*1.1);var animation=options&&options.animation!==undefined?options.animation:true;if(!animation){initialVerticalScroll={shouldScroll:false,scrollOffset:-1,itemTop:-1}}this.range.setRange(middle-interval/2,middle+interval/2,{animation:animation},finalVerticalCallback,verticalAnimationFrame)}};Timeline.prototype.fit=function(options,callback){var animation=options&&options.animation!==undefined?options.animation:true;var range;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset.length===1&&dataset.get()[0].end===undefined){range=this.getDataRange();this.moveTo(range.min.valueOf(),{animation:animation},callback)}else{range=this.getItemRange();this.range.setRange(range.min,range.max,{animation:animation},callback)}};function getStart(item){return util.convert(item.data.start,\"Date\").valueOf()}function getEnd(item){var end=item.data.end!=undefined?item.data.end:item.data.start;return util.convert(end,\"Date\").valueOf()}function getItemVerticalScroll(timeline,item){var leftHeight=timeline.props.leftContainer.height;var contentHeight=timeline.props.left.height;var group=item.parent;var offset=group.top;var shouldScroll=true;var orientation=timeline.timeAxis.options.orientation.axis;var itemTop=function itemTop(){if(orientation==\"bottom\"){return group.height-item.top-item.height}else{return item.top}};var currentScrollHeight=timeline._getScrollTop()*-1;var targetOffset=offset+itemTop();var height=item.height;if(targetOffset<currentScrollHeight){if(offset+leftHeight<=offset+itemTop()+height){offset+=itemTop()-timeline.itemSet.options.margin.item.vertical}}else if(targetOffset+height>currentScrollHeight+leftHeight){offset+=itemTop()+height-leftHeight+timeline.itemSet.options.margin.item.vertical}else{shouldScroll=false}offset=Math.min(offset,contentHeight-leftHeight);return{shouldScroll:shouldScroll,scrollOffset:offset,itemTop:targetOffset}}Timeline.prototype.getItemRange=function(){var range=this.getDataRange();var min=range.min!==null?range.min.valueOf():null;var max=range.max!==null?range.max.valueOf():null;var minItem=null;var maxItem=null;if(min!=null&&max!=null){var interval=max-min;if(interval<=0){interval=10}var factor=interval/this.props.center.width;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.itemSet.items,function(item,key){if(item.groupShowing){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.itemSet.items,function(item){var start=getStart(item);var end=getEnd(item);var startSide;var endSide;if(this.options.rtl){startSide=start-(item.getWidthRight()+10)*factor;endSide=end+(item.getWidthLeft()+10)*factor}else{startSide=start-(item.getWidthLeft()+10)*factor;endSide=end+(item.getWidthRight()+10)*factor}if(startSide<min){min=startSide;minItem=item}if(endSide>max){max=endSide;maxItem=item}}.bind(this));if(minItem&&maxItem){var lhs=minItem.getWidthLeft()+10;var rhs=maxItem.getWidthRight()+10;var delta=this.props.center.width-lhs-rhs;if(delta>0){if(this.options.rtl){min=getStart(minItem)-rhs*interval/delta;max=getEnd(maxItem)+lhs*interval/delta}else{min=getStart(minItem)-lhs*interval/delta;max=getEnd(maxItem)+rhs*interval/delta}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getDataRange=function(){var min=null;var max=null;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset){dataset.forEach(function(item){var start=util.convert(item.start,\"Date\").valueOf();var end=util.convert(item.end!=undefined?item.end:item.start,\"Date\").valueOf();if(min===null||start<min){min=start}if(max===null||end>max){max=end}})}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x;if(this.options.rtl){x=util.getAbsoluteRight(this.dom.centerContainer)-clientX}else{x=clientX-util.getAbsoluteLeft(this.dom.centerContainer)}var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var item=this.itemSet.itemFromTarget(event);var group=this.itemSet.groupFromTarget(event);var customTime=CustomTime.customTimeFromTarget(event);var snap=this.itemSet.options.snap||null;var scale=this.body.util.getScale();var step=this.body.util.getStep();var time=this._toTime(x);var snappedTime=snap?snap(time,scale,step):time;var element=util.getTarget(event);var what=null;if(item!=null){what=\"item\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.itemSet.dom.labelSet)){what=\"group-label\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}return{event:event,item:item?item.id:null,group:group?group.groupId:null,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,snappedTime:snappedTime}};Timeline.prototype.toggleRollingMode=function(){if(this.range.rolling){this.range.stopRolling()}else{if(this.options.rollingMode==undefined){this.setOptions(this.options)}this.range.startRolling()}};module.exports=Timeline},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var ColorPicker=function(){function ColorPicker(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;(0,_classCallCheck3[\"default\"])(this,ColorPicker);this.pixelRatio=pixelRatio;this.generated=false;this.centerCoordinates={x:289/2,y:289/2};this.r=289*.49;this.color={r:255,g:255,b:255,a:1};this.hueCircle=undefined;this.initialColor={r:255,g:255,b:255,a:1};this.previousColor=undefined;this.applied=false;this.updateCallback=function(){};this.closeCallback=function(){};this._create()}(0,_createClass3[\"default\"])(ColorPicker,[{key:\"insertTo\",value:function insertTo(container){if(this.hammer!==undefined){this.hammer.destroy();this.hammer=undefined}this.container=container;this.container.appendChild(this.frame);this._bindHammer();this._setSize()}},{key:\"setUpdateCallback\",value:function setUpdateCallback(callback){if(typeof callback===\"function\"){this.updateCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker update callback is not a function.\")}}},{key:\"setCloseCallback\",value:function setCloseCallback(callback){if(typeof callback===\"function\"){this.closeCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker closing callback is not a function.\")}}},{key:\"_isColorString\",value:function _isColorString(color){var htmlColors={black:\"#000000\",navy:\"#000080\",darkblue:\"#00008B\",mediumblue:\"#0000CD\",blue:\"#0000FF\",darkgreen:\"#006400\",green:\"#008000\",teal:\"#008080\",darkcyan:\"#008B8B\",deepskyblue:\"#00BFFF\",darkturquoise:\"#00CED1\",mediumspringgreen:\"#00FA9A\",lime:\"#00FF00\",springgreen:\"#00FF7F\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",midnightblue:\"#191970\",dodgerblue:\"#1E90FF\",lightseagreen:\"#20B2AA\",forestgreen:\"#228B22\",seagreen:\"#2E8B57\",darkslategray:\"#2F4F4F\",limegreen:\"#32CD32\",mediumseagreen:\"#3CB371\",turquoise:\"#40E0D0\",royalblue:\"#4169E1\",steelblue:\"#4682B4\",darkslateblue:\"#483D8B\",mediumturquoise:\"#48D1CC\",indigo:\"#4B0082\",darkolivegreen:\"#556B2F\",cadetblue:\"#5F9EA0\",cornflowerblue:\"#6495ED\",mediumaquamarine:\"#66CDAA\",dimgray:\"#696969\",slateblue:\"#6A5ACD\",olivedrab:\"#6B8E23\",slategray:\"#708090\",lightslategray:\"#778899\",mediumslateblue:\"#7B68EE\",lawngreen:\"#7CFC00\",chartreuse:\"#7FFF00\",aquamarine:\"#7FFFD4\",maroon:\"#800000\",purple:\"#800080\",olive:\"#808000\",gray:\"#808080\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",blueviolet:\"#8A2BE2\",darkred:\"#8B0000\",darkmagenta:\"#8B008B\",saddlebrown:\"#8B4513\",darkseagreen:\"#8FBC8F\",lightgreen:\"#90EE90\",mediumpurple:\"#9370D8\",darkviolet:\"#9400D3\",palegreen:\"#98FB98\",darkorchid:\"#9932CC\",yellowgreen:\"#9ACD32\",sienna:\"#A0522D\",brown:\"#A52A2A\",darkgray:\"#A9A9A9\",lightblue:\"#ADD8E6\",greenyellow:\"#ADFF2F\",paleturquoise:\"#AFEEEE\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",firebrick:\"#B22222\",darkgoldenrod:\"#B8860B\",mediumorchid:\"#BA55D3\",rosybrown:\"#BC8F8F\",darkkhaki:\"#BDB76B\",silver:\"#C0C0C0\",mediumvioletred:\"#C71585\",indianred:\"#CD5C5C\",peru:\"#CD853F\",chocolate:\"#D2691E\",tan:\"#D2B48C\",lightgrey:\"#D3D3D3\",palevioletred:\"#D87093\",thistle:\"#D8BFD8\",orchid:\"#DA70D6\",goldenrod:\"#DAA520\",crimson:\"#DC143C\",gainsboro:\"#DCDCDC\",plum:\"#DDA0DD\",burlywood:\"#DEB887\",lightcyan:\"#E0FFFF\",lavender:\"#E6E6FA\",darksalmon:\"#E9967A\",violet:\"#EE82EE\",palegoldenrod:\"#EEE8AA\",lightcoral:\"#F08080\",khaki:\"#F0E68C\",aliceblue:\"#F0F8FF\",honeydew:\"#F0FFF0\",azure:\"#F0FFFF\",sandybrown:\"#F4A460\",wheat:\"#F5DEB3\",beige:\"#F5F5DC\",whitesmoke:\"#F5F5F5\",mintcream:\"#F5FFFA\",ghostwhite:\"#F8F8FF\",salmon:\"#FA8072\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lightgoldenrodyellow:\"#FAFAD2\",oldlace:\"#FDF5E6\",red:\"#FF0000\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",deeppink:\"#FF1493\",orangered:\"#FF4500\",tomato:\"#FF6347\",hotpink:\"#FF69B4\",coral:\"#FF7F50\",darkorange:\"#FF8C00\",lightsalmon:\"#FFA07A\",orange:\"#FFA500\",lightpink:\"#FFB6C1\",pink:\"#FFC0CB\",gold:\"#FFD700\",peachpuff:\"#FFDAB9\",navajowhite:\"#FFDEAD\",moccasin:\"#FFE4B5\",bisque:\"#FFE4C4\",mistyrose:\"#FFE4E1\",blanchedalmond:\"#FFEBCD\",papayawhip:\"#FFEFD5\",lavenderblush:\"#FFF0F5\",seashell:\"#FFF5EE\",cornsilk:\"#FFF8DC\",lemonchiffon:\"#FFFACD\",floralwhite:\"#FFFAF0\",snow:\"#FFFAFA\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",ivory:\"#FFFFF0\",white:\"#FFFFFF\"};if(typeof color===\"string\"){return htmlColors[color]}}},{key:\"setColor\",value:function setColor(color){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(color===\"none\"){return}var rgba=void 0;var htmlColor=this._isColorString(color);if(htmlColor!==undefined){color=htmlColor}if(util.isString(color)===true){if(util.isValidRGB(color)===true){var rgbaArray=color.substr(4).substr(0,color.length-5).split(\",\");rgba={r:rgbaArray[0],g:rgbaArray[1],b:rgbaArray[2],a:1}}else if(util.isValidRGBA(color)===true){var _rgbaArray=color.substr(5).substr(0,color.length-6).split(\",\");rgba={r:_rgbaArray[0],g:_rgbaArray[1],b:_rgbaArray[2],a:_rgbaArray[3]}}else if(util.isValidHex(color)===true){var rgbObj=util.hexToRGB(color);rgba={r:rgbObj.r,g:rgbObj.g,b:rgbObj.b,a:1}}}else{if(color instanceof Object){if(color.r!==undefined&&color.g!==undefined&&color.b!==undefined){var alpha=color.a!==undefined?color.a:\"1.0\";rgba={r:color.r,g:color.g,b:color.b,a:alpha}}}}if(rgba===undefined){throw new Error(\"Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: \"+(0,_stringify2[\"default\"])(color))}else{this._setColor(rgba,setInitial)}}},{key:\"show\",value:function show(){if(this.closeCallback!==undefined){this.closeCallback();this.closeCallback=undefined}this.applied=false;this.frame.style.display=\"block\";this._generateHueCircle()}},{key:\"_hide\",value:function _hide(){var _this=this;var storePrevious=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;if(storePrevious===true){this.previousColor=util.extend({},this.color)}if(this.applied===true){this.updateCallback(this.initialColor)}this.frame.style.display=\"none\";setTimeout(function(){if(_this.closeCallback!==undefined){_this.closeCallback();_this.closeCallback=undefined}},0)}},{key:\"_save\",value:function _save(){this.updateCallback(this.color);this.applied=false;this._hide()}},{key:\"_apply\",value:function _apply(){this.applied=true;this.updateCallback(this.color);this._updatePicker(this.color)}},{key:\"_loadLast\",value:function _loadLast(){if(this.previousColor!==undefined){this.setColor(this.previousColor,false)}else{alert(\"There is no last color to load...\")}}},{key:\"_setColor\",value:function _setColor(rgba){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(setInitial===true){this.initialColor=util.extend({},rgba)}this.color=rgba;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var angleConvert=2*Math.PI;var radius=this.r*hsv.s;var x=this.centerCoordinates.x+radius*Math.sin(angleConvert*hsv.h);var y=this.centerCoordinates.y+radius*Math.cos(angleConvert*hsv.h);this.colorPickerSelector.style.left=x-.5*this.colorPickerSelector.clientWidth+\"px\";this.colorPickerSelector.style.top=y-.5*this.colorPickerSelector.clientHeight+\"px\";this._updatePicker(rgba)}},{key:\"_setOpacity\",value:function _setOpacity(value){this.color.a=value/100;this._updatePicker(this.color)}},{key:\"_setBrightness\",value:function _setBrightness(value){var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.v=value/100;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this._updatePicker()}},{key:\"_updatePicker\",value:function _updatePicker(){var rgba=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.color;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);ctx.putImageData(this.hueCircle,0,0);ctx.fillStyle=\"rgba(0,0,0,\"+(1-hsv.v)+\")\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.fill();this.brightnessRange.value=100*hsv.v;this.opacityRange.value=100*rgba.a;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}},{key:\"_setSize\",value:function _setSize(){this.colorPickerCanvas.style.width=\"100%\";this.colorPickerCanvas.style.height=\"100%\";this.colorPickerCanvas.width=289*this.pixelRatio;this.colorPickerCanvas.height=289*this.pixelRatio}},{key:\"_create\",value:function _create(){this.frame=document.createElement(\"div\");this.frame.className=\"vis-color-picker\";this.colorPickerDiv=document.createElement(\"div\");this.colorPickerSelector=document.createElement(\"div\");this.colorPickerSelector.className=\"vis-selector\";this.colorPickerDiv.appendChild(this.colorPickerSelector);this.colorPickerCanvas=document.createElement(\"canvas\");this.colorPickerDiv.appendChild(this.colorPickerCanvas);if(!this.colorPickerCanvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.colorPickerCanvas.appendChild(noCanvas)}else{var ctx=this.colorPickerCanvas.getContext(\"2d\");this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1);this.colorPickerCanvas.getContext(\"2d\").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}this.colorPickerDiv.className=\"vis-color\";this.opacityDiv=document.createElement(\"div\");this.opacityDiv.className=\"vis-opacity\";this.brightnessDiv=document.createElement(\"div\");this.brightnessDiv.className=\"vis-brightness\";this.arrowDiv=document.createElement(\"div\");this.arrowDiv.className=\"vis-arrow\";this.opacityRange=document.createElement(\"input\");try{this.opacityRange.type=\"range\";this.opacityRange.min=\"0\";this.opacityRange.max=\"100\"}catch(err){}this.opacityRange.value=\"100\";this.opacityRange.className=\"vis-range\";this.brightnessRange=document.createElement(\"input\");try{this.brightnessRange.type=\"range\";this.brightnessRange.min=\"0\";this.brightnessRange.max=\"100\"}catch(err){}this.brightnessRange.value=\"100\";this.brightnessRange.className=\"vis-range\";this.opacityDiv.appendChild(this.opacityRange);this.brightnessDiv.appendChild(this.brightnessRange);var me=this;this.opacityRange.onchange=function(){me._setOpacity(this.value)};this.opacityRange.oninput=function(){me._setOpacity(this.value)};this.brightnessRange.onchange=function(){me._setBrightness(this.value)};this.brightnessRange.oninput=function(){me._setBrightness(this.value)};this.brightnessLabel=document.createElement(\"div\");this.brightnessLabel.className=\"vis-label vis-brightness\";this.brightnessLabel.innerHTML=\"brightness:\";this.opacityLabel=document.createElement(\"div\");this.opacityLabel.className=\"vis-label vis-opacity\";this.opacityLabel.innerHTML=\"opacity:\";this.newColorDiv=document.createElement(\"div\");this.newColorDiv.className=\"vis-new-color\";this.newColorDiv.innerHTML=\"new\";this.initialColorDiv=document.createElement(\"div\");this.initialColorDiv.className=\"vis-initial-color\";this.initialColorDiv.innerHTML=\"initial\";this.cancelButton=document.createElement(\"div\");this.cancelButton.className=\"vis-button vis-cancel\";this.cancelButton.innerHTML=\"cancel\";this.cancelButton.onclick=this._hide.bind(this,false);this.applyButton=document.createElement(\"div\");this.applyButton.className=\"vis-button vis-apply\";this.applyButton.innerHTML=\"apply\";this.applyButton.onclick=this._apply.bind(this);this.saveButton=document.createElement(\"div\");this.saveButton.className=\"vis-button vis-save\";this.saveButton.innerHTML=\"save\";this.saveButton.onclick=this._save.bind(this);this.loadButton=document.createElement(\"div\");this.loadButton.className=\"vis-button vis-load\";this.loadButton.innerHTML=\"load last\";this.loadButton.onclick=this._loadLast.bind(this)\n;this.frame.appendChild(this.colorPickerDiv);this.frame.appendChild(this.arrowDiv);this.frame.appendChild(this.brightnessLabel);this.frame.appendChild(this.brightnessDiv);this.frame.appendChild(this.opacityLabel);this.frame.appendChild(this.opacityDiv);this.frame.appendChild(this.newColorDiv);this.frame.appendChild(this.initialColorDiv);this.frame.appendChild(this.cancelButton);this.frame.appendChild(this.applyButton);this.frame.appendChild(this.saveButton);this.frame.appendChild(this.loadButton)}},{key:\"_bindHammer\",value:function _bindHammer(){var _this2=this;this.drag={};this.pinch={};this.hammer=new Hammer(this.colorPickerCanvas);this.hammer.get(\"pinch\").set({enable:true});hammerUtil.onTouch(this.hammer,function(event){_this2._moveSelector(event)});this.hammer.on(\"tap\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panstart\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panmove\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panend\",function(event){_this2._moveSelector(event)})}},{key:\"_generateHueCircle\",value:function _generateHueCircle(){if(this.generated===false){var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);var x=void 0,y=void 0,hue=void 0,sat=void 0;this.centerCoordinates={x:w*.5,y:h*.5};this.r=.49*w;var angleConvert=2*Math.PI/360;var hfac=1/360;var sfac=1/this.r;var rgb=void 0;for(hue=0;hue<360;hue++){for(sat=0;sat<this.r;sat++){x=this.centerCoordinates.x+sat*Math.sin(angleConvert*hue);y=this.centerCoordinates.y+sat*Math.cos(angleConvert*hue);rgb=util.HSVToRGB(hue*hfac,sat*sfac,1);ctx.fillStyle=\"rgb(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\")\";ctx.fillRect(x-.5,y-.5,2,2)}}ctx.strokeStyle=\"rgba(0,0,0,1)\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.stroke();this.hueCircle=ctx.getImageData(0,0,w,h)}this.generated=true}},{key:\"_moveSelector\",value:function _moveSelector(event){var rect=this.colorPickerDiv.getBoundingClientRect();var left=event.center.x-rect.left;var top=event.center.y-rect.top;var centerY=.5*this.colorPickerDiv.clientHeight;var centerX=.5*this.colorPickerDiv.clientWidth;var x=left-centerX;var y=top-centerY;var angle=Math.atan2(x,y);var radius=.98*Math.min(Math.sqrt(x*x+y*y),centerX);var newTop=Math.cos(angle)*radius+centerY;var newLeft=Math.sin(angle)*radius+centerX;this.colorPickerSelector.style.top=newTop-.5*this.colorPickerSelector.clientHeight+\"px\";this.colorPickerSelector.style.left=newLeft-.5*this.colorPickerSelector.clientWidth+\"px\";var h=angle/(2*Math.PI);h=h<0?h+1:h;var s=radius/this.r;var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.h=h;hsv.s=s;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}}]);return ColorPicker}();exports[\"default\"]=ColorPicker},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var LineGraph=__webpack_require__(106);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(113).allOptions;var configureOptions=__webpack_require__(113).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Graph2d(container,items,groups,options){if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Graph2d option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body);this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body);this.components.push(this.currentTime);this.linegraph=new LineGraph(this.body);this.components.push(this.linegraph);this.itemsData=null;this.groupsData=null;this.on(\"tap\",function(event){me.emit(\"click\",me.getEventProperties(event))});this.on(\"doubletap\",function(event){me.emit(\"doubleClick\",me.getEventProperties(event))});this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Graph2d.prototype=new Core;Graph2d.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options)};Graph2d.prototype.setItems=function(items){var initialLoad=this.itemsData==null;var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.linegraph&&this.linegraph.setItems(newDataSet);if(initialLoad){if(this.options.start!=undefined||this.options.end!=undefined){var start=this.options.start!=undefined?this.options.start:null;var end=this.options.end!=undefined?this.options.end:null;this.setWindow(start,end,{animation:false})}else{this.fit({animation:false})}}};Graph2d.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else if(groups instanceof DataSet||groups instanceof DataView){newDataSet=groups}else{newDataSet=new DataSet(groups)}this.groupsData=newDataSet;this.linegraph.setGroups(newDataSet)};Graph2d.prototype.getLegend=function(groupId,width,height){if(width===undefined){width=15}if(height===undefined){height=15}if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].getLegend(width,height)}else{return\"cannot find group:'\"+groupId+\"'\"}};Graph2d.prototype.isGroupVisible=function(groupId){if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].visible&&(this.linegraph.options.groups.visibility[groupId]===undefined||this.linegraph.options.groups.visibility[groupId]==true)}else{return false}};Graph2d.prototype.getDataRange=function(){var min=null;var max=null;for(var groupId in this.linegraph.groups){if(this.linegraph.groups.hasOwnProperty(groupId)){if(this.linegraph.groups[groupId].visible==true){for(var i=0;i<this.linegraph.groups[groupId].itemsData.length;i++){var item=this.linegraph.groups[groupId].itemsData[i];var value=util.convert(item.x,\"Date\").valueOf();min=min==null?value:min>value?value:min;max=max==null?value:max<value?value:max}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Graph2d.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x=clientX-util.getAbsoluteLeft(this.dom.centerContainer);var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var time=this._toTime(x);var customTime=CustomTime.customTimeFromTarget(event);var element=util.getTarget(event);var what=null;if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.linegraph.yAxisLeft.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.yAxisRight.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.legendLeft.dom.frame)){what=\"legend\"}else if(util.hasParent(element,this.linegraph.legendRight.dom.frame)){what=\"legend\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}var value=[];var yAxisLeft=this.linegraph.yAxisLeft;var yAxisRight=this.linegraph.yAxisRight;if(!yAxisLeft.hidden&&this.itemsData.length>0){value.push(yAxisLeft.screenToValue(y))}if(!yAxisRight.hidden&&this.itemsData.length>0){value.push(yAxisRight.screenToValue(y))}return{event:event,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,value:value}};Graph2d.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};module.exports=Graph2d},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Network=__webpack_require__(182);exports.network={Images:__webpack_require__(116),dotparser:__webpack_require__(114),gephiParser:__webpack_require__(115),allOptions:__webpack_require__(122)};exports.network.convertDot=function(input){return exports.network.dotparser.DOTToGraph(input)};exports.network.convertGephi=function(input,options){return exports.network.gephiParser.parseGephi(input,options)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";__webpack_require__(183);var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var dotparser=__webpack_require__(114);var gephiParser=__webpack_require__(115);var Activator=__webpack_require__(97);var locales=__webpack_require__(184);var Images=__webpack_require__(116)[\"default\"];var Groups=__webpack_require__(186)[\"default\"];var NodesHandler=__webpack_require__(187)[\"default\"];var EdgesHandler=__webpack_require__(214)[\"default\"];var PhysicsEngine=__webpack_require__(220)[\"default\"];var ClusterEngine=__webpack_require__(227)[\"default\"];var CanvasRenderer=__webpack_require__(229)[\"default\"];var Canvas=__webpack_require__(230)[\"default\"];var View=__webpack_require__(231)[\"default\"];var InteractionHandler=__webpack_require__(232)[\"default\"];var SelectionHandler=__webpack_require__(234)[\"default\"];var LayoutEngine=__webpack_require__(235)[\"default\"];var ManipulationSystem=__webpack_require__(237)[\"default\"];var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(122),allOptions=_require2.allOptions,configureOptions=_require2.configureOptions;var KamadaKawai=__webpack_require__(238)[\"default\"];function Network(container,data,options){var _this=this;if(!(this instanceof Network)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.options={};this.defaultOptions={locale:\"en\",locales:locales,clickToUse:false};util.extend(this.options,this.defaultOptions);this.body={container:container,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function onTap(){},onTouch:function onTouch(){},onDoubleTap:function onDoubleTap(){},onHold:function onHold(){},onDragStart:function onDragStart(){},onDrag:function onDrag(){},onDragEnd:function onDragEnd(){},onMouseWheel:function onMouseWheel(){},onPinch:function onPinch(){},onMouseMove:function onMouseMove(){},onRelease:function onRelease(){},onContext:function onContext(){}},data:{nodes:null,edges:null},functions:{createNode:function createNode(){},createEdge:function createEdge(){},getPointer:function getPointer(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}};this.bindEventListeners();this.images=new Images(function(){return _this.body.emitter.emit(\"_requestRedraw\")});this.groups=new Groups;this.canvas=new Canvas(this.body);this.selectionHandler=new SelectionHandler(this.body,this.canvas);this.interactionHandler=new InteractionHandler(this.body,this.canvas,this.selectionHandler);this.view=new View(this.body,this.canvas);this.renderer=new CanvasRenderer(this.body,this.canvas);this.physics=new PhysicsEngine(this.body);this.layoutEngine=new LayoutEngine(this.body);this.clustering=new ClusterEngine(this.body);this.manipulation=new ManipulationSystem(this.body,this.canvas,this.selectionHandler);this.nodesHandler=new NodesHandler(this.body,this.images,this.groups,this.layoutEngine);this.edgesHandler=new EdgesHandler(this.body,this.images,this.groups);this.body.modules[\"kamadaKawai\"]=new KamadaKawai(this.body,150,.05);this.body.modules[\"clustering\"]=this.clustering;this.canvas._create();this.setOptions(options);this.setData(data)}Emitter(Network.prototype);Network.prototype.setOptions=function(options){var _this2=this;if(options!==undefined){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}var fields=[\"locale\",\"locales\",\"clickToUse\"];util.selectiveDeepExtend(fields,this.options,options);options=this.layoutEngine.setOptions(options.layout,options);this.canvas.setOptions(options);this.groups.setOptions(options.groups);this.nodesHandler.setOptions(options.nodes);this.edgesHandler.setOptions(options.edges);this.physics.setOptions(options.physics);this.manipulation.setOptions(options.manipulation,options,this.options);this.interactionHandler.setOptions(options.interaction);this.renderer.setOptions(options.interaction);this.selectionHandler.setOptions(options.interaction);if(options.groups!==undefined){this.body.emitter.emit(\"refreshNodes\")}if(\"configure\"in options){if(!this.configurator){this.configurator=new Configurator(this,this.body.container,configureOptions,this.canvas.pixelRatio)}this.configurator.setOptions(options.configure)}if(this.configurator&&this.configurator.options.enabled===true){var networkOptions={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};util.deepExtend(networkOptions.nodes,this.nodesHandler.options);util.deepExtend(networkOptions.edges,this.edgesHandler.options);util.deepExtend(networkOptions.layout,this.layoutEngine.options);util.deepExtend(networkOptions.interaction,this.selectionHandler.options);util.deepExtend(networkOptions.interaction,this.renderer.options);util.deepExtend(networkOptions.interaction,this.interactionHandler.options);util.deepExtend(networkOptions.manipulation,this.manipulation.options);util.deepExtend(networkOptions.physics,this.physics.options);util.deepExtend(networkOptions.global,this.canvas.options);util.deepExtend(networkOptions.global,this.options);this.configurator.setModuleOptions(networkOptions)}if(options.clickToUse!==undefined){if(options.clickToUse===true){if(this.activator===undefined){this.activator=new Activator(this.canvas.frame);this.activator.on(\"change\",function(){_this2.body.emitter.emit(\"activate\")})}}else{if(this.activator!==undefined){this.activator.destroy();delete this.activator}this.body.emitter.emit(\"activate\")}}else{this.body.emitter.emit(\"activate\")}this.canvas.setSize();this.body.emitter.emit(\"startSimulation\")}};Network.prototype._updateVisibleIndices=function(){var nodes=this.body.nodes;var edges=this.body.edges;this.body.nodeIndices=[];this.body.edgeIndices=[];for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(!this.clustering._isClusteredNode(nodeId)&&nodes[nodeId].options.hidden===false){this.body.nodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){var edge=edges[edgeId];var fromNode=nodes[edge.fromId];var toNode=nodes[edge.toId];var edgeNodesPresent=fromNode!==undefined&&toNode!==undefined;var isVisible=!this.clustering._isClusteredEdge(edgeId)&&edge.options.hidden===false&&edgeNodesPresent&&fromNode.options.hidden===false&&toNode.options.hidden===false;if(isVisible){this.body.edgeIndices.push(edge.id)}}}};Network.prototype.bindEventListeners=function(){var _this3=this;this.body.emitter.on(\"_dataChanged\",function(){_this3.edgesHandler._updateState();_this3.body.emitter.emit(\"_dataUpdated\")});this.body.emitter.on(\"_dataUpdated\",function(){_this3.clustering._updateState();_this3._updateVisibleIndices();_this3._updateValueRange(_this3.body.nodes);_this3._updateValueRange(_this3.body.edges);_this3.body.emitter.emit(\"startSimulation\");_this3.body.emitter.emit(\"_requestRedraw\")})};Network.prototype.setData=function(data){this.body.emitter.emit(\"resetPhysics\");this.body.emitter.emit(\"_resetData\");this.selectionHandler.unselectAll();if(data&&data.dot&&(data.nodes||data.edges)){throw new SyntaxError('Data must contain either parameter \"dot\" or '+' parameter pair \"nodes\" and \"edges\", but not both.')}this.setOptions(data&&data.options);if(data&&data.dot){console.log(\"The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);\");var dotData=dotparser.DOTToGraph(data.dot);this.setData(dotData);return}else if(data&&data.gephi){console.log(\"The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);\");var gephiData=gephiParser.parseGephi(data.gephi);this.setData(gephiData);return}else{this.nodesHandler.setData(data&&data.nodes,true);this.edgesHandler.setData(data&&data.edges,true)}this.body.emitter.emit(\"_dataChanged\");this.body.emitter.emit(\"_dataLoaded\");this.body.emitter.emit(\"initPhysics\")};Network.prototype.destroy=function(){this.body.emitter.emit(\"destroy\");this.body.emitter.off();this.off();delete this.groups;delete this.canvas;delete this.selectionHandler;delete this.interactionHandler;delete this.view;delete this.renderer;delete this.physics;delete this.layoutEngine;delete this.clustering;delete this.manipulation;delete this.nodesHandler;delete this.edgesHandler;delete this.configurator;delete this.images;for(var nodeId in this.body.nodes){if(!this.body.nodes.hasOwnProperty(nodeId))continue;delete this.body.nodes[nodeId]}for(var edgeId in this.body.edges){if(!this.body.edges.hasOwnProperty(edgeId))continue;delete this.body.edges[edgeId]}util.recursiveDOMDelete(this.body.container)};Network.prototype._updateValueRange=function(obj){var id;var valueMin=undefined;var valueMax=undefined;var valueTotal=0;for(id in obj){if(obj.hasOwnProperty(id)){var value=obj[id].getValue();if(value!==undefined){valueMin=valueMin===undefined?value:Math.min(value,valueMin);valueMax=valueMax===undefined?value:Math.max(value,valueMax);valueTotal+=value}}}if(valueMin!==undefined&&valueMax!==undefined){for(id in obj){if(obj.hasOwnProperty(id)){obj[id].setValueRange(valueMin,valueMax,valueTotal)}}}};Network.prototype.isActive=function(){return!this.activator||this.activator.active};Network.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};Network.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};Network.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};Network.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};Network.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};Network.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};Network.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};Network.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};Network.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};Network.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};Network.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};Network.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};Network.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};Network.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};Network.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};Network.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.editNodeMode=function(){console.log(\"Deprecated: Please use editNode instead of editNodeMode.\");return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};Network.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};Network.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};Network.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};Network.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};Network.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};Network.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};Network.prototype.getConnectedNodes=function(objectId){if(this.body.nodes[objectId]!==undefined){return this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments)}else{return this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)}};Network.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};Network.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};Network.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};Network.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};Network.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};Network.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)};Network.prototype.getNodeAt=function(){var node=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);if(node!==undefined&&node.id!==undefined){return node.id}return node};Network.prototype.getEdgeAt=function(){var edge=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);if(edge!==undefined&&edge.id!==undefined){return edge.id}return edge};Network.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};Network.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};Network.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments);this.redraw()};Network.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};Network.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};Network.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};Network.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};Network.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};Network.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};Network.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};Network.prototype.getOptionsFromConfigurator=function(){var options={};if(this.configurator){options=this.configurator.getOptions.apply(this.configurator)}return options};module.exports=Network},function(module,exports,__webpack_require__){\"use strict\";if(typeof CanvasRenderingContext2D!==\"undefined\"){CanvasRenderingContext2D.prototype.circle=function(x,y,r){this.beginPath();this.arc(x,y,r,0,2*Math.PI,false);this.closePath()};CanvasRenderingContext2D.prototype.square=function(x,y,r){this.beginPath();this.rect(x-r,y-r,r*2,r*2);this.closePath()};CanvasRenderingContext2D.prototype.triangle=function(x,y,r){this.beginPath();r*=1.15;y+=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y-(h-ir));this.lineTo(x+s2,y+ir);this.lineTo(x-s2,y+ir);this.lineTo(x,y-(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.triangleDown=function(x,y,r){this.beginPath();r*=1.15;y-=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y+(h-ir));this.lineTo(x+s2,y-ir);this.lineTo(x-s2,y-ir);this.lineTo(x,y+(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.star=function(x,y,r){this.beginPath();r*=.82;y+=.1*r;for(var n=0;n<10;n++){var radius=n%2===0?r*1.3:r*.5;this.lineTo(x+radius*Math.sin(n*2*Math.PI/10),y-radius*Math.cos(n*2*Math.PI/10))}this.closePath()};CanvasRenderingContext2D.prototype.diamond=function(x,y,r){this.beginPath();this.lineTo(x,y+r);this.lineTo(x+r,y);this.lineTo(x,y-r);this.lineTo(x-r,y);this.closePath()};CanvasRenderingContext2D.prototype.roundRect=function(x,y,w,h,r){var r2d=Math.PI/180;if(w-2*r<0){r=w/2}if(h-2*r<0){r=h/2}this.beginPath();this.moveTo(x+r,y);this.lineTo(x+w-r,y);this.arc(x+w-r,y+r,r,r2d*270,r2d*360,false);this.lineTo(x+w,y+h-r);this.arc(x+w-r,y+h-r,r,0,r2d*90,false);this.lineTo(x+r,y+h);this.arc(x+r,y+h-r,r,r2d*90,r2d*180,false);this.lineTo(x,y+r);this.arc(x+r,y+r,r,r2d*180,r2d*270,false);this.closePath()};CanvasRenderingContext2D.prototype.ellipse_vis=function(x,y,w,h){var kappa=.5522848,ox=w/2*kappa,oy=h/2*kappa,xe=x+w,ye=y+h,xm=x+w/2,ym=y+h/2;this.beginPath();this.moveTo(x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.closePath()};CanvasRenderingContext2D.prototype.database=function(x,y,w,h){var f=1/3;var wEllipse=w;var hEllipse=h*f;var kappa=.5522848,ox=wEllipse/2*kappa,oy=hEllipse/2*kappa,xe=x+wEllipse,ye=y+hEllipse,xm=x+wEllipse/2,ym=y+hEllipse/2,ymb=y+(h-hEllipse/2),yeb=y+h;this.beginPath();this.moveTo(xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.lineTo(xe,ymb);this.bezierCurveTo(xe,ymb+oy,xm+ox,yeb,xm,yeb);this.bezierCurveTo(xm-ox,yeb,x,ymb+oy,x,ymb);this.lineTo(x,ym)};CanvasRenderingContext2D.prototype.dashedLine=function(x,y,x2,y2,pattern){this.beginPath();this.moveTo(x,y);var patternLength=pattern.length;var dx=x2-x;var dy=y2-y;var slope=dy/dx;var distRemaining=Math.sqrt(dx*dx+dy*dy);var patternIndex=0;var draw=true;var xStep=0;var dashLength=pattern[0];while(distRemaining>=.1){dashLength=pattern[patternIndex++%patternLength];if(dashLength>distRemaining){dashLength=distRemaining}xStep=Math.sqrt(dashLength*dashLength/(1+slope*slope));xStep=dx<0?-xStep:xStep;x+=xStep;y+=slope*xStep;if(draw===true){this.lineTo(x,y)}else{this.moveTo(x,y)}distRemaining-=dashLength;draw=!draw}};CanvasRenderingContext2D.prototype.hexagon=function(x,y,r){this.beginPath();var sides=6;var a=Math.PI*2/sides;this.moveTo(x+r,y);for(var i=1;i<sides;i++){this.lineTo(x+r*Math.cos(a*i),y+r*Math.sin(a*i))}this.closePath()}}},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={edit:\"Edit\",del:\"Delete selected\",back:\"Back\",addNode:\"Add Node\",addEdge:\"Add Edge\",editNode:\"Edit Node\",editEdge:\"Edit Edge\",addDescription:\"Click in an empty space to place a new node.\",edgeDescription:\"Click on a node and drag the edge to another node to connect them.\",editEdgeDescription:\"Click on the control points and drag them to a node to connect to it.\",createEdgeError:\"Cannot link edges to a cluster.\",deleteClusterError:\"Clusters cannot be deleted.\",editClusterError:\"Clusters cannot be edited.\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"de\"]={edit:\"Editieren\",del:\"Lösche Auswahl\",back:\"Zurück\",addNode:\"Knoten hinzufügen\",addEdge:\"Kante hinzufügen\",editNode:\"Knoten editieren\",editEdge:\"Kante editieren\",addDescription:\"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.\",edgeDescription:\"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.\",editEdgeDescription:\"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.\",createEdgeError:\"Es ist nicht möglich, Kanten mit Clustern zu verbinden.\",deleteClusterError:\"Cluster können nicht gelöscht werden.\",editClusterError:\"Cluster können nicht editiert werden.\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"es\"]={edit:\"Editar\",del:\"Eliminar selección\",back:\"Átras\",addNode:\"Añadir nodo\",addEdge:\"Añadir arista\",editNode:\"Editar nodo\",editEdge:\"Editar arista\",addDescription:\"Haga clic en un lugar vacío para colocar un nuevo nodo.\",edgeDescription:\"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.\",editEdgeDescription:\"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.\",createEdgeError:\"No se puede conectar una arista a un grupo.\",deleteClusterError:\"No es posible eliminar grupos.\",editClusterError:\"No es posible editar grupos.\"};exports[\"es_ES\"]=exports[\"es\"];exports[\"it\"]={edit:\"Modifica\",del:\"Cancella la selezione\",back:\"Indietro\",addNode:\"Aggiungi un nodo\",addEdge:\"Aggiungi un vertice\",editNode:\"Modifica il nodo\",editEdge:\"Modifica il vertice\",addDescription:\"Clicca per aggiungere un nuovo nodo\",edgeDescription:\"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.\",editEdgeDescription:\"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.\",createEdgeError:\"Non si possono collegare vertici ad un cluster\",deleteClusterError:\"I cluster non possono essere cancellati\",editClusterError:\"I clusters non possono essere modificati.\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"nl\"]={edit:\"Wijzigen\",del:\"Selectie verwijderen\",\nback:\"Terug\",addNode:\"Node toevoegen\",addEdge:\"Link toevoegen\",editNode:\"Node wijzigen\",editEdge:\"Link wijzigen\",addDescription:\"Klik op een leeg gebied om een nieuwe node te maken.\",edgeDescription:\"Klik op een node en sleep de link naar een andere node om ze te verbinden.\",editEdgeDescription:\"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.\",createEdgeError:\"Kan geen link maken naar een cluster.\",deleteClusterError:\"Clusters kunnen niet worden verwijderd.\",editClusterError:\"Clusters kunnen niet worden aangepast.\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"pt-br\"]={edit:\"Editar\",del:\"Remover selecionado\",back:\"Voltar\",addNode:\"Adicionar nó\",addEdge:\"Adicionar aresta\",editNode:\"Editar nó\",editEdge:\"Editar aresta\",addDescription:\"Clique em um espaço em branco para adicionar um novo nó\",edgeDescription:\"Clique em um nó e arraste a aresta até outro nó para conectá-los\",editEdgeDescription:\"Clique nos pontos de controle e os arraste para um nó para conectá-los\",createEdgeError:\"Não foi possível linkar arestas a um cluster.\",deleteClusterError:\"Clusters não puderam ser removidos.\",editClusterError:\"Clusters não puderam ser editados.\"};exports[\"pt-BR\"]=exports[\"pt-br\"];exports[\"pt_BR\"]=exports[\"pt-br\"];exports[\"pt_br\"]=exports[\"pt-br\"];exports[\"ru\"]={edit:\"Редактировать\",del:\"Удалить выбранное\",back:\"Назад\",addNode:\"Добавить узел\",addEdge:\"Добавить ребро\",editNode:\"Редактировать узел\",editEdge:\"Редактировать ребро\",addDescription:\"Кликните в свободное место, чтобы добавить новый узел.\",edgeDescription:\"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.\",editEdgeDescription:\"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.\",createEdgeError:\"Невозможно соединить ребра в кластер.\",deleteClusterError:\"Кластеры не могут быть удалены\",editClusterError:\"Кластеры недоступны для редактирования.\"};exports[\"ru_RU\"]=exports[\"ru\"];exports[\"cn\"]={edit:\"编辑\",del:\"删除选定\",back:\"返回\",addNode:\"添加节点\",addEdge:\"添加连接线\",editNode:\"编辑节点\",editEdge:\"编辑连接线\",addDescription:\"单击空白处放置新节点。\",edgeDescription:\"单击某个节点并将该连接线拖动到另一个节点以连接它们。\",editEdgeDescription:\"单击控制节点并将它们拖到节点上连接。\",createEdgeError:\"无法将连接线连接到群集。\",deleteClusterError:\"无法删除群集。\",editClusterError:\"无法编辑群集。\"};exports[\"zh_CN\"]=exports[\"cn\"]},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CachedImage=function(){function CachedImage(){(0,_classCallCheck3[\"default\"])(this,CachedImage);this.NUM_ITERATIONS=4;this.image=new Image;this.canvas=document.createElement(\"canvas\")}(0,_createClass3[\"default\"])(CachedImage,[{key:\"init\",value:function init(){if(this.initialized())return;this.src=this.image.src;var w=this.image.width;var h=this.image.height;this.width=w;this.height=h;var h2=Math.floor(h/2);var h4=Math.floor(h/4);var h8=Math.floor(h/8);var h16=Math.floor(h/16);var w2=Math.floor(w/2);var w4=Math.floor(w/4);var w8=Math.floor(w/8);var w16=Math.floor(w/16);this.canvas.width=3*w4;this.canvas.height=h2;this.coordinates=[[0,0,w2,h2],[w2,0,w4,h4],[w2,h4,w8,h8],[5*w8,h4,w16,h16]];this._fillMipMap()}},{key:\"initialized\",value:function initialized(){return this.coordinates!==undefined}},{key:\"_fillMipMap\",value:function _fillMipMap(){var ctx=this.canvas.getContext(\"2d\");var to=this.coordinates[0];ctx.drawImage(this.image,to[0],to[1],to[2],to[3]);for(var iterations=1;iterations<this.NUM_ITERATIONS;iterations++){var from=this.coordinates[iterations-1];var _to=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],_to[0],_to[1],_to[2],_to[3])}}},{key:\"drawImageAtPosition\",value:function drawImageAtPosition(ctx,factor,left,top,width,height){if(!this.initialized())return;if(factor>2){factor*=.5;var iterations=0;while(factor>2&&iterations<this.NUM_ITERATIONS){factor*=.5;iterations+=1}if(iterations>=this.NUM_ITERATIONS){iterations=this.NUM_ITERATIONS-1}var from=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],left,top,width,height)}else{ctx.drawImage(this.image,left,top,width,height)}}}]);return CachedImage}();exports[\"default\"]=CachedImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Groups=function(){function Groups(){(0,_classCallCheck3[\"default\"])(this,Groups);this.clear();this.defaultIndex=0;this.groupsArray=[];this.groupIndex=0;this.defaultGroups=[{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},{border:\"#FFA500\",background:\"#FFFF00\",highlight:{border:\"#FFA500\",background:\"#FFFFA3\"},hover:{border:\"#FFA500\",background:\"#FFFFA3\"}},{border:\"#FA0A10\",background:\"#FB7E81\",highlight:{border:\"#FA0A10\",background:\"#FFAFB1\"},hover:{border:\"#FA0A10\",background:\"#FFAFB1\"}},{border:\"#41A906\",background:\"#7BE141\",highlight:{border:\"#41A906\",background:\"#A1EC76\"},hover:{border:\"#41A906\",background:\"#A1EC76\"}},{border:\"#E129F0\",background:\"#EB7DF4\",highlight:{border:\"#E129F0\",background:\"#F0B3F5\"},hover:{border:\"#E129F0\",background:\"#F0B3F5\"}},{border:\"#7C29F0\",background:\"#AD85E4\",highlight:{border:\"#7C29F0\",background:\"#D3BDF0\"},hover:{border:\"#7C29F0\",background:\"#D3BDF0\"}},{border:\"#C37F00\",background:\"#FFA807\",highlight:{border:\"#C37F00\",background:\"#FFCA66\"},hover:{border:\"#C37F00\",background:\"#FFCA66\"}},{border:\"#4220FB\",background:\"#6E6EFD\",highlight:{border:\"#4220FB\",background:\"#9B9BFD\"},hover:{border:\"#4220FB\",background:\"#9B9BFD\"}},{border:\"#FD5A77\",background:\"#FFC0CB\",highlight:{border:\"#FD5A77\",background:\"#FFD1D9\"},hover:{border:\"#FD5A77\",background:\"#FFD1D9\"}},{border:\"#4AD63A\",background:\"#C2FABC\",highlight:{border:\"#4AD63A\",background:\"#E6FFE3\"},hover:{border:\"#4AD63A\",background:\"#E6FFE3\"}},{border:\"#990000\",background:\"#EE0000\",highlight:{border:\"#BB0000\",background:\"#FF3333\"},hover:{border:\"#BB0000\",background:\"#FF3333\"}},{border:\"#FF6000\",background:\"#FF6000\",highlight:{border:\"#FF6000\",background:\"#FF6000\"},hover:{border:\"#FF6000\",background:\"#FF6000\"}},{border:\"#97C2FC\",background:\"#2B7CE9\",highlight:{border:\"#D2E5FF\",background:\"#2B7CE9\"},hover:{border:\"#D2E5FF\",background:\"#2B7CE9\"}},{border:\"#399605\",background:\"#255C03\",highlight:{border:\"#399605\",background:\"#255C03\"},hover:{border:\"#399605\",background:\"#255C03\"}},{border:\"#B70054\",background:\"#FF007E\",highlight:{border:\"#B70054\",background:\"#FF007E\"},hover:{border:\"#B70054\",background:\"#FF007E\"}},{border:\"#AD85E4\",background:\"#7C29F0\",highlight:{border:\"#D3BDF0\",background:\"#7C29F0\"},hover:{border:\"#D3BDF0\",background:\"#7C29F0\"}},{border:\"#4557FA\",background:\"#000EA1\",highlight:{border:\"#6E6EFD\",background:\"#000EA1\"},hover:{border:\"#6E6EFD\",background:\"#000EA1\"}},{border:\"#FFC0CB\",background:\"#FD5A77\",highlight:{border:\"#FFD1D9\",background:\"#FD5A77\"},hover:{border:\"#FFD1D9\",background:\"#FD5A77\"}},{border:\"#C2FABC\",background:\"#74D66A\",highlight:{border:\"#E6FFE3\",background:\"#74D66A\"},hover:{border:\"#E6FFE3\",background:\"#74D66A\"}},{border:\"#EE0000\",background:\"#990000\",highlight:{border:\"#FF3333\",background:\"#BB0000\"},hover:{border:\"#FF3333\",background:\"#BB0000\"}}];this.options={};this.defaultOptions={useDefaultGroups:true};util.extend(this.options,this.defaultOptions)}(0,_createClass3[\"default\"])(Groups,[{key:\"setOptions\",value:function setOptions(options){var optionFields=[\"useDefaultGroups\"];if(options!==undefined){for(var groupName in options){if(options.hasOwnProperty(groupName)){if(optionFields.indexOf(groupName)===-1){var group=options[groupName];this.add(groupName,group)}}}}}},{key:\"clear\",value:function clear(){this.groups={};this.groupsArray=[]}},{key:\"get\",value:function get(groupname){var shouldCreate=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var group=this.groups[groupname];if(group===undefined&&shouldCreate){if(this.options.useDefaultGroups===false&&this.groupsArray.length>0){var index=this.groupIndex%this.groupsArray.length;this.groupIndex++;group={};group.color=this.groups[this.groupsArray[index]];this.groups[groupname]=group}else{var _index=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++;group={};group.color=this.defaultGroups[_index];this.groups[groupname]=group}}return group}},{key:\"add\",value:function add(groupName,style){this.groups[groupName]=style;this.groupsArray.push(groupName);return style}}]);return Groups}();exports[\"default\"]=Groups},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Node=__webpack_require__(47)[\"default\"];var NodesHandler=function(){function NodesHandler(body,images,groups,layoutEngine){var _this=this;(0,_classCallCheck3[\"default\"])(this,NodesHandler);this.body=body;this.images=images;this.groups=groups;this.layoutEngine=layoutEngine;this.body.functions.createNode=this.create.bind(this);this.nodesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items,params.data,params.oldData)},remove:function remove(event,params){_this.remove(params.items)}};this.defaultOptions={borderWidth:1,borderWidthSelected:2,brokenImage:undefined,color:{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},fixed:{x:false,y:false},font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:0,strokeColor:\"#ffffff\",align:\"center\",vadjust:0,multi:false,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"monospace\",vadjust:2}},group:undefined,hidden:false,icon:{face:\"FontAwesome\",code:undefined,size:50,color:\"#2B7CE9\"},image:undefined,label:undefined,labelHighlightBold:true,level:undefined,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:true,scaling:{min:10,max:30,label:{enabled:false,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},shape:\"ellipse\",shapeProperties:{borderDashes:false,borderRadius:6,interpolation:true,useImageSize:false,useBorderWithImage:false},size:25,title:undefined,value:undefined,x:undefined,y:undefined};if(this.defaultOptions.mass<=0){throw\"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative\"}this.options=util.bridgeObject(this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(NodesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"refreshNodes\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.nodesListeners,function(callback,event){if(_this2.body.data.nodes)_this2.body.data.nodes.off(event,callback)});delete _this2.body.functions.createNode;delete _this2.nodesListeners.add;delete _this2.nodesListeners.update;delete _this2.nodesListeners.remove;delete _this2.nodesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Node.parseOptions(this.options,options);if(options.shape!==undefined){for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){this.body.nodes[nodeId].updateShape()}}}if(options.font!==undefined){for(var _nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId)){this.body.nodes[_nodeId].updateLabelModule();this.body.nodes[_nodeId].needsRefresh()}}}if(options.size!==undefined){for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.body.nodes[_nodeId2].needsRefresh()}}}if(options.hidden!==undefined||options.physics!==undefined){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(nodes){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldNodesData=this.body.data.nodes;if(nodes instanceof DataSet||nodes instanceof DataView){this.body.data.nodes=nodes}else if(Array.isArray(nodes)){this.body.data.nodes=new DataSet;this.body.data.nodes.add(nodes)}else if(!nodes){this.body.data.nodes=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldNodesData){util.forEach(this.nodesListeners,function(callback,event){oldNodesData.off(event,callback)})}this.body.nodes={};if(this.body.data.nodes){var me=this;util.forEach(this.nodesListeners,function(callback,event){me.body.data.nodes.on(event,callback)});var ids=this.body.data.nodes.getIds();this.add(ids,true)}if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var id=void 0;var newNodes=[];for(var i=0;i<ids.length;i++){id=ids[i];var properties=this.body.data.nodes.get(id);var node=this.create(properties);newNodes.push(node);this.body.nodes[id]=node}this.layoutEngine.positionInitially(newNodes);if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids,changedData,oldData){var nodes=this.body.nodes;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var node=nodes[id];var data=changedData[i];if(node!==undefined){if(node.setOptions(data)){dataChanged=true}}else{dataChanged=true;node=this.create(data);nodes[id]=node}}if(!dataChanged&&oldData!==undefined){dataChanged=changedData.some(function(newValue,index){var oldValue=oldData[index];return oldValue&&oldValue.level!==newValue.level})}if(dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var nodes=this.body.nodes;for(var i=0;i<ids.length;i++){var id=ids[i];delete nodes[id]}this.body.emitter.emit(\"_dataChanged\")}},{key:\"create\",value:function create(properties){var constructorClass=arguments.length>1&&arguments[1]!==undefined?arguments[1]:Node;return new constructorClass(properties,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:\"refresh\",value:function refresh(){var _this3=this;var clearPositions=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;util.forEach(this.body.nodes,function(node,nodeId){var data=_this3.body.data.nodes.get(nodeId);if(data!==undefined){if(clearPositions===true){node.setOptions({x:null,y:null})}node.setOptions({fixed:false});node.setOptions(data)}})}},{key:\"getPositions\",value:function getPositions(ids){var dataArray={};if(ids!==undefined){if(Array.isArray(ids)===true){for(var i=0;i<ids.length;i++){if(this.body.nodes[ids[i]]!==undefined){var node=this.body.nodes[ids[i]];dataArray[ids[i]]={x:Math.round(node.x),y:Math.round(node.y)}}}}else{if(this.body.nodes[ids]!==undefined){var _node=this.body.nodes[ids];dataArray[ids]={x:Math.round(_node.x),y:Math.round(_node.y)}}}}else{for(var _i=0;_i<this.body.nodeIndices.length;_i++){var _node2=this.body.nodes[this.body.nodeIndices[_i]];dataArray[this.body.nodeIndices[_i]]={x:Math.round(_node2.x),y:Math.round(_node2.y)}}}return dataArray}},{key:\"storePositions\",value:function storePositions(){var dataArray=[];var dataset=this.body.data.nodes.getDataSet();for(var nodeId in dataset._data){if(dataset._data.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(dataset._data[nodeId].x!=Math.round(node.x)||dataset._data[nodeId].y!=Math.round(node.y)){dataArray.push({id:node.id,x:Math.round(node.x),y:Math.round(node.y)})}}}dataset.update(dataArray)}},{key:\"getBoundingBox\",value:function getBoundingBox(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].shape.boundingBox}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(nodeId,direction){var nodeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];var nodeObj={};for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(direction!==\"to\"&&edge.toId==node.id){if(nodeObj[edge.fromId]===undefined){nodeList.push(edge.fromId);nodeObj[edge.fromId]=true}}else if(direction!==\"from\"&&edge.fromId==node.id){if(nodeObj[edge.toId]===undefined){nodeList.push(edge.toId);nodeObj[edge.toId]=true}}}}return nodeList}},{key:\"getConnectedEdges\",value:function getConnectedEdges(nodeId){var edgeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];for(var i=0;i<node.edges.length;i++){edgeList.push(node.edges[i].id)}}else{console.log(\"NodeId provided for getConnectedEdges does not exist. Provided: \",nodeId)}return edgeList}},{key:\"moveNode\",value:function moveNode(nodeId,x,y){var _this4=this;if(this.body.nodes[nodeId]!==undefined){this.body.nodes[nodeId].x=Number(x);this.body.nodes[nodeId].y=Number(y);setTimeout(function(){_this4.body.emitter.emit(\"startSimulation\")},0)}else{console.log(\"Node id supplied to moveNode does not exist. Provided: \",nodeId)}}}]);return NodesHandler}();exports[\"default\"]=NodesHandler},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(189),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(190)},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).isIterable=function(it){var O=Object(it);return O[ITERATOR]!==undefined||\"@@iterator\"in O||Iterators.hasOwnProperty(classof(O))}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=__webpack_require__(192)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=function(){function LabelSplitter(ctx,parent,selected,hover){var _this=this;(0,_classCallCheck3[\"default\"])(this,LabelSplitter);this.ctx=ctx;this.parent=parent;var textWidth=function textWidth(text,mod){if(text===undefined)return 0;var values=_this.parent.getFormattingValues(ctx,selected,hover,mod);var width=0;if(text!==\"\"){var measure=_this.ctx.measureText(text);width=measure.width}return{width:width,values:values}};this.lines=new LabelAccumulator(textWidth)}(0,_createClass3[\"default\"])(LabelSplitter,[{key:\"process\",value:function process(text){if(!ComponentUtil.isValidLabel(text)){return this.lines.finalize()}var font=this.parent.fontOptions;text=text.replace(/\\r\\n/g,\"\\n\");text=text.replace(/\\r/g,\"\\n\");var nlLines=String(text).split(\"\\n\");var lineCount=nlLines.length;if(font.multi){for(var i=0;i<lineCount;i++){var blocks=this.splitBlocks(nlLines[i],font.multi);if(blocks===undefined)continue;if(blocks.length===0){this.lines.newLine(\"\");continue}if(font.maxWdt>0){for(var j=0;j<blocks.length;j++){var mod=blocks[j].mod;var _text=blocks[j].text;this.splitStringIntoLines(_text,mod,true)}}else{for(var _j=0;_j<blocks.length;_j++){var _mod=blocks[_j].mod;var _text2=blocks[_j].text;this.lines.append(_text2,_mod)}}this.lines.newLine()}}else{if(font.maxWdt>0){for(var _i=0;_i<lineCount;_i++){this.splitStringIntoLines(nlLines[_i])}}else{for(var _i2=0;_i2<lineCount;_i2++){this.lines.newLine(nlLines[_i2])}}}return this.lines.finalize()}},{key:\"decodeMarkupSystem\",value:function decodeMarkupSystem(markupSystem){var system=\"none\";if(markupSystem===\"markdown\"||markupSystem===\"md\"){system=\"markdown\"}else if(markupSystem===true||markupSystem===\"html\"){system=\"html\"}return system}},{key:\"splitHtmlBlocks\",value:function splitHtmlBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}}else if(/</.test(ch)){if(!s.mono&&!s.bold&&/<b>/.test(text.substr(s.position,3))){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\");s.position+=2}else if(!s.mono&&!s.ital&&/<i>/.test(text.substr(s.position,3))){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\");s.position+=2}else if(!s.mono&&/<code>/.test(text.substr(s.position,6))){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\");s.position+=5}else if(!s.mono&&s.mod()===\"bold\"&&/<\\/b>/.test(text.substr(s.position,4))){s.emitBlock();s.bold=false;s.modStack.shift();s.position+=3}else if(!s.mono&&s.mod()===\"ital\"&&/<\\/i>/.test(text.substr(s.position,4))){s.emitBlock();s.ital=false;s.modStack.shift();s.position+=3}else if(s.mod()===\"mono\"&&/<\\/code>/.test(text.substr(s.position,7))){s.emitBlock();s.mono=false;s.modStack.shift();s.position+=6}else{s.add(ch)}}else if(/&/.test(ch)){if(/</.test(text.substr(s.position,4))){s.add(\"<\");s.position+=3}else if(/&/.test(text.substr(s.position,5))){s.add(\"&\");s.position+=4}else{s.add(\"&\")}}else{s.add(ch)}s.position++}s.emitBlock();return blocks}},{key:\"splitMarkdownBlocks\",value:function splitMarkdownBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,beginable:true,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}s.beginable=true}else if(/\\\\/.test(ch)){if(s.position<text.length+1){s.position++;ch=text.charAt(s.position);if(/ \\t/.test(ch)){s.spacing=true}else{s.add(ch);s.beginable=false}}}else if(!s.mono&&!s.bold&&(s.beginable||s.spacing)&&/\\*/.test(ch)){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\")}else if(!s.mono&&!s.ital&&(s.beginable||s.spacing)&&/\\_/.test(ch)){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\")}else if(!s.mono&&(s.beginable||s.spacing)&&/`/.test(ch)){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\")}else if(!s.mono&&s.mod()===\"bold\"&&/\\*/.test(ch)){if(s.position===text.length-1||/[.,_` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.bold=false;s.modStack.shift()}else{s.add(ch)}}else if(!s.mono&&s.mod()===\"ital\"&&/\\_/.test(ch)){if(s.position===text.length-1||/[.,*` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.ital=false;s.modStack.shift()}else{s.add(ch)}}else if(s.mono&&s.mod()===\"mono\"&&/`/.test(ch)){if(s.position===text.length-1||/[.,*_ \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.mono=false;s.modStack.shift()}else{s.add(ch)}}else{s.add(ch);s.beginable=false}s.position++}s.emitBlock();return blocks}},{key:\"splitBlocks\",value:function splitBlocks(text,markupSystem){var system=this.decodeMarkupSystem(markupSystem);if(system===\"none\"){return[{text:text,mod:\"normal\"}]}else if(system===\"markdown\"){return this.splitMarkdownBlocks(text)}else if(system===\"html\"){return this.splitHtmlBlocks(text)}}},{key:\"overMaxWidth\",value:function overMaxWidth(text){var width=this.ctx.measureText(text).width;return this.lines.curWidth()+width>this.parent.fontOptions.maxWdt}},{key:\"getLongestFit\",value:function getLongestFit(words){var text=\"\";var w=0;while(w<words.length){var pre=text===\"\"?\"\":\" \";var newText=text+pre+words[w];if(this.overMaxWidth(newText))break;text=newText;w++}return w}},{key:\"getLongestFitWord\",value:function getLongestFitWord(words){var w=0;while(w<words.length){if(this.overMaxWidth(words.slice(0,w)))break;w++}return w}},{key:\"splitStringIntoLines\",value:function splitStringIntoLines(str){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";var appendLast=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;str=str.replace(/^( +)/g,\"$1\\r\");str=str.replace(/([^\\r][^ ]*)( +)/g,\"$1\\r$2\\r\");var words=str.split(\"\\r\");while(words.length>0){var w=this.getLongestFit(words);if(w===0){var word=words[0];var x=this.getLongestFitWord(word);this.lines.newLine(word.slice(0,x),mod);words[0]=word.slice(x)}else{var newW=w;if(words[w-1]===\" \"){w--}else if(words[newW]===\" \"){newW++}var text=words.slice(0,w).join(\"\");if(w==words.length&&appendLast){this.lines.append(text,mod)}else{this.lines.newLine(text,mod)}words=words.slice(newW)}}}}]);return LabelSplitter}();exports[\"default\"]=LabelSplitter},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=function(){function LabelAccumulator(measureText){(0,_classCallCheck3[\"default\"])(this,LabelAccumulator);this.measureText=measureText;this.current=0;this.width=0;this.height=0;this.lines=[]}(0,_createClass3[\"default\"])(LabelAccumulator,[{key:\"_add\",value:function _add(l,text){var mod=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"normal\";if(this.lines[l]===undefined){this.lines[l]={width:0,height:0,blocks:[]}}var tmpText=text;if(text===undefined||text===\"\")tmpText=\" \";var result=this.measureText(tmpText,mod);var block=(0,_assign2[\"default\"])({},result.values);block.text=text;block.width=result.width;block.mod=mod;if(text===undefined||text===\"\"){block.width=0}this.lines[l].blocks.push(block);this.lines[l].width+=block.width}},{key:\"curWidth\",value:function curWidth(){var line=this.lines[this.current];if(line===undefined)return 0;return line.width}},{key:\"append\",value:function append(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod)}},{key:\"newLine\",value:function newLine(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod);this.current++}},{key:\"determineLineHeights\",value:function determineLineHeights(){for(var k=0;k<this.lines.length;k++){var line=this.lines[k];var height=0;if(line.blocks!==undefined){for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(height<block.height){height=block.height}}}line.height=height}}},{key:\"determineLabelSize\",value:function determineLabelSize(){var width=0;var height=0;for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.width>width){width=line.width}height+=line.height}this.width=width;this.height=height}},{key:\"removeEmptyBlocks\",value:function removeEmptyBlocks(){var tmpLines=[];for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.blocks.length===0)continue;if(k===this.lines.length-1){if(line.width===0)continue}var tmpLine={};(0,_assign2[\"default\"])(tmpLine,line);tmpLine.blocks=[];var firstEmptyBlock=void 0;var tmpBlocks=[];for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(block.width!==0){tmpBlocks.push(block)}else{if(firstEmptyBlock===undefined){firstEmptyBlock=block}}}if(tmpBlocks.length===0&&firstEmptyBlock!==undefined){tmpBlocks.push(firstEmptyBlock)}tmpLine.blocks=tmpBlocks;tmpLines.push(tmpLine)}return tmpLines}},{key:\"finalize\",value:function finalize(){this.determineLineHeights();this.determineLabelSize();var tmpLines=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:tmpLines}}}]);return LabelAccumulator}();exports[\"default\"]=LabelAccumulator},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Box=function(_NodeBase){(0,_inherits3[\"default\"])(Box,_NodeBase);function Box(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Box);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Box.__proto__||(0,_getPrototypeOf2[\"default\"])(Box)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Box,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.width=dimensions.width+this.margin.right+this.margin.left;this.height=dimensions.height+this.margin.top+this.margin.bottom;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.roundRect(this.left,this.top,this.width,this.height,values.borderRadius);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)\n;var borderRadius=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(borderRadius)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var borderWidth=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}}]);return Box}(_NodeBase3[\"default\"]);exports[\"default\"]=Box},function(module,exports,__webpack_require__){__webpack_require__(195);module.exports=__webpack_require__(7).Object.getPrototypeOf},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $getPrototypeOf=__webpack_require__(85);__webpack_require__(87)(\"getPrototypeOf\",function(){return function getPrototypeOf(it){return $getPrototypeOf(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(197),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(198);module.exports=__webpack_require__(7).Object.setPrototypeOf},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{setPrototypeOf:__webpack_require__(199).set})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var anObject=__webpack_require__(27);var check=function(O,proto){anObject(O);if(!isObject(proto)&&proto!==null)throw TypeError(proto+\": can't set as prototype!\")};module.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(test,buggy,set){try{set=__webpack_require__(80)(Function.call,__webpack_require__(89).f(Object.prototype,\"__proto__\").set,2);set(test,[]);buggy=!(test instanceof Array)}catch(e){buggy=true}return function setPrototypeOf(O,proto){check(O,proto);if(buggy)O.__proto__=proto;else set(O,proto);return O}}({},false):undefined),check:check}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Circle=function(_CircleImageBase){(0,_inherits3[\"default\"])(Circle,_CircleImageBase);function Circle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Circle);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Circle.__proto__||(0,_getPrototypeOf2[\"default\"])(Circle)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Circle,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var diameter=Math.max(dimensions.width+this.margin.right+this.margin.left,dimensions.height+this.margin.top+this.margin.bottom);this.options.size=diameter/2;this.width=diameter;this.height=diameter;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);this.updateBoundingBox(x,y);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,y,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return Circle}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Circle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircularImage=function(_CircleImageBase){(0,_inherits3[\"default\"])(CircularImage,_CircleImageBase);function CircularImage(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,CircularImage);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircularImage.__proto__||(0,_getPrototypeOf2[\"default\"])(CircularImage)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(CircularImage,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var diameter=this.options.size*2;this.width=diameter;this.height=diameter;this.radius=.5*this.width;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);ctx.save();ctx.clip();this._drawImageAtPosition(ctx,values);ctx.restore();this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return CircularImage}(_CircleImageBase3[\"default\"]);exports[\"default\"]=CircularImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Database=function(_NodeBase){(0,_inherits3[\"default\"])(Database,_NodeBase);function Database(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Database);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Database.__proto__||(0,_getPrototypeOf2[\"default\"])(Database)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Database,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var size=dimensions.width+this.margin.right+this.margin.left;this.width=size;this.height=size;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.database(x-this.width/2,y-this.height/2,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Database}(_NodeBase3[\"default\"]);exports[\"default\"]=Database},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Diamond=function(_ShapeBase){(0,_inherits3[\"default\"])(Diamond,_ShapeBase);function Diamond(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Diamond);return(0,_possibleConstructorReturn3[\"default\"])(this,(Diamond.__proto__||(0,_getPrototypeOf2[\"default\"])(Diamond)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Diamond,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"diamond\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Diamond}(_ShapeBase3[\"default\"]);exports[\"default\"]=Diamond},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Dot=function(_ShapeBase){(0,_inherits3[\"default\"])(Dot,_ShapeBase);function Dot(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Dot);return(0,_possibleConstructorReturn3[\"default\"])(this,(Dot.__proto__||(0,_getPrototypeOf2[\"default\"])(Dot)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Dot,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"circle\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.options.size}}]);return Dot}(_ShapeBase3[\"default\"]);exports[\"default\"]=Dot},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Ellipse=function(_NodeBase){(0,_inherits3[\"default\"])(Ellipse,_NodeBase);function Ellipse(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Ellipse);return(0,_possibleConstructorReturn3[\"default\"])(this,(Ellipse.__proto__||(0,_getPrototypeOf2[\"default\"])(Ellipse)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Ellipse,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.height=dimensions.height*2;this.width=dimensions.width+dimensions.height;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width*.5;this.top=y-this.height*.5;this.initContextForDraw(ctx,values);ctx.ellipse_vis(this.left,this.top,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,x,y,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var a=this.width*.5;var b=this.height*.5;var w=Math.sin(angle)*a;var h=Math.cos(angle)*b;return a*b/Math.sqrt(w*w+h*h)}}]);return Ellipse}(_NodeBase3[\"default\"]);exports[\"default\"]=Ellipse},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Icon=function(_NodeBase){(0,_inherits3[\"default\"])(Icon,_NodeBase);function Icon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Icon);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Icon.__proto__||(0,_getPrototypeOf2[\"default\"])(Icon)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Icon,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)};this.width=this.iconSize.width+this.margin.right+this.margin.left;this.height=this.iconSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.options.icon.size=this.options.icon.size||50;this.left=x-this.width/2;this.top=y-this.height/2;this._icon(ctx,x,y,selected,hover,values);if(this.options.label!==undefined){var iconTextSpacing=5;this.labelModule.draw(ctx,this.left+this.iconSize.width/2+this.margin.left,y+this.height/2+iconTextSpacing,selected)}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.icon.size*.5;this.boundingBox.left=x-this.options.icon.size*.5;this.boundingBox.right=x+this.options.icon.size*.5;this.boundingBox.bottom=y+this.options.icon.size*.5;if(this.options.label!==undefined&&this.labelModule.size.width>0){var iconTextSpacing=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+iconTextSpacing)}}},{key:\"_icon\",value:function _icon(ctx,x,y,selected,hover,values){var iconSize=Number(this.options.icon.size);if(this.options.icon.code!==undefined){ctx.font=(selected?\"bold \":\"\")+iconSize+\"px \"+this.options.icon.face;ctx.fillStyle=this.options.icon.color||\"black\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";this.enableShadow(ctx,values);ctx.fillText(this.options.icon.code,x,y);this.disableShadow(ctx,values)}else{console.error(\"When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.\")}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Icon}(_NodeBase3[\"default\"]);exports[\"default\"]=Icon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Image=function(_CircleImageBase){(0,_inherits3[\"default\"])(Image,_CircleImageBase);function Image(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,Image);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Image.__proto__||(0,_getPrototypeOf2[\"default\"])(Image)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(Image,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var side=this.options.size*2;this.width=side;this.height=side;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;if(this.options.shapeProperties.useBorderWithImage===true){var neutralborderWidth=this.options.borderWidth;var selectionLineWidth=this.options.borderWidthSelected||2*this.options.borderWidth;var borderWidth=(selected?selectionLineWidth:neutralborderWidth)/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.beginPath();ctx.strokeStyle=selected?this.options.color.highlight.border:hover?this.options.color.hover.border:this.options.color.border;ctx.fillStyle=selected?this.options.color.highlight.background:hover?this.options.color.hover.background:this.options.color.background;ctx.rect(this.left-.5*ctx.lineWidth,this.top-.5*ctx.lineWidth,this.width+ctx.lineWidth,this.height+ctx.lineWidth);ctx.fill();this.performStroke(ctx,values);ctx.closePath()}this._drawImageAtPosition(ctx,values);this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.resize();this._updateBoundingBox(x,y);if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Image}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Image},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Square=function(_ShapeBase){(0,_inherits3[\"default\"])(Square,_ShapeBase);function Square(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Square);return(0,_possibleConstructorReturn3[\"default\"])(this,(Square.__proto__||(0,_getPrototypeOf2[\"default\"])(Square)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Square,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"square\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Square}(_ShapeBase3[\"default\"]);exports[\"default\"]=Square},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hexagon=function(_ShapeBase){(0,_inherits3[\"default\"])(Hexagon,_ShapeBase);function Hexagon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Hexagon);return(0,_possibleConstructorReturn3[\"default\"])(this,(Hexagon.__proto__||(0,_getPrototypeOf2[\"default\"])(Hexagon)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Hexagon,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"hexagon\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Hexagon}(_ShapeBase3[\"default\"]);exports[\"default\"]=Hexagon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Star=function(_ShapeBase){(0,_inherits3[\"default\"])(Star,_ShapeBase);function Star(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Star);return(0,_possibleConstructorReturn3[\"default\"])(this,(Star.__proto__||(0,_getPrototypeOf2[\"default\"])(Star)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Star,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"star\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Star}(_ShapeBase3[\"default\"]);exports[\"default\"]=Star},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Text=function(_NodeBase){(0,_inherits3[\"default\"])(Text,_NodeBase);function Text(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Text);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Text.__proto__||(0,_getPrototypeOf2[\"default\"])(Text)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Text,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);this.width=this.textSize.width+this.margin.right+this.margin.left;this.height=this.textSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.enableShadow(ctx,values);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover);this.disableShadow(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Text}(_NodeBase3[\"default\"]);exports[\"default\"]=Text},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Triangle=function(_ShapeBase){(0,_inherits3[\"default\"])(Triangle,_ShapeBase);function Triangle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Triangle);return(0,_possibleConstructorReturn3[\"default\"])(this,(Triangle.__proto__||(0,_getPrototypeOf2[\"default\"])(Triangle)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Triangle,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangle\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Triangle}(_ShapeBase3[\"default\"]);exports[\"default\"]=Triangle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var TriangleDown=function(_ShapeBase){(0,_inherits3[\"default\"])(TriangleDown,_ShapeBase);function TriangleDown(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,TriangleDown);return(0,_possibleConstructorReturn3[\"default\"])(this,(TriangleDown.__proto__||(0,_getPrototypeOf2[\"default\"])(TriangleDown)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(TriangleDown,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangleDown\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return TriangleDown}(_ShapeBase3[\"default\"]);exports[\"default\"]=TriangleDown},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Edge=__webpack_require__(74)[\"default\"];var EdgesHandler=function(){function EdgesHandler(body,images,groups){var _this=this;(0,_classCallCheck3[\"default\"])(this,EdgesHandler);this.body=body;this.images=images;this.groups=groups;this.body.functions.createEdge=this.create.bind(this);this.edgesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items)},remove:function remove(event,params){_this.remove(params.items)}};this.options={};this.defaultOptions={arrows:{to:{enabled:false,\nscaleFactor:1,type:\"arrow\"},middle:{enabled:false,scaleFactor:1,type:\"arrow\"},from:{enabled:false,scaleFactor:1,type:\"arrow\"}},arrowStrikethrough:true,color:{color:\"#848484\",highlight:\"#848484\",hover:\"#848484\",inherit:\"from\",opacity:1},dashes:false,font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:2,strokeColor:\"#ffffff\",align:\"horizontal\",multi:false,vadjust:0,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"courier new\",vadjust:2}},hidden:false,hoverWidth:1.5,label:undefined,labelHighlightBold:true,length:undefined,physics:true,scaling:{min:1,max:15,label:{enabled:true,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},selectionWidth:1.5,selfReferenceSize:20,shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},smooth:{enabled:true,type:\"dynamic\",forceDirection:\"none\",roundness:.5},title:undefined,width:1,value:undefined};util.deepExtend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(EdgesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_forceDisableDynamicCurves\",function(type){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(type===\"dynamic\"){type=\"continuous\"}var dataChanged=false;for(var edgeId in _this2.body.edges){if(_this2.body.edges.hasOwnProperty(edgeId)){var edge=_this2.body.edges[edgeId];var edgeData=_this2.body.data.edges._data[edgeId];if(edgeData!==undefined){var smoothOptions=edgeData.smooth;if(smoothOptions!==undefined){if(smoothOptions.enabled===true&&smoothOptions.type===\"dynamic\"){if(type===undefined){edge.setOptions({smooth:false})}else{edge.setOptions({smooth:{type:type}})}dataChanged=true}}}}}if(emit===true&&dataChanged===true){_this2.body.emitter.emit(\"_dataChanged\")}});this.body.emitter.on(\"_dataUpdated\",function(){_this2.reconnectEdges()});this.body.emitter.on(\"refreshEdges\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.edgesListeners,function(callback,event){if(_this2.body.data.edges)_this2.body.data.edges.off(event,callback)});delete _this2.body.functions.createEdge;delete _this2.edgesListeners.add;delete _this2.edgesListeners.update;delete _this2.edgesListeners.remove;delete _this2.edgesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Edge.parseOptions(this.options,options,true,this.defaultOptions,true);var dataChanged=false;if(options.smooth!==undefined){for(var edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(edgeId)){dataChanged=this.body.edges[edgeId].updateEdgeType()||dataChanged}}}if(options.font!==undefined){for(var _edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(_edgeId)){this.body.edges[_edgeId].updateLabelModule()}}}if(options.hidden!==undefined||options.physics!==undefined||dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(edges){var _this3=this;var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldEdgesData=this.body.data.edges;if(edges instanceof DataSet||edges instanceof DataView){this.body.data.edges=edges}else if(Array.isArray(edges)){this.body.data.edges=new DataSet;this.body.data.edges.add(edges)}else if(!edges){this.body.data.edges=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldEdgesData){util.forEach(this.edgesListeners,function(callback,event){oldEdgesData.off(event,callback)})}this.body.edges={};if(this.body.data.edges){util.forEach(this.edgesListeners,function(callback,event){_this3.body.data.edges.on(event,callback)});var ids=this.body.data.edges.getIds();this.add(ids,true)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var edges=this.body.edges;var edgesData=this.body.data.edges;for(var i=0;i<ids.length;i++){var id=ids[i];var oldEdge=edges[id];if(oldEdge){oldEdge.disconnect()}var data=edgesData.get(id,{showInternalIds:true});edges[id]=this.create(data)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids){var edges=this.body.edges;var edgesData=this.body.data.edges;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var data=edgesData.get(id);var edge=edges[id];if(edge!==undefined){edge.disconnect();dataChanged=edge.setOptions(data)||dataChanged;edge.connect()}else{this.body.edges[id]=this.create(data);dataChanged=true}}if(dataChanged===true){this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(ids.length===0)return;var edges=this.body.edges;util.forEach(ids,function(id){var edge=edges[id];if(edge!==undefined){edge.remove()}});if(emit){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"refresh\",value:function refresh(){var _this4=this;util.forEach(this.body.edges,function(edge,edgeId){var data=_this4.body.data.edges._data[edgeId];if(data!==undefined){edge.setOptions(data)}})}},{key:\"create\",value:function create(properties){return new Edge(properties,this.body,this.options,this.defaultOptions)}},{key:\"reconnectEdges\",value:function reconnectEdges(){var id;var nodes=this.body.nodes;var edges=this.body.edges;for(id in nodes){if(nodes.hasOwnProperty(id)){nodes[id].edges=[]}}for(id in edges){if(edges.hasOwnProperty(id)){var edge=edges[id];edge.from=null;edge.to=null;edge.connect()}}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(edgeId){var nodeList=[];if(this.body.edges[edgeId]!==undefined){var edge=this.body.edges[edgeId];if(edge.fromId!==undefined){nodeList.push(edge.fromId)}if(edge.toId!==undefined){nodeList.push(edge.toId)}}return nodeList}},{key:\"_updateState\",value:function _updateState(){this._addMissingEdges();this._removeInvalidEdges()}},{key:\"_removeInvalidEdges\",value:function _removeInvalidEdges(){var _this5=this;var edgesToDelete=[];util.forEach(this.body.edges,function(edge,id){var toNode=_this5.body.nodes[edge.toId];var fromNode=_this5.body.nodes[edge.fromId];if(toNode!==undefined&&toNode.isCluster===true||fromNode!==undefined&&fromNode.isCluster===true){return}if(toNode===undefined||fromNode===undefined){edgesToDelete.push(id)}});this.remove(edgesToDelete,false)}},{key:\"_addMissingEdges\",value:function _addMissingEdges(){var edges=this.body.edges;var edgesData=this.body.data.edges;var addIds=[];edgesData.forEach(function(edgeData,edgeId){var edge=edges[edgeId];if(edge===undefined){addIds.push(edgeId)}});this.add(addIds,true)}}]);return EdgesHandler}();exports[\"default\"]=EdgesHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CubicBezierEdgeBase2=__webpack_require__(216);var _CubicBezierEdgeBase3=_interopRequireDefault(_CubicBezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdge=function(_CubicBezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdge,_CubicBezierEdgeBase);function CubicBezierEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdge,[{key:\"_line\",value:function _line(ctx,values,viaNodes){var via1=viaNodes[0];var via2=viaNodes[1];this._bezierCurve(ctx,values,via1,via2)}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var dx=this.from.x-this.to.x;var dy=this.from.y-this.to.y;var x1=void 0,y1=void 0,x2=void 0,y2=void 0;var roundness=this.options.smooth.roundness;if((Math.abs(dx)>Math.abs(dy)||this.options.smooth.forceDirection===true||this.options.smooth.forceDirection===\"horizontal\")&&this.options.smooth.forceDirection!==\"vertical\"){y1=this.from.y;y2=this.to.y;x1=this.from.x-roundness*dx;x2=this.to.x+roundness*dx}else{y1=this.from.y-roundness*dy;y2=this.to.y+roundness*dy;x1=this.from.x;x2=this.to.x}return[{x:x1,y:y1},{x:x2,y:y2}]}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var _ref=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates(),_ref2=(0,_slicedToArray3[\"default\"])(_ref,2),via1=_ref2[0],via2=_ref2[1];return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2)}},{key:\"getPoint\",value:function getPoint(percentage){var _ref3=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates(),_ref4=(0,_slicedToArray3[\"default\"])(_ref3,2),via1=_ref4[0],via2=_ref4[1];var t=percentage;var vec=[];vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);var x=vec[0]*this.fromPoint.x+vec[1]*via1.x+vec[2]*via2.x+vec[3]*this.toPoint.x;var y=vec[0]*this.fromPoint.y+vec[1]*via1.y+vec[2]*via2.y+vec[3]*this.toPoint.y;return{x:x,y:y}}}]);return CubicBezierEdge}(_CubicBezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdgeBase=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdgeBase,_BezierEdgeBase);function CubicBezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdgeBase,[{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;var vec=[0,0,0,0];for(i=1;i<10;i++){t=.1*i;vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);x=vec[0]*x1+vec[1]*via1.x+vec[2]*via2.x+vec[3]*x2;y=vec[0]*y1+vec[1]*via1.y+vec[2]*via2.y+vec[3]*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}}]);return CubicBezierEdgeBase}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeDynamic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeDynamic,_BezierEdgeBase);function BezierEdgeDynamic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeDynamic);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeDynamic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeDynamic)).call(this,options,body,labelModule));_this._boundFunction=function(){_this.positionBezierNode()};_this.body.emitter.on(\"_repositionBezierNodes\",_this._boundFunction);return _this}(0,_createClass3[\"default\"])(BezierEdgeDynamic,[{key:\"setOptions\",value:function setOptions(options){var physicsChange=false;if(this.options.physics!==options.physics){physicsChange=true}this.options=options;this.id=this.options.id;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.setupSupportNode();this.connect();if(physicsChange===true){this.via.setOptions({physics:this.options.physics});this.positionBezierNode()}}},{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];if(this.from===undefined||this.to===undefined||this.options.physics===false){this.via.setOptions({physics:false})}else{if(this.from.id===this.to.id){this.via.setOptions({physics:false})}else{this.via.setOptions({physics:true})}}}},{key:\"cleanup\",value:function cleanup(){this.body.emitter.off(\"_repositionBezierNodes\",this._boundFunction);if(this.via!==undefined){delete this.body.nodes[this.via.id];this.via=undefined;return true}return false}},{key:\"setupSupportNode\",value:function setupSupportNode(){if(this.via===undefined){var nodeId=\"edgeId:\"+this.id;var node=this.body.functions.createNode({id:nodeId,shape:\"circle\",physics:true,hidden:true});this.body.nodes[nodeId]=node;this.via=node;this.via.parentEdgeId=this.id;this.positionBezierNode()}}},{key:\"positionBezierNode\",value:function positionBezierNode(){if(this.via!==undefined&&this.from!==undefined&&this.to!==undefined){this.via.x=.5*(this.from.x+this.to.x);this.via.y=.5*(this.from.y+this.to.y)}else if(this.via!==undefined){this.via.x=0;this.via.y=0}}},{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this.via}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.via;var t=percentage;var x=void 0,y=void 0;if(this.from===this.to){var _getCircleData=this._getCircleData(this.from),_getCircleData2=(0,_slicedToArray3[\"default\"])(_getCircleData,3),cx=_getCircleData2[0],cy=_getCircleData2[1],cr=_getCircleData2[2];var a=2*Math.PI*(1-t);x=cx+cr*Math.sin(a);y=cy+cr-cr*(1-Math.cos(a))}else{x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y}return{x:x,y:y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx,this.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,this.via)}}]);return BezierEdgeDynamic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeDynamic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeStatic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeStatic,_BezierEdgeBase);function BezierEdgeStatic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeStatic);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeStatic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeStatic)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeStatic,[{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var xVia=undefined;var yVia=undefined;var factor=this.options.smooth.roundness;var type=this.options.smooth.type;var dx=Math.abs(this.from.x-this.to.x);var dy=Math.abs(this.from.y-this.to.y);if(type===\"discrete\"||type===\"diagonalCross\"){var stepX=void 0;var stepY=void 0;if(dx<=dy){stepX=stepY=factor*dy}else{stepX=stepY=factor*dx}if(this.from.x>this.to.x)stepX=-stepX;if(this.from.y>=this.to.y)stepY=-stepY;xVia=this.from.x+stepX;yVia=this.from.y+stepY;if(type===\"discrete\"){if(dx<=dy){xVia=dx<factor*dy?this.from.x:xVia}else{yVia=dy<factor*dx?this.from.y:yVia}}}else if(type===\"straightCross\"){var _stepX=(1-factor)*dx;var _stepY=(1-factor)*dy;if(dx<=dy){_stepX=0;if(this.from.y<this.to.y)_stepY=-_stepY}else{if(this.from.x<this.to.x)_stepX=-_stepX;_stepY=0}xVia=this.to.x+_stepX;yVia=this.to.y+_stepY}else if(type===\"horizontal\"){var _stepX2=(1-factor)*dx;if(this.from.x<this.to.x)_stepX2=-_stepX2;xVia=this.to.x+_stepX2;yVia=this.from.y}else if(type===\"vertical\"){var _stepY2=(1-factor)*dy;if(this.from.y<this.to.y)_stepY2=-_stepY2;xVia=this.from.x;yVia=this.to.y+_stepY2}else if(type===\"curvedCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var radius=Math.sqrt(dx*dx+dy*dy);var pi=Math.PI;var originalAngle=Math.atan2(dy,dx);var myAngle=(originalAngle+(factor*.5+.5)*pi)%(2*pi);xVia=this.from.x+(factor*.5+.5)*radius*Math.sin(myAngle);yVia=this.from.y+(factor*.5+.5)*radius*Math.cos(myAngle)}else if(type===\"curvedCCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var _radius=Math.sqrt(dx*dx+dy*dy);var _pi=Math.PI;var _originalAngle=Math.atan2(dy,dx);var _myAngle=(_originalAngle+(-factor*.5+.5)*_pi)%(2*_pi);xVia=this.from.x+(factor*.5+.5)*_radius*Math.sin(_myAngle);yVia=this.from.y+(factor*.5+.5)*_radius*Math.cos(_myAngle)}else{var _stepX3=void 0;var _stepY3=void 0;if(dx<=dy){_stepX3=_stepY3=factor*dy}else{_stepX3=_stepY3=factor*dx}if(this.from.x>this.to.x)_stepX3=-_stepX3;if(this.from.y>=this.to.y)_stepY3=-_stepY3;xVia=this.from.x+_stepX3;yVia=this.from.y+_stepY3;if(dx<=dy){if(this.from.x<=this.to.x){xVia=this.to.x<xVia?this.to.x:xVia}else{xVia=this.to.x>xVia?this.to.x:xVia}}else{if(this.from.y>=this.to.y){yVia=this.to.y>yVia?this.to.y:yVia}else{yVia=this.to.y<yVia?this.to.y:yVia}}}return{x:xVia,y:yVia}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return this._findBorderPositionBezier(nearNode,ctx,options.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var viaNode=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,viaNode)}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates();var t=percentage;var x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;var y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y;return{x:x,y:y}}}]);return BezierEdgeStatic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeStatic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var StraightEdge=function(_EdgeBase){(0,_inherits3[\"default\"])(StraightEdge,_EdgeBase);function StraightEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,StraightEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(StraightEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(StraightEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(StraightEdge,[{key:\"_line\",value:function _line(ctx,values){ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);ctx.lineTo(this.toPoint.x,this.toPoint.y);this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return undefined}},{key:\"getPoint\",value:function getPoint(percentage){return{x:(1-percentage)*this.fromPoint.x+percentage*this.toPoint.x,y:(1-percentage)*this.fromPoint.y+percentage*this.toPoint.y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var node1=this.to;var node2=this.from;if(nearNode.id===this.from.id){node1=this.from;node2=this.to}var angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);var dx=node1.x-node2.x;var dy=node1.y-node2.y;var edgeSegmentLength=Math.sqrt(dx*dx+dy*dy);var toBorderDist=nearNode.distanceToBorder(ctx,angle);var toBorderPoint=(edgeSegmentLength-toBorderDist)/edgeSegmentLength;var borderPos={};borderPos.x=(1-toBorderPoint)*node2.x+toBorderPoint*node1.x;borderPos.y=(1-toBorderPoint)*node2.y+toBorderPoint*node1.y;return borderPos}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToLine(x1,y1,x2,y2,x3,y3)}}]);return StraightEdge}(_EdgeBase3[\"default\"]);exports[\"default\"]=StraightEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=__webpack_require__(120)[\"default\"];var Repulsion=__webpack_require__(221)[\"default\"];var HierarchicalRepulsion=__webpack_require__(222)[\"default\"];var SpringSolver=__webpack_require__(223)[\"default\"];var HierarchicalSpringSolver=__webpack_require__(224)[\"default\"];var CentralGravitySolver=__webpack_require__(121)[\"default\"];var ForceAtlas2BasedRepulsionSolver=__webpack_require__(225)[\"default\"];var ForceAtlas2BasedCentralGravitySolver=__webpack_require__(226)[\"default\"];var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var PhysicsEngine=function(){function PhysicsEngine(body){(0,_classCallCheck3[\"default\"])(this,PhysicsEngine);this.body=body;this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}};this.physicsEnabled=true;this.simulationInterval=1e3/60;this.requiresTimeout=true;this.previousStates={};this.referenceState={};this.freezeCache={};this.renderTimer=undefined;this.adaptiveTimestep=false;this.adaptiveTimestepEnabled=false;this.adaptiveCounter=0;this.adaptiveInterval=3;this.stabilized=false;this.startedStabilization=false;this.stabilizationIterations=0;this.ready=false;this.options={};this.defaultOptions={enabled:true,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:\"barnesHut\",stabilization:{enabled:true,iterations:1e3,updateInterval:50,onlyDynamicEdges:false,fit:true},timestep:.5,adaptiveTimestep:true};util.extend(this.options,this.defaultOptions);this.timestep=.5;this.layoutFailed=false;this.bindEventListeners()}(0,_createClass3[\"default\"])(PhysicsEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"initPhysics\",function(){_this.initPhysics()});this.body.emitter.on(\"_layoutFailed\",function(){_this.layoutFailed=true});this.body.emitter.on(\"resetPhysics\",function(){_this.stopSimulation();_this.ready=false});this.body.emitter.on(\"disablePhysics\",function(){_this.physicsEnabled=false;_this.stopSimulation()});this.body.emitter.on(\"restorePhysics\",function(){_this.setOptions(_this.options);if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"startSimulation\",function(){if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"stopSimulation\",function(){_this.stopSimulation()});this.body.emitter.on(\"destroy\",function(){_this.stopSimulation(false);_this.body.emitter.off()});this.body.emitter.on(\"_dataChanged\",function(){_this.updatePhysicsData()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){if(options===false){this.options.enabled=false;this.physicsEnabled=false;this.stopSimulation()}else if(options===true){this.options.enabled=true;this.physicsEnabled=true;this.startSimulation()}else{this.physicsEnabled=true;util.selectiveNotDeepExtend([\"stabilization\"],this.options,options);util.mergeOptions(this.options,options,\"stabilization\");if(options.enabled===undefined){this.options.enabled=true}if(this.options.enabled===false){this.physicsEnabled=false;this.stopSimulation()}this.timestep=this.options.timestep}}this.init()}},{key:\"init\",value:function init(){var options;if(this.options.solver===\"forceAtlas2Based\"){options=this.options.forceAtlas2Based;this.nodesSolver=new ForceAtlas2BasedRepulsionSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new ForceAtlas2BasedCentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"repulsion\"){options=this.options.repulsion;this.nodesSolver=new Repulsion(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"hierarchicalRepulsion\"){options=this.options.hierarchicalRepulsion;this.nodesSolver=new HierarchicalRepulsion(this.body,this.physicsBody,options);this.edgesSolver=new HierarchicalSpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else{options=this.options.barnesHut;this.nodesSolver=new BarnesHutSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}this.modelOptions=options}},{key:\"initPhysics\",value:function initPhysics(){if(this.physicsEnabled===true&&this.options.enabled===true){if(this.options.stabilization.enabled===true){this.stabilize()}else{this.stabilized=false;this.ready=true;this.body.emitter.emit(\"fit\",{},this.layoutFailed);this.startSimulation()}}else{this.ready=true;this.body.emitter.emit(\"fit\")}}},{key:\"startSimulation\",value:function startSimulation(){if(this.physicsEnabled===true&&this.options.enabled===true){this.stabilized=false;this.adaptiveTimestep=false;this.body.emitter.emit(\"_resizeNodes\");if(this.viewFunction===undefined){this.viewFunction=this.simulationStep.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}else{this.body.emitter.emit(\"_redraw\")}}},{key:\"stopSimulation\",value:function stopSimulation(){var emit=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;this.stabilized=true;if(emit===true){this._emitStabilized()}if(this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.viewFunction=undefined;if(emit===true){this.body.emitter.emit(\"_stopRendering\")}}}},{key:\"simulationStep\",value:function simulationStep(){var startTime=Date.now();this.physicsTick();var physicsTime=Date.now()-startTime;if((physicsTime<.4*this.simulationInterval||this.runDoubleSpeed===true)&&this.stabilized===false){this.physicsTick();this.runDoubleSpeed=true}if(this.stabilized===true){this.stopSimulation()}}},{key:\"_emitStabilized\",value:function _emitStabilized(){var _this2=this;var amountOfIterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.stabilizationIterations;if(this.stabilizationIterations>1||this.startedStabilization===true){setTimeout(function(){_this2.body.emitter.emit(\"stabilized\",{iterations:amountOfIterations});_this2.startedStabilization=false;_this2.stabilizationIterations=0},0)}}},{key:\"physicsStep\",value:function physicsStep(){this.gravitySolver.solve();this.nodesSolver.solve();this.edgesSolver.solve();this.moveNodes()}},{key:\"adjustTimeStep\",value:function adjustTimeStep(){var factor=1.2;if(this._evaluateStepQuality()===true){this.timestep=factor*this.timestep}else{if(this.timestep/factor<this.options.timestep){this.timestep=this.options.timestep}else{this.adaptiveCounter=-1;this.timestep=Math.max(this.options.timestep,this.timestep/factor)}}}},{key:\"physicsTick\",value:function physicsTick(){this._startStabilizing();if(this.stabilized===true)return;if(this.adaptiveTimestep===true&&this.adaptiveTimestepEnabled===true){var doAdaptive=this.adaptiveCounter%this.adaptiveInterval===0;if(doAdaptive){this.timestep=2*this.timestep;this.physicsStep();this.revert();this.timestep=.5*this.timestep;this.physicsStep();this.physicsStep();this.adjustTimeStep()}else{this.physicsStep()}this.adaptiveCounter+=1}else{this.timestep=this.options.timestep;this.physicsStep()}\nif(this.stabilized===true)this.revert();this.stabilizationIterations++}},{key:\"updatePhysicsData\",value:function updatePhysicsData(){this.physicsBody.forces={};this.physicsBody.physicsNodeIndices=[];this.physicsBody.physicsEdgeIndices=[];var nodes=this.body.nodes;var edges=this.body.edges;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(nodes[nodeId].options.physics===true){this.physicsBody.physicsNodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){if(edges[edgeId].options.physics===true){this.physicsBody.physicsEdgeIndices.push(edges[edgeId].id)}}}for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var _nodeId=this.physicsBody.physicsNodeIndices[i];this.physicsBody.forces[_nodeId]={x:0,y:0};if(this.physicsBody.velocities[_nodeId]===undefined){this.physicsBody.velocities[_nodeId]={x:0,y:0}}}for(var _nodeId2 in this.physicsBody.velocities){if(nodes[_nodeId2]===undefined){delete this.physicsBody.velocities[_nodeId2]}}}},{key:\"revert\",value:function revert(){var nodeIds=(0,_keys2[\"default\"])(this.previousStates);var nodes=this.body.nodes;var velocities=this.physicsBody.velocities;this.referenceState={};for(var i=0;i<nodeIds.length;i++){var nodeId=nodeIds[i];if(nodes[nodeId]!==undefined){if(nodes[nodeId].options.physics===true){this.referenceState[nodeId]={positions:{x:nodes[nodeId].x,y:nodes[nodeId].y}};velocities[nodeId].x=this.previousStates[nodeId].vx;velocities[nodeId].y=this.previousStates[nodeId].vy;nodes[nodeId].x=this.previousStates[nodeId].x;nodes[nodeId].y=this.previousStates[nodeId].y}}else{delete this.previousStates[nodeId]}}}},{key:\"_evaluateStepQuality\",value:function _evaluateStepQuality(){var dx=void 0,dy=void 0,dpos=void 0;var nodes=this.body.nodes;var reference=this.referenceState;var posThreshold=.3;for(var nodeId in this.referenceState){if(this.referenceState.hasOwnProperty(nodeId)&&nodes[nodeId]!==undefined){dx=nodes[nodeId].x-reference[nodeId].positions.x;dy=nodes[nodeId].y-reference[nodeId].positions.y;dpos=Math.sqrt(Math.pow(dx,2)+Math.pow(dy,2));if(dpos>posThreshold){return false}}}return true}},{key:\"moveNodes\",value:function moveNodes(){var nodeIndices=this.physicsBody.physicsNodeIndices;var maxNodeVelocity=0;var averageNodeVelocity=0;var velocityAdaptiveThreshold=5;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];var nodeVelocity=this._performStep(nodeId);maxNodeVelocity=Math.max(maxNodeVelocity,nodeVelocity);averageNodeVelocity+=nodeVelocity}this.adaptiveTimestepEnabled=averageNodeVelocity/nodeIndices.length<velocityAdaptiveThreshold;this.stabilized=maxNodeVelocity<this.options.minVelocity}},{key:\"calculateComponentVelocity\",value:function calculateComponentVelocity(v,f,m){var df=this.modelOptions.damping*v;var a=(f-df)/m;v+=a*this.timestep;var maxV=this.options.maxVelocity||1e9;if(Math.abs(v)>maxV){v=v>0?maxV:-maxV}return v}},{key:\"_performStep\",value:function _performStep(nodeId){var node=this.body.nodes[nodeId];var force=this.physicsBody.forces[nodeId];var velocity=this.physicsBody.velocities[nodeId];this.previousStates[nodeId]={x:node.x,y:node.y,vx:velocity.x,vy:velocity.y};if(node.options.fixed.x===false){velocity.x=this.calculateComponentVelocity(velocity.x,force.x,node.options.mass);node.x+=velocity.x*this.timestep}else{force.x=0;velocity.x=0}if(node.options.fixed.y===false){velocity.y=this.calculateComponentVelocity(velocity.y,force.y,node.options.mass);node.y+=velocity.y*this.timestep}else{force.y=0;velocity.y=0}var totalVelocity=Math.sqrt(Math.pow(velocity.x,2)+Math.pow(velocity.y,2));return totalVelocity}},{key:\"_freezeNodes\",value:function _freezeNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(nodes[id].x&&nodes[id].y){var fixed=nodes[id].options.fixed;this.freezeCache[id]={x:fixed.x,y:fixed.y};fixed.x=true;fixed.y=true}}}}},{key:\"_restoreFrozenNodes\",value:function _restoreFrozenNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(this.freezeCache[id]!==undefined){nodes[id].options.fixed.x=this.freezeCache[id].x;nodes[id].options.fixed.y=this.freezeCache[id].y}}}this.freezeCache={}}},{key:\"stabilize\",value:function stabilize(){var _this3=this;var iterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.stabilization.iterations;if(typeof iterations!==\"number\"){iterations=this.options.stabilization.iterations;console.log(\"The stabilize method needs a numeric amount of iterations. Switching to default: \",iterations)}if(this.physicsBody.physicsNodeIndices.length===0){this.ready=true;return}this.adaptiveTimestep=true&&this.options.adaptiveTimestep;this.body.emitter.emit(\"_resizeNodes\");this.stopSimulation();this.stabilized=false;this.body.emitter.emit(\"_blockRedraw\");this.targetIterations=iterations;if(this.options.stabilization.onlyDynamicEdges===true){this._freezeNodes()}this.stabilizationIterations=0;setTimeout(function(){return _this3._stabilizationBatch()},0)}},{key:\"_startStabilizing\",value:function _startStabilizing(){if(this.startedStabilization===true)return false;this.body.emitter.emit(\"startStabilizing\");this.startedStabilization=true;return true}},{key:\"_stabilizationBatch\",value:function _stabilizationBatch(){var _this4=this;var running=function running(){return _this4.stabilized===false&&_this4.stabilizationIterations<_this4.targetIterations};var sendProgress=function sendProgress(){_this4.body.emitter.emit(\"stabilizationProgress\",{iterations:_this4.stabilizationIterations,total:_this4.targetIterations})};if(this._startStabilizing()){sendProgress()}var count=0;while(running()&&count<this.options.stabilization.updateInterval){this.physicsTick();count++}sendProgress();if(running()){setTimeout(this._stabilizationBatch.bind(this),0)}else{this._finalizeStabilization()}}},{key:\"_finalizeStabilization\",value:function _finalizeStabilization(){this.body.emitter.emit(\"_allowRedraw\");if(this.options.stabilization.fit===true){this.body.emitter.emit(\"fit\")}if(this.options.stabilization.onlyDynamicEdges===true){this._restoreFrozenNodes()}this.body.emitter.emit(\"stabilizationIterationsDone\");this.body.emitter.emit(\"_requestRedraw\");if(this.stabilized===true){this._emitStabilized()}else{this.startSimulation()}this.ready=true}},{key:\"_drawForces\",value:function _drawForces(ctx){for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var index=this.physicsBody.physicsNodeIndices[i];var node=this.body.nodes[index];var force=this.physicsBody.forces[index];var factor=20;var colorFactor=.03;var forceSize=Math.sqrt(Math.pow(force.x,2)+Math.pow(force.x,2));var size=Math.min(Math.max(5,forceSize),15);var arrowSize=3*size;var color=util.HSVToHex((180-Math.min(1,Math.max(0,colorFactor*forceSize))*180)/360,1,1);var point={x:node.x+factor*force.x,y:node.y+factor*force.y};ctx.lineWidth=size;ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(node.x,node.y);ctx.lineTo(point.x,point.y);ctx.stroke();var angle=Math.atan2(force.y,force.x);ctx.fillStyle=color;EndPoints.draw(ctx,{type:\"arrow\",point:point,angle:angle,length:arrowSize});ctx.fill()}}}]);return PhysicsEngine}();exports[\"default\"]=PhysicsEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var RepulsionSolver=function(){function RepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,RepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(RepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;var a=-2/3/nodeDistance;var b=4/3;for(var i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(var j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance===0){distance=.1*Math.random();dx=distance}if(distance<2*nodeDistance){if(distance<.5*nodeDistance){repulsingForce=1}else{repulsingForce=a*distance+b}repulsingForce=repulsingForce/distance;fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return RepulsionSolver}();exports[\"default\"]=RepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalRepulsionSolver=function(){function HierarchicalRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalRepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalRepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2,i,j;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;for(i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];if(node1.level===node2.level){dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);var steepness=.05;if(distance<nodeDistance){repulsingForce=-Math.pow(steepness*distance,2)+Math.pow(steepness*nodeDistance,2)}else{repulsingForce=0}if(distance===0){distance=.01}else{repulsingForce=repulsingForce/distance}fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return HierarchicalRepulsionSolver}();exports[\"default\"]=HierarchicalRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var SpringSolver=function(){function SpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,SpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(SpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength=void 0,edge=void 0;var edgeIndices=this.physicsBody.physicsEdgeIndices;var edges=this.body.edges;var node1=void 0,node2=void 0,node3=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true&&edge.toId!==edge.fromId){if(this.body.nodes[edge.toId]!==undefined&&this.body.nodes[edge.fromId]!==undefined){if(edge.edgeType.via!==undefined){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;node1=edge.to;node2=edge.edgeType.via;node3=edge.from;this._calculateSpringForce(node1,node2,.5*edgeLength);this._calculateSpringForce(node2,node3,.5*edgeLength)}else{edgeLength=edge.options.length===undefined?this.options.springLength*1.5:edge.options.length;this._calculateSpringForce(edge.from,edge.to,edgeLength)}}}}}},{key:\"_calculateSpringForce\",value:function _calculateSpringForce(node1,node2,edgeLength){var dx=node1.x-node2.x;var dy=node1.y-node2.y;var distance=Math.max(Math.sqrt(dx*dx+dy*dy),.01);var springForce=this.options.springConstant*(edgeLength-distance)/distance;var fx=dx*springForce;var fy=dy*springForce;if(this.physicsBody.forces[node1.id]!==undefined){this.physicsBody.forces[node1.id].x+=fx;this.physicsBody.forces[node1.id].y+=fy}if(this.physicsBody.forces[node2.id]!==undefined){this.physicsBody.forces[node2.id].x-=fx;this.physicsBody.forces[node2.id].y-=fy}}}]);return SpringSolver}();exports[\"default\"]=SpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalSpringSolver=function(){function HierarchicalSpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalSpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalSpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength,edge;var dx,dy,fx,fy,springForce,distance;var edges=this.body.edges;var factor=.5;var edgeIndices=this.physicsBody.physicsEdgeIndices;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];forces[nodeId].springFx=0;forces[nodeId].springFy=0}for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.connected===true){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;dx=edge.from.x-edge.to.x;dy=edge.from.y-edge.to.y;distance=Math.sqrt(dx*dx+dy*dy);distance=distance===0?.01:distance;springForce=this.options.springConstant*(edgeLength-distance)/distance;fx=dx*springForce;fy=dy*springForce;if(edge.to.level!=edge.from.level){if(forces[edge.toId]!==undefined){forces[edge.toId].springFx-=fx;forces[edge.toId].springFy-=fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].springFx+=fx;forces[edge.fromId].springFy+=fy}}else{if(forces[edge.toId]!==undefined){forces[edge.toId].x-=factor*fx;forces[edge.toId].y-=factor*fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].x+=factor*fx;forces[edge.fromId].y+=factor*fy}}}}springForce=1;var springFx,springFy;for(var _i2=0;_i2<nodeIndices.length;_i2++){var _nodeId=nodeIndices[_i2];springFx=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFx));springFy=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFy));forces[_nodeId].x+=springFx;forces[_nodeId].y+=springFy}var totalFx=0;var totalFy=0;for(var _i3=0;_i3<nodeIndices.length;_i3++){var _nodeId2=nodeIndices[_i3];totalFx+=forces[_nodeId2].x;totalFy+=forces[_nodeId2].y}var correctionFx=totalFx/nodeIndices.length;var correctionFy=totalFy/nodeIndices.length;for(var _i4=0;_i4<nodeIndices.length;_i4++){var _nodeId3=nodeIndices[_i4];forces[_nodeId3].x-=correctionFx;forces[_nodeId3].y-=correctionFy}}}]);return HierarchicalSpringSolver}();exports[\"default\"]=HierarchicalSpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BarnesHutSolver2=__webpack_require__(120);var _BarnesHutSolver3=_interopRequireDefault(_BarnesHutSolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedRepulsionSolver=function(_BarnesHutSolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedRepulsionSolver,_BarnesHutSolver);function ForceAtlas2BasedRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedRepulsionSolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedRepulsionSolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedRepulsionSolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedRepulsionSolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1*Math.random();dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var degree=node.edges.length+1;var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass*degree/Math.pow(distance,2);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}}]);return ForceAtlas2BasedRepulsionSolver}(_BarnesHutSolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CentralGravitySolver2=__webpack_require__(121);var _CentralGravitySolver3=_interopRequireDefault(_CentralGravitySolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedCentralGravitySolver=function(_CentralGravitySolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,_CentralGravitySolver);function ForceAtlas2BasedCentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedCentralGravitySolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedCentralGravitySolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedCentralGravitySolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){if(distance>0){var degree=node.edges.length+1;var gravityForce=this.options.centralGravity*degree*node.options.mass;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}}]);return ForceAtlas2BasedCentralGravitySolver}(_CentralGravitySolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedCentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var Cluster=__webpack_require__(228)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var Node=__webpack_require__(47)[\"default\"];var ClusterEngine=function(){function ClusterEngine(body){var _this=this;(0,_classCallCheck3[\"default\"])(this,ClusterEngine);this.body=body;this.clusteredNodes={};this.clusteredEdges={};this.options={};this.defaultOptions={};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_resetData\",function(){_this.clusteredNodes={};_this.clusteredEdges={}})}(0,_createClass3[\"default\"])(ClusterEngine,[{key:\"clusterByHubsize\",value:function clusterByHubsize(hubsize,options){if(hubsize===undefined){hubsize=this._getHubSize()}else if((typeof hubsize===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(hubsize))===\"object\"){options=this._checkOptions(hubsize);hubsize=this._getHubSize()}var nodesToCluster=[];for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];if(node.edges.length>=hubsize){nodesToCluster.push(node.id)}}for(var _i=0;_i<nodesToCluster.length;_i++){this.clusterByConnection(nodesToCluster[_i],options,true)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"cluster\",value:function cluster(){var _this2=this;var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(options.joinCondition===undefined){throw new Error(\"Cannot call clusterByNodeData without a joinCondition function in the options.\")}options=this._checkOptions(options);var childNodesObj={};var childEdgesObj={};util.forEach(this.body.nodes,function(node,nodeId){var clonedOptions=NetworkUtil.cloneOptions(node);if(options.joinCondition(clonedOptions)===true){childNodesObj[nodeId]=node;util.forEach(node.edges,function(edge){if(_this2.clusteredEdges[edge.id]===undefined){childEdgesObj[edge.id]=edge}})}});this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"clusterByEdgeCount\",value:function clusterByEdgeCount(edgeCount,options){var _this3=this;var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;options=this._checkOptions(options);var clusters=[];var usedNodes={};var edge=void 0,edges=void 0,relevantEdgeCount=void 0;var _loop=function _loop(i){var childNodesObj={};var childEdgesObj={};var nodeId=_this3.body.nodeIndices[i];var node=_this3.body.nodes[nodeId];if(usedNodes[nodeId]===undefined){relevantEdgeCount=0;edges=[];for(var j=0;j<node.edges.length;j++){edge=node.edges[j];if(_this3.clusteredEdges[edge.id]===undefined){if(edge.toId!==edge.fromId){relevantEdgeCount++}edges.push(edge)}}if(relevantEdgeCount===edgeCount){checkJoinCondition=function checkJoinCondition(node){if(options.joinCondition===undefined||options.joinCondition===null){return true}var clonedOptions=NetworkUtil.cloneOptions(node);return options.joinCondition(clonedOptions)};var gatheringSuccessful=true;for(var _j=0;_j<edges.length;_j++){edge=edges[_j];var childNodeId=_this3._getConnectedId(edge,nodeId);if(checkJoinCondition(node)){childEdgesObj[edge.id]=edge;childNodesObj[nodeId]=node;childNodesObj[childNodeId]=_this3.body.nodes[childNodeId];usedNodes[nodeId]=true}else{gatheringSuccessful=false;break}}if((0,_keys2[\"default\"])(childNodesObj).length>0&&(0,_keys2[\"default\"])(childEdgesObj).length>0&&gatheringSuccessful===true){findClusterData=function findClusterData(){for(var n=0;n<clusters.length;++n){for(var m in childNodesObj){if(clusters[n].nodes[m]!==undefined){return clusters[n]}}}return undefined};foundCluster=findClusterData();if(foundCluster!==undefined){for(var m in childNodesObj){if(foundCluster.nodes[m]===undefined){foundCluster.nodes[m]=childNodesObj[m]}}for(var _m in childEdgesObj){if(foundCluster.edges[_m]===undefined){foundCluster.edges[_m]=childEdgesObj[_m]}}}else{clusters.push({nodes:childNodesObj,edges:childEdgesObj})}}}}};for(var i=0;i<this.body.nodeIndices.length;i++){var checkJoinCondition;var findClusterData;var foundCluster;_loop(i)}for(var i=0;i<clusters.length;i++){this._cluster(clusters[i].nodes,clusters[i].edges,options,false)}if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"clusterOutliers\",value:function clusterOutliers(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(1,options,refreshData)}},{key:\"clusterBridges\",value:function clusterBridges(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(2,options,refreshData)}},{key:\"clusterByConnection\",value:function clusterByConnection(nodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(nodeId===undefined){throw new Error(\"No nodeId supplied to clusterByConnection!\")}if(this.body.nodes[nodeId]===undefined){throw new Error(\"The nodeId given to clusterByConnection does not exist!\")}var node=this.body.nodes[nodeId];options=this._checkOptions(options,node);if(options.clusterNodeProperties.x===undefined){options.clusterNodeProperties.x=node.x}if(options.clusterNodeProperties.y===undefined){options.clusterNodeProperties.y=node.y}if(options.clusterNodeProperties.fixed===undefined){options.clusterNodeProperties.fixed={};options.clusterNodeProperties.fixed.x=node.options.fixed.x;options.clusterNodeProperties.fixed.y=node.options.fixed.y}var childNodesObj={};var childEdgesObj={};var parentNodeId=node.id;var parentClonedOptions=NetworkUtil.cloneOptions(node);childNodesObj[parentNodeId]=node;for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(this.clusteredEdges[edge.id]===undefined){var childNodeId=this._getConnectedId(edge,parentNodeId);if(this.clusteredNodes[childNodeId]===undefined){if(childNodeId!==parentNodeId){if(options.joinCondition===undefined){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}else{var childClonedOptions=NetworkUtil.cloneOptions(this.body.nodes[childNodeId]);if(options.joinCondition(parentClonedOptions,childClonedOptions)===true){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}}}else{childEdgesObj[edge.id]=edge}}}}var childNodeIDs=(0,_keys2[\"default\"])(childNodesObj).map(function(childNode){return childNodesObj[childNode].id});for(childNode in childNodesObj){if(!childNodesObj.hasOwnProperty(childNode))continue;var childNode=childNodesObj[childNode];for(var y=0;y<childNode.edges.length;y++){var childEdge=childNode.edges[y];if(childNodeIDs.indexOf(this._getConnectedId(childEdge,childNode.id))>-1){childEdgesObj[childEdge.id]=childEdge}}}this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"_createClusterEdges\",value:function _createClusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,clusterEdgeProperties){var edge=void 0,childNodeId=void 0,childNode=void 0,toId=void 0,fromId=void 0,otherNodeId=void 0;var childKeys=(0,_keys2[\"default\"])(childNodesObj);var createEdges=[];for(var i=0;i<childKeys.length;i++){childNodeId=childKeys[i];childNode=childNodesObj[childNodeId];for(var j=0;j<childNode.edges.length;j++){edge=childNode.edges[j];if(this.clusteredEdges[edge.id]===undefined){if(edge.toId==edge.fromId){childEdgesObj[edge.id]=edge}else{if(edge.toId==childNodeId){toId=clusterNodeProperties.id;fromId=edge.fromId;otherNodeId=fromId}else{toId=edge.toId;fromId=clusterNodeProperties.id;otherNodeId=toId}}if(childNodesObj[otherNodeId]===undefined){createEdges.push({edge:edge,fromId:fromId,toId:toId})}}}}var newEdges=[];var getNewEdge=function getNewEdge(createdEdge){for(var _j2=0;_j2<newEdges.length;_j2++){var newEdge=newEdges[_j2];var matchToDirection=createdEdge.fromId===newEdge.fromId&&createdEdge.toId===newEdge.toId;var matchFromDirection=createdEdge.fromId===newEdge.toId&&createdEdge.toId===newEdge.fromId;if(matchToDirection||matchFromDirection){return newEdge}}return null};for(var _j3=0;_j3<createEdges.length;_j3++){var createdEdge=createEdges[_j3];var _edge=createdEdge.edge;var newEdge=getNewEdge(createdEdge);if(newEdge===null){newEdge=this._createClusteredEdge(createdEdge.fromId,createdEdge.toId,_edge,clusterEdgeProperties);newEdges.push(newEdge)}else{newEdge.clusteringEdgeReplacingIds.push(_edge.id)}this.body.edges[_edge.id].edgeReplacedById=newEdge.id;this._backupEdgeOptions(_edge);_edge.setOptions({physics:false})}}},{key:\"_checkOptions\",value:function _checkOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(options.clusterEdgeProperties===undefined){options.clusterEdgeProperties={}}if(options.clusterNodeProperties===undefined){options.clusterNodeProperties={}}return options}},{key:\"_cluster\",value:function _cluster(childNodesObj,childEdgesObj,options){var refreshData=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var tmpNodesToRemove=[];for(var _nodeId in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId)){if(this.clusteredNodes[_nodeId]!==undefined){tmpNodesToRemove.push(_nodeId)}}}for(var n=0;n<tmpNodesToRemove.length;++n){delete childNodesObj[tmpNodesToRemove[n]]}if((0,_keys2[\"default\"])(childNodesObj).length==0){return}if((0,_keys2[\"default\"])(childNodesObj).length==1&&options.clusterNodeProperties.allowSingleNodeCluster!=true){return}var clusterNodeProperties=util.deepExtend({},options.clusterNodeProperties);if(options.processProperties!==undefined){var childNodesOptions=[];for(var _nodeId2 in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId2)){var clonedOptions=NetworkUtil.cloneOptions(childNodesObj[_nodeId2]);childNodesOptions.push(clonedOptions)}}var childEdgesOptions=[];for(var edgeId in childEdgesObj){if(childEdgesObj.hasOwnProperty(edgeId)){if(edgeId.substr(0,12)!==\"clusterEdge:\"){var _clonedOptions=NetworkUtil.cloneOptions(childEdgesObj[edgeId],\"edge\");childEdgesOptions.push(_clonedOptions)}}}clusterNodeProperties=options.processProperties(clusterNodeProperties,childNodesOptions,childEdgesOptions);if(!clusterNodeProperties){throw new Error(\"The processProperties function does not return properties!\")}}if(clusterNodeProperties.id===undefined){clusterNodeProperties.id=\"cluster:\"+util.randomUUID()}var clusterId=clusterNodeProperties.id;if(clusterNodeProperties.label===undefined){clusterNodeProperties.label=\"cluster\"}var pos=undefined;if(clusterNodeProperties.x===undefined){pos=this._getClusterPosition(childNodesObj);clusterNodeProperties.x=pos.x}if(clusterNodeProperties.y===undefined){if(pos===undefined){pos=this._getClusterPosition(childNodesObj)}clusterNodeProperties.y=pos.y}clusterNodeProperties.id=clusterId;var clusterNode=this.body.functions.createNode(clusterNodeProperties,Cluster);clusterNode.containedNodes=childNodesObj;clusterNode.containedEdges=childEdgesObj;clusterNode.clusterEdgeProperties=options.clusterEdgeProperties;this.body.nodes[clusterNodeProperties.id]=clusterNode;this._clusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,options.clusterEdgeProperties);clusterNodeProperties.id=undefined;if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"_backupEdgeOptions\",value:function _backupEdgeOptions(edge){if(this.clusteredEdges[edge.id]===undefined){this.clusteredEdges[edge.id]={physics:edge.options.physics}}}},{key:\"_restoreEdge\",value:function _restoreEdge(edge){var originalOptions=this.clusteredEdges[edge.id];if(originalOptions!==undefined){edge.setOptions({physics:originalOptions.physics});delete this.clusteredEdges[edge.id]}}},{key:\"isCluster\",value:function isCluster(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].isCluster===true}else{console.log(\"Node does not exist.\");return false}}},{key:\"_getClusterPosition\",value:function _getClusterPosition(childNodesObj){var childKeys=(0,_keys2[\"default\"])(childNodesObj);var minX=childNodesObj[childKeys[0]].x;var maxX=childNodesObj[childKeys[0]].x;var minY=childNodesObj[childKeys[0]].y;var maxY=childNodesObj[childKeys[0]].y;var node=void 0;for(var i=1;i<childKeys.length;i++){node=childNodesObj[childKeys[i]];minX=node.x<minX?node.x:minX;maxX=node.x>maxX?node.x:maxX\n;minY=node.y<minY?node.y:minY;maxY=node.y>maxY?node.y:maxY}return{x:.5*(minX+maxX),y:.5*(minY+maxY)}}},{key:\"openCluster\",value:function openCluster(clusterNodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(clusterNodeId===undefined){throw new Error(\"No clusterNodeId supplied to openCluster.\")}var clusterNode=this.body.nodes[clusterNodeId];if(clusterNode===undefined){throw new Error(\"The clusterNodeId supplied to openCluster does not exist.\")}if(clusterNode.isCluster!==true||clusterNode.containedNodes===undefined||clusterNode.containedEdges===undefined){throw new Error(\"The node:\"+clusterNodeId+\" is not a valid cluster.\")}var stack=this.findNode(clusterNodeId);var parentIndex=stack.indexOf(clusterNodeId)-1;if(parentIndex>=0){var parentClusterNodeId=stack[parentIndex];var parentClusterNode=this.body.nodes[parentClusterNodeId];parentClusterNode._openChildCluster(clusterNodeId);delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}return}var containedNodes=clusterNode.containedNodes;var containedEdges=clusterNode.containedEdges;if(options!==undefined&&options.releaseFunction!==undefined&&typeof options.releaseFunction===\"function\"){var positions={};var clusterPosition={x:clusterNode.x,y:clusterNode.y};for(var _nodeId3 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId3)){var containedNode=this.body.nodes[_nodeId3];positions[_nodeId3]={x:containedNode.x,y:containedNode.y}}}var newPositions=options.releaseFunction(clusterPosition,positions);for(var _nodeId4 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId4)){var _containedNode=this.body.nodes[_nodeId4];if(newPositions[_nodeId4]!==undefined){_containedNode.x=newPositions[_nodeId4].x===undefined?clusterNode.x:newPositions[_nodeId4].x;_containedNode.y=newPositions[_nodeId4].y===undefined?clusterNode.y:newPositions[_nodeId4].y}}}}else{util.forEach(containedNodes,function(containedNode){if(containedNode.options.fixed.x===false){containedNode.x=clusterNode.x}if(containedNode.options.fixed.y===false){containedNode.y=clusterNode.y}})}for(var _nodeId5 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId5)){var _containedNode2=this.body.nodes[_nodeId5];_containedNode2.vx=clusterNode.vx;_containedNode2.vy=clusterNode.vy;_containedNode2.setOptions({physics:true});delete this.clusteredNodes[_nodeId5]}}var edgesToBeDeleted=[];for(var i=0;i<clusterNode.edges.length;i++){edgesToBeDeleted.push(clusterNode.edges[i])}for(var _i2=0;_i2<edgesToBeDeleted.length;_i2++){var edge=edgesToBeDeleted[_i2];var otherNodeId=this._getConnectedId(edge,clusterNodeId);var otherNode=this.clusteredNodes[otherNodeId];for(var j=0;j<edge.clusteringEdgeReplacingIds.length;j++){var transferId=edge.clusteringEdgeReplacingIds[j];var transferEdge=this.body.edges[transferId];if(transferEdge===undefined)continue;if(otherNode!==undefined){var otherCluster=this.body.nodes[otherNode.clusterId];otherCluster.containedEdges[transferEdge.id]=transferEdge;delete containedEdges[transferEdge.id];var fromId=transferEdge.fromId;var toId=transferEdge.toId;if(transferEdge.toId==otherNodeId){toId=otherNode.clusterId}else{fromId=otherNode.clusterId}this._createClusteredEdge(fromId,toId,transferEdge,otherCluster.clusterEdgeProperties,{hidden:false,physics:true})}else{this._restoreEdge(transferEdge)}}edge.remove()}for(var edgeId in containedEdges){if(containedEdges.hasOwnProperty(edgeId)){this._restoreEdge(containedEdges[edgeId])}}delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"getNodesInCluster\",value:function getNodesInCluster(clusterId){var nodesArray=[];if(this.isCluster(clusterId)===true){var containedNodes=this.body.nodes[clusterId].containedNodes;for(var _nodeId6 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId6)){nodesArray.push(this.body.nodes[_nodeId6].id)}}}return nodesArray}},{key:\"findNode\",value:function findNode(nodeId){var stack=[];var max=100;var counter=0;var node=void 0;while(this.clusteredNodes[nodeId]!==undefined&&counter<max){node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);nodeId=this.clusteredNodes[nodeId].clusterId;counter++}node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);stack.reverse();return stack}},{key:\"updateClusteredNode\",value:function updateClusteredNode(clusteredNodeId,newOptions){if(clusteredNodeId===undefined){throw new Error(\"No clusteredNodeId supplied to updateClusteredNode.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateClusteredNode.\")}if(this.body.nodes[clusteredNodeId]===undefined){throw new Error(\"The clusteredNodeId supplied to updateClusteredNode does not exist.\")}this.body.nodes[clusteredNodeId].setOptions(newOptions);this.body.emitter.emit(\"_dataChanged\")}},{key:\"updateEdge\",value:function updateEdge(startEdgeId,newOptions){if(startEdgeId===undefined){throw new Error(\"No startEdgeId supplied to updateEdge.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateEdge.\")}if(this.body.edges[startEdgeId]===undefined){throw new Error(\"The startEdgeId supplied to updateEdge does not exist.\")}var allEdgeIds=this.getClusteredEdges(startEdgeId);for(var i=0;i<allEdgeIds.length;i++){var edge=this.body.edges[allEdgeIds[i]];edge.setOptions(newOptions)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"getClusteredEdges\",value:function getClusteredEdges(edgeId){var stack=[];var max=100;var counter=0;while(edgeId!==undefined&&this.body.edges[edgeId]!==undefined&&counter<max){stack.push(this.body.edges[edgeId].id);edgeId=this.body.edges[edgeId].edgeReplacedById;counter++}stack.reverse();return stack}},{key:\"getBaseEdge\",value:function getBaseEdge(clusteredEdgeId){return this.getBaseEdges(clusteredEdgeId)[0]}},{key:\"getBaseEdges\",value:function getBaseEdges(clusteredEdgeId){var IdsToHandle=[clusteredEdgeId];var doneIds=[];var foundIds=[];var max=100;var counter=0;while(IdsToHandle.length>0&&counter<max){var nextId=IdsToHandle.pop();if(nextId===undefined)continue;var nextEdge=this.body.edges[nextId];if(nextEdge===undefined)continue;counter++;var replacingIds=nextEdge.clusteringEdgeReplacingIds;if(replacingIds===undefined){foundIds.push(nextId)}else{for(var i=0;i<replacingIds.length;++i){var replacingId=replacingIds[i];if(IdsToHandle.indexOf(replacingIds)!==-1||doneIds.indexOf(replacingIds)!==-1){continue}IdsToHandle.push(replacingId)}}doneIds.push(nextId)}return foundIds}},{key:\"_getConnectedId\",value:function _getConnectedId(edge,nodeId){if(edge.toId!=nodeId){return edge.toId}else if(edge.fromId!=nodeId){return edge.fromId}else{return edge.fromId}}},{key:\"_getHubSize\",value:function _getHubSize(){var average=0;var averageSquared=0;var hubCounter=0;var largestHub=0;for(var i=0;i<this.body.nodeIndices.length;i++){var _node=this.body.nodes[this.body.nodeIndices[i]];if(_node.edges.length>largestHub){largestHub=_node.edges.length}average+=_node.edges.length;averageSquared+=Math.pow(_node.edges.length,2);hubCounter+=1}average=average/hubCounter;averageSquared=averageSquared/hubCounter;var variance=averageSquared-Math.pow(average,2);var standardDeviation=Math.sqrt(variance);var hubThreshold=Math.floor(average+2*standardDeviation);if(hubThreshold>largestHub){hubThreshold=largestHub}return hubThreshold}},{key:\"_createClusteredEdge\",value:function _createClusteredEdge(fromId,toId,baseEdge,clusterEdgeProperties,extraOptions){var clonedOptions=NetworkUtil.cloneOptions(baseEdge,\"edge\");util.deepExtend(clonedOptions,clusterEdgeProperties);clonedOptions.from=fromId;clonedOptions.to=toId;clonedOptions.id=\"clusterEdge:\"+util.randomUUID();if(extraOptions!==undefined){util.deepExtend(clonedOptions,extraOptions)}var newEdge=this.body.functions.createEdge(clonedOptions);newEdge.clusteringEdgeReplacingIds=[baseEdge.id];newEdge.connect();this.body.edges[newEdge.id]=newEdge;return newEdge}},{key:\"_clusterEdges\",value:function _clusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties){if(childEdges instanceof Edge){var edge=childEdges;var obj={};obj[edge.id]=edge;childEdges=obj}if(childNodes instanceof Node){var _node2=childNodes;var _obj={};_obj[_node2.id]=_node2;childNodes=_obj}if(clusterNode===undefined||clusterNode===null){throw new Error(\"_clusterEdges: parameter clusterNode required\")}if(clusterEdgeProperties===undefined){clusterEdgeProperties=clusterNode.clusterEdgeProperties}this._createClusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties);for(var edgeId in childEdges){if(childEdges.hasOwnProperty(edgeId)){if(this.body.edges[edgeId]!==undefined){var _edge2=this.body.edges[edgeId];this._backupEdgeOptions(_edge2);_edge2.setOptions({physics:false})}}}for(var _nodeId7 in childNodes){if(childNodes.hasOwnProperty(_nodeId7)){this.clusteredNodes[_nodeId7]={clusterId:clusterNode.id,node:this.body.nodes[_nodeId7]};this.body.nodes[_nodeId7].setOptions({physics:false})}}}},{key:\"_getClusterNodeForNode\",value:function _getClusterNodeForNode(nodeId){if(nodeId===undefined)return undefined;var clusteredNode=this.clusteredNodes[nodeId];if(clusteredNode===undefined)return undefined;var clusterId=clusteredNode.clusterId;if(clusterId===undefined)return undefined;return this.body.nodes[clusterId]}},{key:\"_filter\",value:function _filter(arr,callback){var ret=[];util.forEach(arr,function(item){if(callback(item)){ret.push(item)}});return ret}},{key:\"_updateState\",value:function _updateState(){var _this4=this;var nodeId=void 0;var deletedNodeIds=[];var deletedEdgeIds=[];var eachClusterNode=function eachClusterNode(callback){util.forEach(_this4.body.nodes,function(node){if(node.isCluster===true){callback(node)}})};for(nodeId in this.clusteredNodes){if(!this.clusteredNodes.hasOwnProperty(nodeId))continue;var _node3=this.body.nodes[nodeId];if(_node3===undefined){deletedNodeIds.push(nodeId)}}eachClusterNode(function(clusterNode){for(var n=0;n<deletedNodeIds.length;n++){delete clusterNode.containedNodes[deletedNodeIds[n]]}});for(var n=0;n<deletedNodeIds.length;n++){delete this.clusteredNodes[deletedNodeIds[n]]}util.forEach(this.clusteredEdges,function(edgeId){var edge=_this4.body.edges[edgeId];if(edge===undefined||!edge.endPointsValid()){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(clusterNode.containedEdges,function(edge,edgeId){if(!edge.endPointsValid()&&deletedEdgeIds.indexOf(edgeId)===-1){deletedEdgeIds.push(edgeId)}})});util.forEach(this.body.edges,function(edge,edgeId){var isValid=true;var replacedIds=edge.clusteringEdgeReplacingIds;if(replacedIds!==undefined){var numValid=0;util.forEach(replacedIds,function(containedEdgeId){var containedEdge=_this4.body.edges[containedEdgeId];if(containedEdge!==undefined&&containedEdge.endPointsValid()){numValid+=1}});isValid=numValid>0}if(!edge.endPointsValid()||!isValid){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(deletedEdgeIds,function(deletedEdgeId){delete clusterNode.containedEdges[deletedEdgeId];util.forEach(clusterNode.edges,function(edge,m){if(edge.id===deletedEdgeId){clusterNode.edges[m]=null;return}edge.clusteringEdgeReplacingIds=_this4._filter(edge.clusteringEdgeReplacingIds,function(id){return deletedEdgeIds.indexOf(id)===-1})});clusterNode.edges=_this4._filter(clusterNode.edges,function(item){return item!==null})})});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.clusteredEdges[edgeId]});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.body.edges[edgeId]});var ids=(0,_keys2[\"default\"])(this.body.edges);util.forEach(ids,function(edgeId){var edge=_this4.body.edges[edgeId];var shouldBeClustered=_this4._isClusteredNode(edge.fromId)||_this4._isClusteredNode(edge.toId);if(shouldBeClustered===_this4._isClusteredEdge(edge.id)){return}if(shouldBeClustered){var clusterFrom=_this4._getClusterNodeForNode(edge.fromId);if(clusterFrom!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.fromId],edge,clusterFrom)}var clusterTo=_this4._getClusterNodeForNode(edge.toId);if(clusterTo!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.toId],edge,clusterTo)}}else{throw new Error(\"remove edge from clustering not implemented!\")}});var changed=false;var continueLoop=true;var _loop2=function _loop2(){var clustersToOpen=[];eachClusterNode(function(clusterNode){var numNodes=(0,_keys2[\"default\"])(clusterNode.containedNodes).length;var allowSingle=clusterNode.options.allowSingleNodeCluster===true;if(allowSingle&&numNodes<1||!allowSingle&&numNodes<2){clustersToOpen.push(clusterNode.id)}});for(var _n=0;_n<clustersToOpen.length;++_n){_this4.openCluster(clustersToOpen[_n],{},false)}continueLoop=clustersToOpen.length>0;changed=changed||continueLoop};while(continueLoop){_loop2()}if(changed){this._updateState()}}},{key:\"_isClusteredNode\",value:function _isClusteredNode(nodeId){return this.clusteredNodes[nodeId]!==undefined}},{key:\"_isClusteredEdge\",value:function _isClusteredEdge(edgeId){return this.clusteredEdges[edgeId]!==undefined}}]);return ClusterEngine}();exports[\"default\"]=ClusterEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Node=__webpack_require__(47)[\"default\"];var Cluster=function(_Node){(0,_inherits3[\"default\"])(Cluster,_Node);function Cluster(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Cluster);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Cluster.__proto__||(0,_getPrototypeOf2[\"default\"])(Cluster)).call(this,options,body,imagelist,grouplist,globalOptions,defaultOptions));_this.isCluster=true;_this.containedNodes={};_this.containedEdges={};return _this}(0,_createClass3[\"default\"])(Cluster,[{key:\"_openChildCluster\",value:function _openChildCluster(childClusterId){var _this2=this;var childCluster=this.body.nodes[childClusterId];if(this.containedNodes[childClusterId]===undefined){throw new Error(\"node with id: \"+childClusterId+\" not in current cluster\")}if(!childCluster.isCluster){throw new Error(\"node with id: \"+childClusterId+\" is not a cluster\")}delete this.containedNodes[childClusterId];util.forEach(childCluster.edges,function(edge){delete _this2.containedEdges[edge.id]});util.forEach(childCluster.containedNodes,function(node,nodeId){_this2.containedNodes[nodeId]=node});childCluster.containedNodes={};util.forEach(childCluster.containedEdges,function(edge,edgeId){_this2.containedEdges[edgeId]=edge});childCluster.containedEdges={};util.forEach(childCluster.edges,function(clusterEdge){util.forEach(_this2.edges,function(parentClusterEdge){var index=parentClusterEdge.clusteringEdgeReplacingIds.indexOf(clusterEdge.id);if(index===-1)return;util.forEach(clusterEdge.clusteringEdgeReplacingIds,function(srcId){parentClusterEdge.clusteringEdgeReplacingIds.push(srcId);_this2.body.edges[srcId].edgeReplacedById=parentClusterEdge.id});parentClusterEdge.clusteringEdgeReplacingIds.splice(index,1)})});childCluster.edges=[]}}]);return Cluster}(Node);exports[\"default\"]=Cluster},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _initRequestAnimationFrame(){var func;if(window!==undefined){func=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame}if(func===undefined){window.requestAnimationFrame=function(callback){callback()}}else{window.requestAnimationFrame=func}}var util=__webpack_require__(2);var CanvasRenderer=function(){function CanvasRenderer(body,canvas){(0,_classCallCheck3[\"default\"])(this,CanvasRenderer);_initRequestAnimationFrame();this.body=body;this.canvas=canvas;this.redrawRequested=false;this.renderTimer=undefined;this.requiresTimeout=true;this.renderingActive=false;this.renderRequests=0;this.allowRedraw=true;this.dragging=false;this.options={};this.defaultOptions={hideEdgesOnDrag:false,hideNodesOnDrag:false};util.extend(this.options,this.defaultOptions);this._determineBrowserMethod();this.bindEventListeners()}(0,_createClass3[\"default\"])(CanvasRenderer,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"dragStart\",function(){_this.dragging=true});this.body.emitter.on(\"dragEnd\",function(){_this.dragging=false});this.body.emitter.on(\"_resizeNodes\",function(){_this._resizeNodes()});this.body.emitter.on(\"_redraw\",function(){if(_this.renderingActive===false){_this._redraw()}});this.body.emitter.on(\"_blockRedraw\",function(){_this.allowRedraw=false});this.body.emitter.on(\"_allowRedraw\",function(){_this.allowRedraw=true;_this.redrawRequested=false});this.body.emitter.on(\"_requestRedraw\",this._requestRedraw.bind(this));this.body.emitter.on(\"_startRendering\",function(){_this.renderRequests+=1;_this.renderingActive=true;_this._startRendering()});this.body.emitter.on(\"_stopRendering\",function(){_this.renderRequests-=1;_this.renderingActive=_this.renderRequests>0;_this.renderTimer=undefined});this.body.emitter.on(\"destroy\",function(){_this.renderRequests=0;_this.allowRedraw=false;_this.renderingActive=false;if(_this.requiresTimeout===true){clearTimeout(_this.renderTimer)}else{window.cancelAnimationFrame(_this.renderTimer)}_this.body.emitter.off()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"_requestNextFrame\",value:function _requestNextFrame(callback,delay){if(typeof window===\"undefined\")return;var timer=void 0;var myWindow=window;if(this.requiresTimeout===true){timer=myWindow.setTimeout(callback,delay)}else{if(myWindow.requestAnimationFrame){timer=myWindow.requestAnimationFrame(callback)}}return timer}},{key:\"_startRendering\",value:function _startRendering(){if(this.renderingActive===true){if(this.renderTimer===undefined){this.renderTimer=this._requestNextFrame(this._renderStep.bind(this),this.simulationInterval)}}}},{key:\"_renderStep\",value:function _renderStep(){if(this.renderingActive===true){this.renderTimer=undefined;if(this.requiresTimeout===true){this._startRendering()}this._redraw();if(this.requiresTimeout===false){this._startRendering()}}}},{key:\"redraw\",value:function redraw(){this.body.emitter.emit(\"setSize\");this._redraw()}},{key:\"_requestRedraw\",value:function _requestRedraw(){var _this2=this;if(this.redrawRequested!==true&&this.renderingActive===false&&this.allowRedraw===true){this.redrawRequested=true;this._requestNextFrame(function(){_this2._redraw(false)},0)}}},{key:\"_redraw\",value:function _redraw(){var hidden=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.allowRedraw===true){this.body.emitter.emit(\"initRedraw\");this.redrawRequested=false;if(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0){this.canvas.setSize()}this.canvas.setTransform();var ctx=this.canvas.getContext();var w=this.canvas.frame.canvas.clientWidth;var h=this.canvas.frame.canvas.clientHeight;ctx.clearRect(0,0,w,h);if(this.canvas.frame.clientWidth===0){return}ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);ctx.beginPath();this.body.emitter.emit(\"beforeDrawing\",ctx);ctx.closePath();if(hidden===false){if(this.dragging===false||this.dragging===true&&this.options.hideEdgesOnDrag===false){this._drawEdges(ctx)}}if(this.dragging===false||this.dragging===true&&this.options.hideNodesOnDrag===false){this._drawNodes(ctx,hidden)}ctx.beginPath();this.body.emitter.emit(\"afterDrawing\",ctx);ctx.closePath();ctx.restore();if(hidden===true){ctx.clearRect(0,0,w,h)}}}},{key:\"_resizeNodes\",value:function _resizeNodes(){this.canvas.setTransform();var ctx=this.canvas.getContext();ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);var nodes=this.body.nodes;var node=void 0;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){node=nodes[nodeId];node.resize(ctx);node.updateBoundingBox(ctx,node.selected)}}ctx.restore()}},{key:\"_drawNodes\",value:function _drawNodes(ctx){var alwaysShow=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var nodes=this.body.nodes;var nodeIndices=this.body.nodeIndices;var node=void 0;var selected=[];var margin=20;var topLeft=this.canvas.DOMtoCanvas({x:-margin,y:-margin});var bottomRight=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+margin,y:this.canvas.frame.canvas.clientHeight+margin});var viewableArea={top:topLeft.y,left:topLeft.x,bottom:bottomRight.y,right:bottomRight.x};for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isSelected()){selected.push(nodeIndices[i])}else{if(alwaysShow===true){node.draw(ctx)}else if(node.isBoundingBoxOverlappingWith(viewableArea)===true){node.draw(ctx)}else{node.updateBoundingBox(ctx,node.selected)}}}for(var _i=0;_i<selected.length;_i++){node=nodes[selected[_i]];node.draw(ctx)}}},{key:\"_drawEdges\",value:function _drawEdges(ctx){var edges=this.body.edges;var edgeIndices=this.body.edgeIndices;var edge=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true){edge.draw(ctx)}}}},{key:\"_determineBrowserMethod\",value:function _determineBrowserMethod(){if(typeof window!==\"undefined\"){var browserType=navigator.userAgent.toLowerCase();this.requiresTimeout=false;if(browserType.indexOf(\"msie 9.0\")!=-1){this.requiresTimeout=true}else if(browserType.indexOf(\"safari\")!=-1){if(browserType.indexOf(\"chrome\")<=-1){this.requiresTimeout=true}}}else{this.requiresTimeout=true}}}]);return CanvasRenderer}();exports[\"default\"]=CanvasRenderer},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var Canvas=function(){function Canvas(body){(0,_classCallCheck3[\"default\"])(this,Canvas);this.body=body;this.pixelRatio=1;this.resizeTimer=undefined;this.resizeFunction=this._onResize.bind(this);this.cameraState={};this.initialized=false;this.canvasViewCenter={};this.options={};this.defaultOptions={autoResize:true,height:\"100%\",width:\"100%\"};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(Canvas,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.once(\"resize\",function(obj){if(obj.width!==0){_this.body.view.translation.x=obj.width*.5}if(obj.height!==0){_this.body.view.translation.y=obj.height*.5}});this.body.emitter.on(\"setSize\",this.setSize.bind(this));this.body.emitter.on(\"destroy\",function(){_this.hammerFrame.destroy();_this.hammer.destroy();_this._cleanUp()})}},{key:\"setOptions\",value:function setOptions(options){var _this2=this;if(options!==undefined){var fields=[\"width\",\"height\",\"autoResize\"];util.selectiveDeepExtend(fields,this.options,options)}if(this.options.autoResize===true){this._cleanUp();this.resizeTimer=setInterval(function(){var changed=_this2.setSize();if(changed===true){_this2.body.emitter.emit(\"_requestRedraw\")}},1e3);this.resizeFunction=this._onResize.bind(this);util.addEventListener(window,\"resize\",this.resizeFunction)}}},{key:\"_cleanUp\",value:function _cleanUp(){if(this.resizeTimer!==undefined){clearInterval(this.resizeTimer)}util.removeEventListener(window,\"resize\",this.resizeFunction);this.resizeFunction=undefined}},{key:\"_onResize\",value:function _onResize(){this.setSize();this.body.emitter.emit(\"_redraw\")}},{key:\"_getCameraState\",value:function _getCameraState(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.pixelRatio;if(this.initialized===true){this.cameraState.previousWidth=this.frame.canvas.width/pixelRatio;this.cameraState.previousHeight=this.frame.canvas.height/pixelRatio;this.cameraState.scale=this.body.view.scale;this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/pixelRatio,y:.5*this.frame.canvas.height/pixelRatio})}}},{key:\"_setCameraState\",value:function _setCameraState(){if(this.cameraState.scale!==undefined&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0){var widthRatio=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth;var heightRatio=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;var newScale=this.cameraState.scale;if(widthRatio!=1&&heightRatio!=1){newScale=this.cameraState.scale*.5*(widthRatio+heightRatio)}else if(widthRatio!=1){newScale=this.cameraState.scale*widthRatio}else if(heightRatio!=1){newScale=this.cameraState.scale*heightRatio}this.body.view.scale=newScale;var currentViewCenter=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight});var distanceFromCenter={x:currentViewCenter.x-this.cameraState.position.x,y:currentViewCenter.y-this.cameraState.position.y};this.body.view.translation.x+=distanceFromCenter.x*this.body.view.scale;this.body.view.translation.y+=distanceFromCenter.y*this.body.view.scale}}},{key:\"_prepareValue\",value:function _prepareValue(value){if(typeof value===\"number\"){return value+\"px\"}else if(typeof value===\"string\"){if(value.indexOf(\"%\")!==-1||value.indexOf(\"px\")!==-1){return value}else if(value.indexOf(\"%\")===-1){return value+\"px\"}}throw new Error(\"Could not use the value supplied for width or height:\"+value)}},{key:\"_create\",value:function _create(){while(this.body.container.hasChildNodes()){this.body.container.removeChild(this.body.container.firstChild)}this.frame=document.createElement(\"div\");this.frame.className=\"vis-network\";this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.tabIndex=900;this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);if(!this.frame.canvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}else{this._setPixelRatio();this.setTransform()}this.body.container.appendChild(this.frame);this.body.view.scale=1;this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight};this._bindHammer()}},{key:\"_bindHammer\",value:function _bindHammer(){var _this3=this;if(this.hammer!==undefined){this.hammer.destroy()}this.drag={};this.pinch={};this.hammer=new Hammer(this.frame.canvas);this.hammer.get(\"pinch\").set({enable:true});this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_ALL});hammerUtil.onTouch(this.hammer,function(event){_this3.body.eventListeners.onTouch(event)});this.hammer.on(\"tap\",function(event){_this3.body.eventListeners.onTap(event)});this.hammer.on(\"doubletap\",function(event){_this3.body.eventListeners.onDoubleTap(event)});this.hammer.on(\"press\",function(event){_this3.body.eventListeners.onHold(event)});this.hammer.on(\"panstart\",function(event){_this3.body.eventListeners.onDragStart(event)});this.hammer.on(\"panmove\",function(event){_this3.body.eventListeners.onDrag(event)});this.hammer.on(\"panend\",function(event){_this3.body.eventListeners.onDragEnd(event)});this.hammer.on(\"pinch\",function(event){_this3.body.eventListeners.onPinch(event)});this.frame.canvas.addEventListener(\"mousewheel\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"DOMMouseScroll\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"mousemove\",function(event){_this3.body.eventListeners.onMouseMove(event)});this.frame.canvas.addEventListener(\"contextmenu\",function(event){_this3.body.eventListeners.onContext(event)});this.hammerFrame=new Hammer(this.frame);hammerUtil.onRelease(this.hammerFrame,function(event){_this3.body.eventListeners.onRelease(event)})}},{key:\"setSize\",value:function setSize(){var width=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.width;var height=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.height;width=this._prepareValue(width);height=this._prepareValue(height);var emitEvent=false;var oldWidth=this.frame.canvas.width;var oldHeight=this.frame.canvas.height;var previousRatio=this.pixelRatio;this._setPixelRatio();if(width!=this.options.width||height!=this.options.height||this.frame.style.width!=width||this.frame.style.height!=height){this._getCameraState(previousRatio);this.frame.style.width=width;this.frame.style.height=height;this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.options.width=width;this.options.height=height;this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight};emitEvent=true}else{var newWidth=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);var newHeight=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);if(this.frame.canvas.width!==newWidth||this.frame.canvas.height!==newHeight){this._getCameraState(previousRatio)}if(this.frame.canvas.width!==newWidth){this.frame.canvas.width=newWidth;emitEvent=true}if(this.frame.canvas.height!==newHeight){this.frame.canvas.height=newHeight;emitEvent=true}}if(emitEvent===true){this.body.emitter.emit(\"resize\",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(oldWidth/this.pixelRatio),oldHeight:Math.round(oldHeight/this.pixelRatio)});this._setCameraState()}this.initialized=true;return emitEvent}},{key:\"getContext\",value:function getContext(){return this.frame.canvas.getContext(\"2d\")}},{key:\"_determinePixelRatio\",value:function _determinePixelRatio(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}var numerator=1;if(typeof window!==\"undefined\"){numerator=window.devicePixelRatio||1}var denominator=ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1;return numerator/denominator}},{key:\"_setPixelRatio\",value:function _setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}},{key:\"setTransform\",value:function setTransform(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:\"_XconvertDOMtoCanvas\",value:function _XconvertDOMtoCanvas(x){return(x-this.body.view.translation.x)/this.body.view.scale}},{\nkey:\"_XconvertCanvasToDOM\",value:function _XconvertCanvasToDOM(x){return x*this.body.view.scale+this.body.view.translation.x}},{key:\"_YconvertDOMtoCanvas\",value:function _YconvertDOMtoCanvas(y){return(y-this.body.view.translation.y)/this.body.view.scale}},{key:\"_YconvertCanvasToDOM\",value:function _YconvertCanvasToDOM(y){return y*this.body.view.scale+this.body.view.translation.y}},{key:\"canvasToDOM\",value:function canvasToDOM(pos){return{x:this._XconvertCanvasToDOM(pos.x),y:this._YconvertCanvasToDOM(pos.y)}}},{key:\"DOMtoCanvas\",value:function DOMtoCanvas(pos){return{x:this._XconvertDOMtoCanvas(pos.x),y:this._YconvertDOMtoCanvas(pos.y)}}}]);return Canvas}();exports[\"default\"]=Canvas},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var View=function(){function View(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,View);this.body=body;this.canvas=canvas;this.animationSpeed=1/this.renderRefreshRate;this.animationEasingFunction=\"easeInOutQuint\";this.easingTime=0;this.sourceScale=0;this.targetScale=0;this.sourceTranslation=0;this.targetTranslation=0;this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined;this.touchTime=0;this.viewFunction=undefined;this.body.emitter.on(\"fit\",this.fit.bind(this));this.body.emitter.on(\"animationFinished\",function(){_this.body.emitter.emit(\"_stopRendering\")});this.body.emitter.on(\"unlockNode\",this.releaseNode.bind(this))}(0,_createClass3[\"default\"])(View,[{key:\"setOptions\",value:function setOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.options=options}},{key:\"fit\",value:function fit(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{nodes:[]};var initialZoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var range=void 0;var zoomLevel=void 0;if(options.nodes===undefined||options.nodes.length===0){options.nodes=this.body.nodeIndices}if(initialZoom===true){var positionDefined=0;for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(node.predefinedPosition===true){positionDefined+=1}}}if(positionDefined>.5*this.body.nodeIndices.length){this.fit(options,false);return}range=NetworkUtil.getRange(this.body.nodes,options.nodes);var numberOfNodes=this.body.nodeIndices.length;zoomLevel=12.662/(numberOfNodes+7.4147)+.0964822;var factor=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);zoomLevel*=factor}else{this.body.emitter.emit(\"_resizeNodes\");range=NetworkUtil.getRange(this.body.nodes,options.nodes);var xDistance=Math.abs(range.maxX-range.minX)*1.1;var yDistance=Math.abs(range.maxY-range.minY)*1.1;var xZoomLevel=this.canvas.frame.canvas.clientWidth/xDistance;var yZoomLevel=this.canvas.frame.canvas.clientHeight/yDistance;zoomLevel=xZoomLevel<=yZoomLevel?xZoomLevel:yZoomLevel}if(zoomLevel>1){zoomLevel=1}else if(zoomLevel===0){zoomLevel=1}var center=NetworkUtil.findCenter(range);var animationOptions={position:center,scale:zoomLevel,animation:options.animation};this.moveTo(animationOptions)}},{key:\"focus\",value:function focus(nodeId){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(this.body.nodes[nodeId]!==undefined){var nodePosition={x:this.body.nodes[nodeId].x,y:this.body.nodes[nodeId].y};options.position=nodePosition;options.lockedOnNode=nodeId;this.moveTo(options)}else{console.log(\"Node: \"+nodeId+\" cannot be found.\")}}},{key:\"moveTo\",value:function moveTo(options){if(options===undefined){options={};return}if(options.offset===undefined){options.offset={x:0,y:0}}if(options.offset.x===undefined){options.offset.x=0}if(options.offset.y===undefined){options.offset.y=0}if(options.scale===undefined){options.scale=this.body.view.scale}if(options.position===undefined){options.position=this.getViewPosition()}if(options.animation===undefined){options.animation={duration:0}}if(options.animation===false){options.animation={duration:0}}if(options.animation===true){options.animation={}}if(options.animation.duration===undefined){options.animation.duration=1e3}if(options.animation.easingFunction===undefined){options.animation.easingFunction=\"easeInOutQuad\"}this.animateView(options)}},{key:\"animateView\",value:function animateView(options){if(options===undefined){return}this.animationEasingFunction=options.animation.easingFunction;this.releaseNode();if(options.locked===true){this.lockedOnNodeId=options.lockedOnNode;this.lockedOnNodeOffset=options.offset}if(this.easingTime!=0){this._transitionRedraw(true)}this.sourceScale=this.body.view.scale;this.sourceTranslation=this.body.view.translation;this.targetScale=options.scale;this.body.view.scale=this.targetScale;var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-options.position.x,y:viewCenter.y-options.position.y};this.targetTranslation={x:this.sourceTranslation.x+distanceFromCenter.x*this.targetScale+options.offset.x,y:this.sourceTranslation.y+distanceFromCenter.y*this.targetScale+options.offset.y};if(options.animation.duration===0){if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}else{this.body.view.scale=this.targetScale;this.body.view.translation=this.targetTranslation;this.body.emitter.emit(\"_requestRedraw\")}}else{this.animationSpeed=1/(60*options.animation.duration*.001)||1/60;this.animationEasingFunction=options.animation.easingFunction;this.viewFunction=this._transitionRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}},{key:\"_lockedRedraw\",value:function _lockedRedraw(){var nodePosition={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y};var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-nodePosition.x,y:viewCenter.y-nodePosition.y};var sourceTranslation=this.body.view.translation;var targetTranslation={x:sourceTranslation.x+distanceFromCenter.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:sourceTranslation.y+distanceFromCenter.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=targetTranslation}},{key:\"releaseNode\",value:function releaseNode(){if(this.lockedOnNodeId!==undefined&&this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined}}},{key:\"_transitionRedraw\",value:function _transitionRedraw(){var finished=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;this.easingTime+=this.animationSpeed;this.easingTime=finished===true?1:this.easingTime;var progress=util.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*progress;this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*progress,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*progress};if(this.easingTime>=1){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.easingTime=0;if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}this.body.emitter.emit(\"animationFinished\")}}},{key:\"getScale\",value:function getScale(){return this.body.view.scale}},{key:\"getViewPosition\",value:function getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]);return View}();exports[\"default\"]=View},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NavigationHandler=__webpack_require__(233)[\"default\"];var Popup=__webpack_require__(104)[\"default\"];var InteractionHandler=function(){function InteractionHandler(body,canvas,selectionHandler){(0,_classCallCheck3[\"default\"])(this,InteractionHandler);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.navigationHandler=new NavigationHandler(body,canvas);this.body.eventListeners.onTap=this.onTap.bind(this);this.body.eventListeners.onTouch=this.onTouch.bind(this);this.body.eventListeners.onDoubleTap=this.onDoubleTap.bind(this);this.body.eventListeners.onHold=this.onHold.bind(this);this.body.eventListeners.onDragStart=this.onDragStart.bind(this);this.body.eventListeners.onDrag=this.onDrag.bind(this);this.body.eventListeners.onDragEnd=this.onDragEnd.bind(this);this.body.eventListeners.onMouseWheel=this.onMouseWheel.bind(this);this.body.eventListeners.onPinch=this.onPinch.bind(this);this.body.eventListeners.onMouseMove=this.onMouseMove.bind(this);this.body.eventListeners.onRelease=this.onRelease.bind(this);this.body.eventListeners.onContext=this.onContext.bind(this);this.touchTime=0;this.drag={};this.pinch={};this.popup=undefined;this.popupObj=undefined;this.popupTimer=undefined;this.body.functions.getPointer=this.getPointer.bind(this);this.options={};this.defaultOptions={dragNodes:true,dragView:true,hover:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:true},navigationButtons:false,tooltipDelay:300,zoomView:true};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(InteractionHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"destroy\",function(){clearTimeout(_this.popupTimer);delete _this.body.functions.getPointer})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\",\"keyboard\",\"multiselect\",\"selectable\",\"selectConnectedEdges\"];util.selectiveNotDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"keyboard\");if(options.tooltip){util.extend(this.options.tooltip,options.tooltip);if(options.tooltip.color){this.options.tooltip.color=util.parseColor(options.tooltip.color)}}}this.navigationHandler.setOptions(this.options)}},{key:\"getPointer\",value:function getPointer(touch){return{x:touch.x-util.getAbsoluteLeft(this.canvas.frame.canvas),y:touch.y-util.getAbsoluteTop(this.canvas.frame.canvas)}}},{key:\"onTouch\",value:function onTouch(event){if((new Date).valueOf()-this.touchTime>50){this.drag.pointer=this.getPointer(event.center);this.drag.pinched=false;this.pinch.scale=this.body.view.scale;this.touchTime=(new Date).valueOf()}}},{key:\"onTap\",value:function onTap(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect&&(event.changedPointers[0].ctrlKey||event.changedPointers[0].metaKey);this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer)}},{key:\"onDoubleTap\",value:function onDoubleTap(event){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"doubleClick\",event,pointer)}},{key:\"onHold\",value:function onHold(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect;this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer);this.selectionHandler._generateClickEvent(\"hold\",event,pointer)}},{key:\"onRelease\",value:function onRelease(event){if((new Date).valueOf()-this.touchTime>10){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"release\",event,pointer);this.touchTime=(new Date).valueOf()}}},{key:\"onContext\",value:function onContext(event){var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.selectionHandler._generateClickEvent(\"oncontext\",event,pointer)}},{key:\"checkSelectionChanges\",value:function checkSelectionChanges(pointer,event){var add=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var previousSelection=this.selectionHandler.getSelection();var selected=false;if(add===true){selected=this.selectionHandler.selectAdditionalOnPoint(pointer)}else{selected=this.selectionHandler.selectOnPoint(pointer)}var currentSelection=this.selectionHandler.getSelection();var deselectedItems=this._determineDifference(previousSelection,currentSelection);var selectedItems=this._determineDifference(currentSelection,previousSelection);if(deselectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"deselectEdge\",event,pointer,previousSelection);selected=true}if(deselectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"deselectNode\",event,pointer,previousSelection);selected=true}if(selectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"selectNode\",event,pointer);selected=true}if(selectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"selectEdge\",event,pointer);selected=true}if(selected===true){this.selectionHandler._generateClickEvent(\"select\",event,pointer)}}},{key:\"_determineDifference\",value:function _determineDifference(firstSet,secondSet){var arrayDiff=function arrayDiff(firstArr,secondArr){var result=[];for(var i=0;i<firstArr.length;i++){var value=firstArr[i];if(secondArr.indexOf(value)===-1){result.push(value)}}return result};return{nodes:arrayDiff(firstSet.nodes,secondSet.nodes),edges:arrayDiff(firstSet.edges,secondSet.edges)}}},{key:\"onDragStart\",value:function onDragStart(event){if(this.drag.pointer===undefined){this.onTouch(event)}var node=this.selectionHandler.getNodeAt(this.drag.pointer);this.drag.dragging=true;this.drag.selection=[];this.drag.translation=util.extend({},this.body.view.translation);this.drag.nodeId=undefined;if(node!==undefined&&this.options.dragNodes===true){this.drag.nodeId=node.id;if(node.isSelected()===false){this.selectionHandler.unselectAll();this.selectionHandler.selectObject(node)}this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer);var selection=this.selectionHandler.selectionObj.nodes;for(var nodeId in selection){if(selection.hasOwnProperty(nodeId)){var object=selection[nodeId];var s={id:object.id,node:object,x:object.x,y:object.y,xFixed:object.options.fixed.x,yFixed:object.options.fixed.y};object.options.fixed.x=true;object.options.fixed.y=true;this.drag.selection.push(s)}}}else{this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer,undefined,true)}}},{key:\"onDrag\",value:function onDrag(event){var _this2=this;if(this.drag.pinched===true){return}this.body.emitter.emit(\"unlockNode\");var pointer=this.getPointer(event.center);var selection=this.drag.selection;if(selection&&selection.length&&this.options.dragNodes===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer);var deltaX=pointer.x-this.drag.pointer.x;var deltaY=pointer.y-this.drag.pointer.y;selection.forEach(function(selection){var node=selection.node;if(selection.xFixed===false){node.x=_this2.canvas._XconvertDOMtoCanvas(_this2.canvas._XconvertCanvasToDOM(selection.x)+deltaX)}if(selection.yFixed===false){node.y=_this2.canvas._YconvertDOMtoCanvas(_this2.canvas._YconvertCanvasToDOM(selection.y)+deltaY)}});this.body.emitter.emit(\"startSimulation\")}else{if(this.options.dragView===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer,undefined,true);if(this.drag.pointer===undefined){this.onDragStart(event);return}var diffX=pointer.x-this.drag.pointer.x;var diffY=pointer.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+diffX,y:this.drag.translation.y+diffY};this.body.emitter.emit(\"_requestRedraw\")}}}},{key:\"onDragEnd\",value:function onDragEnd(event){this.drag.dragging=false;var selection=this.drag.selection;if(selection&&selection.length){selection.forEach(function(s){s.node.options.fixed.x=s.xFixed;s.node.options.fixed.y=s.yFixed});this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center));this.body.emitter.emit(\"startSimulation\")}else{this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center),undefined,true);this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"onPinch\",value:function onPinch(event){var pointer=this.getPointer(event.center);this.drag.pinched=true;if(this.pinch[\"scale\"]===undefined){this.pinch.scale=1}var scale=this.pinch.scale*event.scale;this.zoom(scale,pointer)}},{key:\"zoom\",value:function zoom(scale,pointer){if(this.options.zoomView===true){var scaleOld=this.body.view.scale;if(scale<1e-5){scale=1e-5}if(scale>10){scale=10}var preScaleDragPointer=undefined;if(this.drag!==undefined){if(this.drag.dragging===true){preScaleDragPointer=this.canvas.DOMtoCanvas(this.drag.pointer)}}var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*pointer.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*pointer.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};if(preScaleDragPointer!=undefined){var postScaleDragPointer=this.canvas.canvasToDOM(preScaleDragPointer);this.drag.pointer.x=postScaleDragPointer.x;this.drag.pointer.y=postScaleDragPointer.y}this.body.emitter.emit(\"_requestRedraw\");if(scaleOld<scale){this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:pointer})}else{this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:pointer})}}}},{key:\"onMouseWheel\",value:function onMouseWheel(event){if(this.options.zoomView===true){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta!==0){var scale=this.body.view.scale;var zoom=delta/10;if(delta<0){zoom=zoom/(1-zoom)}scale*=1+zoom;var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.zoom(scale,pointer)}event.preventDefault()}}},{key:\"onMouseMove\",value:function onMouseMove(event){var _this3=this;var pointer=this.getPointer({x:event.clientX,y:event.clientY});var popupVisible=false;if(this.popup!==undefined){if(this.popup.hidden===false){this._checkHidePopup(pointer)}if(this.popup.hidden===false){popupVisible=true;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.show()}}if(this.options.keyboard.bindToWindow===false&&this.options.keyboard.enabled===true){this.canvas.frame.focus()}if(popupVisible===false){if(this.popupTimer!==undefined){clearInterval(this.popupTimer);this.popupTimer=undefined}if(!this.drag.dragging){this.popupTimer=setTimeout(function(){return _this3._checkShowPopup(pointer)},this.options.tooltipDelay)}}if(this.options.hover===true){this.selectionHandler.hoverObject(event,pointer)}}},{key:\"_checkShowPopup\",value:function _checkShowPopup(pointer){var x=this.canvas._XconvertDOMtoCanvas(pointer.x);var y=this.canvas._YconvertDOMtoCanvas(pointer.y);var pointerObj={left:x,top:y,right:x,bottom:y};var previousPopupObjId=this.popupObj===undefined?undefined:this.popupObj.id;var nodeUnderCursor=false;var popupType=\"node\";if(this.popupObj===undefined){var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;var node=void 0;var overlappingNodes=[];for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isOverlappingWith(pointerObj)===true){if(node.getTitle()!==undefined){overlappingNodes.push(nodeIndices[i])}}}if(overlappingNodes.length>0){this.popupObj=nodes[overlappingNodes[overlappingNodes.length-1]];nodeUnderCursor=true}}if(this.popupObj===undefined&&nodeUnderCursor===false){var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;var edge=void 0;var overlappingEdges=[];for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.isOverlappingWith(pointerObj)===true){if(edge.connected===true&&edge.getTitle()!==undefined){overlappingEdges.push(edgeIndices[_i])}}}if(overlappingEdges.length>0){this.popupObj=edges[overlappingEdges[overlappingEdges.length-1]];popupType=\"edge\"}}if(this.popupObj!==undefined){if(this.popupObj.id!==previousPopupObjId){if(this.popup===undefined){this.popup=new Popup(this.canvas.frame)}this.popup.popupTargetType=popupType;this.popup.popupTargetId=this.popupObj.id;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.setText(this.popupObj.getTitle());this.popup.show();this.body.emitter.emit(\"showPopup\",this.popupObj.id)}}else{if(this.popup!==undefined){this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}},{key:\"_checkHidePopup\",value:function _checkHidePopup(pointer){var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var stillOnObj=false;if(this.popup.popupTargetType===\"node\"){if(this.body.nodes[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(pointerObj);if(stillOnObj===true){var overNode=this.selectionHandler.getNodeAt(pointer);stillOnObj=overNode===undefined?false:overNode.id===this.popup.popupTargetId}}}else{if(this.selectionHandler.getNodeAt(pointer)===undefined){if(this.body.edges[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.edges[this.popup.popupTargetId].isOverlappingWith(pointerObj)}}}if(stillOnObj===false){this.popupObj=undefined;this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}]);return InteractionHandler}();exports[\"default\"]=InteractionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var keycharm=__webpack_require__(35);var NavigationHandler=function(){function NavigationHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,NavigationHandler);this.body=body;this.canvas=canvas;this.iconsCreated=false;this.navigationHammers=[];this.boundFunctions={};this.touchTime=0;this.activated=false;this.body.emitter.on(\"activate\",function(){_this.activated=true;_this.configureKeyboardBindings()});this.body.emitter.on(\"deactivate\",function(){_this.activated=false;_this.configureKeyboardBindings()});this.body.emitter.on(\"destroy\",function(){if(_this.keycharm!==undefined){_this.keycharm.destroy()}});this.options={}}(0,_createClass3[\"default\"])(NavigationHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.options=options;this.create()}}},{key:\"create\",value:function create(){if(this.options.navigationButtons===true){if(this.iconsCreated===false){this.loadNavigationElements()}}else if(this.iconsCreated===true){this.cleanNavigation()}this.configureKeyboardBindings()}},{key:\"cleanNavigation\",value:function cleanNavigation(){if(this.navigationHammers.length!=0){for(var i=0;i<this.navigationHammers.length;i++){this.navigationHammers[i].destroy()}this.navigationHammers=[]}if(this.navigationDOM&&this.navigationDOM[\"wrapper\"]&&this.navigationDOM[\"wrapper\"].parentNode){this.navigationDOM[\"wrapper\"].parentNode.removeChild(this.navigationDOM[\"wrapper\"])}this.iconsCreated=false}},{key:\"loadNavigationElements\",value:function loadNavigationElements(){var _this2=this;this.cleanNavigation();this.navigationDOM={};var navigationDivs=[\"up\",\"down\",\"left\",\"right\",\"zoomIn\",\"zoomOut\",\"zoomExtends\"];var navigationDivActions=[\"_moveUp\",\"_moveDown\",\"_moveLeft\",\"_moveRight\",\"_zoomIn\",\"_zoomOut\",\"_fit\"];this.navigationDOM[\"wrapper\"]=document.createElement(\"div\");this.navigationDOM[\"wrapper\"].className=\"vis-navigation\";this.canvas.frame.appendChild(this.navigationDOM[\"wrapper\"]);for(var i=0;i<navigationDivs.length;i++){this.navigationDOM[navigationDivs[i]]=document.createElement(\"div\");this.navigationDOM[navigationDivs[i]].className=\"vis-button vis-\"+navigationDivs[i];this.navigationDOM[\"wrapper\"].appendChild(this.navigationDOM[navigationDivs[i]]);var hammer=new Hammer(this.navigationDOM[navigationDivs[i]]);if(navigationDivActions[i]===\"_fit\"){hammerUtil.onTouch(hammer,this._fit.bind(this))}else{hammerUtil.onTouch(hammer,this.bindToRedraw.bind(this,navigationDivActions[i]))}this.navigationHammers.push(hammer)}var hammerFrame=new Hammer(this.canvas.frame);hammerUtil.onRelease(hammerFrame,function(){_this2._stopMovement()});this.navigationHammers.push(hammerFrame);this.iconsCreated=true}},{key:\"bindToRedraw\",value:function bindToRedraw(action){if(this.boundFunctions[action]===undefined){this.boundFunctions[action]=this[action].bind(this);this.body.emitter.on(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_startRendering\")}}},{key:\"unbindFromRedraw\",value:function unbindFromRedraw(action){if(this.boundFunctions[action]!==undefined){this.body.emitter.off(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_stopRendering\");delete this.boundFunctions[action]}}},{key:\"_fit\",value:function _fit(){if((new Date).valueOf()-this.touchTime>700){this.body.emitter.emit(\"fit\",{duration:700});this.touchTime=(new Date).valueOf()}}},{key:\"_stopMovement\",value:function _stopMovement(){for(var boundAction in this.boundFunctions){if(this.boundFunctions.hasOwnProperty(boundAction)){this.body.emitter.off(\"initRedraw\",this.boundFunctions[boundAction]);this.body.emitter.emit(\"_stopRendering\")}}this.boundFunctions={}}},{key:\"_moveUp\",value:function _moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:\"_moveDown\",value:function _moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:\"_moveLeft\",value:function _moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:\"_moveRight\",value:function _moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:\"_zoomIn\",value:function _zoomIn(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale*(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:null})}},{key:\"_zoomOut\",value:function _zoomOut(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale/(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:null})}},{key:\"configureKeyboardBindings\",value:function configureKeyboardBindings(){var _this3=this;if(this.keycharm!==undefined){this.keycharm.destroy()}if(this.options.keyboard.enabled===true){if(this.options.keyboard.bindToWindow===true){this.keycharm=keycharm({container:window,preventDefault:true})}else{this.keycharm=keycharm({container:this.canvas.frame,preventDefault:true})}this.keycharm.reset();if(this.activated===true){this.keycharm.bind(\"up\",function(){_this3.bindToRedraw(\"_moveUp\")},\"keydown\");this.keycharm.bind(\"down\",function(){_this3.bindToRedraw(\"_moveDown\")},\"keydown\");this.keycharm.bind(\"left\",function(){_this3.bindToRedraw(\"_moveLeft\")},\"keydown\");this.keycharm.bind(\"right\",function(){_this3.bindToRedraw(\"_moveRight\")},\"keydown\");this.keycharm.bind(\"=\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num+\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"[\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"]\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pageup\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pagedown\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"up\",function(){_this3.unbindFromRedraw(\"_moveUp\")},\"keyup\");this.keycharm.bind(\"down\",function(){_this3.unbindFromRedraw(\"_moveDown\")},\"keyup\");this.keycharm.bind(\"left\",function(){_this3.unbindFromRedraw(\"_moveLeft\")},\"keyup\");this.keycharm.bind(\"right\",function(){_this3.unbindFromRedraw(\"_moveRight\")},\"keyup\");this.keycharm.bind(\"=\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num+\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"[\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"]\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pageup\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pagedown\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\")}}}}]);return NavigationHandler}();exports[\"default\"]=NavigationHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Node=__webpack_require__(47)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var util=__webpack_require__(2);var SelectionHandler=function(){function SelectionHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,SelectionHandler);this.body=body;this.canvas=canvas;this.selectionObj={nodes:[],edges:[]};this.hoverObj={nodes:{},edges:{}};this.options={};this.defaultOptions={multiselect:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_dataChanged\",function(){_this.updateSelection()})}(0,_createClass3[\"default\"])(SelectionHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"multiselect\",\"hoverConnectedEdges\",\"selectable\",\"selectConnectedEdges\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"selectOnPoint\",value:function selectOnPoint(pointer){var selected=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);this.unselectAll();if(obj!==undefined){selected=this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}return selected}},{key:\"selectAdditionalOnPoint\",value:function selectAdditionalOnPoint(pointer){var selectionChanged=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);if(obj!==undefined){selectionChanged=true;if(obj.isSelected()===true){this.deselectObject(obj)}else{this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}}return selectionChanged}},{key:\"_initBaseEvent\",value:function _initBaseEvent(event,pointer){var properties={};properties[\"pointer\"]={DOM:{\nx:pointer.x,y:pointer.y},canvas:this.canvas.DOMtoCanvas(pointer)};properties[\"event\"]=event;return properties}},{key:\"_generateClickEvent\",value:function _generateClickEvent(eventType,event,pointer,oldSelection){var emptySelection=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var properties=this._initBaseEvent(event,pointer);if(emptySelection===true){properties.nodes=[];properties.edges=[]}else{var tmp=this.getSelection();properties.nodes=tmp.nodes;properties.edges=tmp.edges}if(oldSelection!==undefined){properties[\"previousSelection\"]=oldSelection}if(eventType==\"click\"){properties.items=this.getClickedItems(pointer)}this.body.emitter.emit(eventType,properties)}},{key:\"selectObject\",value:function selectObject(obj){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.selectConnectedEdges;if(obj!==undefined){if(obj instanceof Node){if(highlightEdges===true){this._selectConnectedEdges(obj)}}obj.select();this._addToSelection(obj);return true}return false}},{key:\"deselectObject\",value:function deselectObject(obj){if(obj.isSelected()===true){obj.selected=false;this._removeFromSelection(obj)}}},{key:\"_getAllNodesOverlappingWith\",value:function _getAllNodesOverlappingWith(object){var overlappingNodes=[];var nodes=this.body.nodes;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(nodes[nodeId].isOverlappingWith(object)){overlappingNodes.push(nodeId)}}return overlappingNodes}},{key:\"_pointerToPositionObject\",value:function _pointerToPositionObject(pointer){var canvasPos=this.canvas.DOMtoCanvas(pointer);return{left:canvasPos.x-1,top:canvasPos.y+1,right:canvasPos.x+1,bottom:canvasPos.y-1}}},{key:\"getNodeAt\",value:function getNodeAt(pointer){var returnNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var positionObject=this._pointerToPositionObject(pointer);var overlappingNodes=this._getAllNodesOverlappingWith(positionObject);if(overlappingNodes.length>0){if(returnNode===true){return this.body.nodes[overlappingNodes[overlappingNodes.length-1]]}else{return overlappingNodes[overlappingNodes.length-1]}}else{return undefined}}},{key:\"_getEdgesOverlappingWith\",value:function _getEdgesOverlappingWith(object,overlappingEdges){var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];if(edges[edgeId].isOverlappingWith(object)){overlappingEdges.push(edgeId)}}}},{key:\"_getAllEdgesOverlappingWith\",value:function _getAllEdgesOverlappingWith(object){var overlappingEdges=[];this._getEdgesOverlappingWith(object,overlappingEdges);return overlappingEdges}},{key:\"getEdgeAt\",value:function getEdgeAt(pointer){var returnEdge=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var canvasPos=this.canvas.DOMtoCanvas(pointer);var mindist=10;var overlappingEdge=null;var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];var edge=edges[edgeId];if(edge.connected){var xFrom=edge.from.x;var yFrom=edge.from.y;var xTo=edge.to.x;var yTo=edge.to.y;var dist=edge.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,canvasPos.x,canvasPos.y);if(dist<mindist){overlappingEdge=edgeId;mindist=dist}}}if(overlappingEdge!==null){if(returnEdge===true){return this.body.edges[overlappingEdge]}else{return overlappingEdge}}else{return undefined}}},{key:\"_addToSelection\",value:function _addToSelection(obj){if(obj instanceof Node){this.selectionObj.nodes[obj.id]=obj}else{this.selectionObj.edges[obj.id]=obj}}},{key:\"_addToHover\",value:function _addToHover(obj){if(obj instanceof Node){this.hoverObj.nodes[obj.id]=obj}else{this.hoverObj.edges[obj.id]=obj}}},{key:\"_removeFromSelection\",value:function _removeFromSelection(obj){if(obj instanceof Node){delete this.selectionObj.nodes[obj.id];this._unselectConnectedEdges(obj)}else{delete this.selectionObj.edges[obj.id]}}},{key:\"unselectAll\",value:function unselectAll(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){this.selectionObj.nodes[nodeId].unselect()}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){this.selectionObj.edges[edgeId].unselect()}}this.selectionObj={nodes:{},edges:{}}}},{key:\"_getSelectedNodeCount\",value:function _getSelectedNodeCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}return count}},{key:\"_getSelectedNode\",value:function _getSelectedNode(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return this.selectionObj.nodes[nodeId]}}return undefined}},{key:\"_getSelectedEdge\",value:function _getSelectedEdge(){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return this.selectionObj.edges[edgeId]}}return undefined}},{key:\"_getSelectedEdgeCount\",value:function _getSelectedEdgeCount(){var count=0;for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_getSelectedObjectCount\",value:function _getSelectedObjectCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_selectionIsEmpty\",value:function _selectionIsEmpty(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return false}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return false}}return true}},{key:\"_clusterInSelection\",value:function _clusterInSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(this.selectionObj.nodes[nodeId].clusterSize>1){return true}}}return false}},{key:\"_selectConnectedEdges\",value:function _selectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.select();this._addToSelection(edge)}}},{key:\"_hoverConnectedEdges\",value:function _hoverConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.hover=true;this._addToHover(edge)}}},{key:\"_unselectConnectedEdges\",value:function _unselectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.unselect();this._removeFromSelection(edge)}}},{key:\"emitBlurEvent\",value:function emitBlurEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);if(object.hover===true){object.hover=false;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"blurNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"blurEdge\",properties)}}}},{key:\"emitHoverEvent\",value:function emitHoverEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);var hoverChanged=false;if(object.hover===false){object.hover=true;this._addToHover(object);hoverChanged=true;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"hoverNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"hoverEdge\",properties)}}return hoverChanged}},{key:\"hoverObject\",value:function hoverObject(event,pointer){var object=this.getNodeAt(pointer);if(object===undefined){object=this.getEdgeAt(pointer)}var hoverChanged=false;for(var nodeId in this.hoverObj.nodes){if(this.hoverObj.nodes.hasOwnProperty(nodeId)){if(object===undefined||object instanceof Node&&object.id!=nodeId||object instanceof Edge){this.emitBlurEvent(event,pointer,this.hoverObj.nodes[nodeId]);delete this.hoverObj.nodes[nodeId];hoverChanged=true}}}for(var edgeId in this.hoverObj.edges){if(this.hoverObj.edges.hasOwnProperty(edgeId)){if(hoverChanged===true){this.hoverObj.edges[edgeId].hover=false;delete this.hoverObj.edges[edgeId]}else if(object===undefined||object instanceof Edge&&object.id!=edgeId||object instanceof Node&&!object.hover){this.emitBlurEvent(event,pointer,this.hoverObj.edges[edgeId]);delete this.hoverObj.edges[edgeId];hoverChanged=true}}}if(object!==undefined){hoverChanged=hoverChanged||this.emitHoverEvent(event,pointer,object);if(object instanceof Node&&this.options.hoverConnectedEdges===true){this._hoverConnectedEdges(object)}}if(hoverChanged===true){this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"getSelection\",value:function getSelection(){var nodeIds=this.getSelectedNodes();var edgeIds=this.getSelectedEdges();return{nodes:nodeIds,edges:edgeIds}}},{key:\"getSelectedNodes\",value:function getSelectedNodes(){var idArray=[];if(this.options.selectable===true){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){idArray.push(this.selectionObj.nodes[nodeId].id)}}}return idArray}},{key:\"getSelectedEdges\",value:function getSelectedEdges(){var idArray=[];if(this.options.selectable===true){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){idArray.push(this.selectionObj.edges[edgeId].id)}}}return idArray}},{key:\"setSelection\",value:function setSelection(selection){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=void 0,id=void 0;if(!selection||!selection.nodes&&!selection.edges)throw\"Selection must be an object with nodes and/or edges properties\";if(options.unselectAll||options.unselectAll===undefined){this.unselectAll()}if(selection.nodes){for(i=0;i<selection.nodes.length;i++){id=selection.nodes[i];var node=this.body.nodes[id];if(!node){throw new RangeError('Node with id \"'+id+'\" not found')}this.selectObject(node,options.highlightEdges)}}if(selection.edges){for(i=0;i<selection.edges.length;i++){id=selection.edges[i];var edge=this.body.edges[id];if(!edge){throw new RangeError('Edge with id \"'+id+'\" not found')}this.selectObject(edge)}}this.body.emitter.emit(\"_requestRedraw\")}},{key:\"selectNodes\",value:function selectNodes(selection){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({nodes:selection},{highlightEdges:highlightEdges})}},{key:\"selectEdges\",value:function selectEdges(selection){if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({edges:selection})}},{key:\"updateSelection\",value:function updateSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(!this.body.nodes.hasOwnProperty(nodeId)){delete this.selectionObj.nodes[nodeId]}}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){if(!this.body.edges.hasOwnProperty(edgeId)){delete this.selectionObj.edges[edgeId]}}}}},{key:\"getClickedItems\",value:function getClickedItems(pointer){var point=this.canvas.DOMtoCanvas(pointer);var items=[];var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;for(var i=nodeIndices.length-1;i>=0;i--){var node=nodes[nodeIndices[i]];var ret=node.getItemsOnPoint(point);items.push.apply(items,ret)}var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;for(var _i=edgeIndices.length-1;_i>=0;_i--){var edge=edges[edgeIndices[_i]];var _ret=edge.getItemsOnPoint(point);items.push.apply(items,_ret)}return items}}]);return SelectionHandler}();exports[\"default\"]=SelectionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var _require=__webpack_require__(236),HorizontalStrategy=_require.HorizontalStrategy,VerticalStrategy=_require.VerticalStrategy;var HierarchicalStatus=function(){function HierarchicalStatus(){(0,_classCallCheck3[\"default\"])(this,HierarchicalStatus);this.childrenReference={};this.parentReference={};this.trees={};this.distributionOrdering={};this.levels={};this.distributionIndex={};this.isTree=false;this.treeIndex=-1}(0,_createClass3[\"default\"])(HierarchicalStatus,[{key:\"addRelation\",value:function addRelation(parentNodeId,childNodeId){if(this.childrenReference[parentNodeId]===undefined){this.childrenReference[parentNodeId]=[]}this.childrenReference[parentNodeId].push(childNodeId);if(this.parentReference[childNodeId]===undefined){this.parentReference[childNodeId]=[]}this.parentReference[childNodeId].push(parentNodeId)}},{key:\"checkIfTree\",value:function checkIfTree(){for(var i in this.parentReference){if(this.parentReference[i].length>1){this.isTree=false;return}}this.isTree=true}},{key:\"numTrees\",value:function numTrees(){return this.treeIndex+1}},{key:\"setTreeIndex\",value:function setTreeIndex(node,treeId){if(treeId===undefined)return;if(this.trees[node.id]===undefined){this.trees[node.id]=treeId;this.treeIndex=Math.max(treeId,this.treeIndex)}}},{key:\"ensureLevel\",value:function ensureLevel(nodeId){if(this.levels[nodeId]===undefined){this.levels[nodeId]=0}}},{key:\"getMaxLevel\",value:function getMaxLevel(nodeId){var _this=this;var accumulator={};var _getMaxLevel=function _getMaxLevel(nodeId){if(accumulator[nodeId]!==undefined){return accumulator[nodeId]}var level=_this.levels[nodeId];if(_this.childrenReference[nodeId]){var children=_this.childrenReference[nodeId];if(children.length>0){for(var i=0;i<children.length;i++){level=Math.max(level,_getMaxLevel(children[i]))}}}accumulator[nodeId]=level;return level};return _getMaxLevel(nodeId)}},{key:\"levelDownstream\",value:function levelDownstream(nodeA,nodeB){if(this.levels[nodeB.id]===undefined){if(this.levels[nodeA.id]===undefined){this.levels[nodeA.id]=0}this.levels[nodeB.id]=this.levels[nodeA.id]+1}}},{key:\"setMinLevelToZero\",value:function setMinLevelToZero(nodes){var minLevel=1e9;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(this.levels[nodeId]!==undefined){minLevel=Math.min(this.levels[nodeId],minLevel)}}}for(var _nodeId in nodes){if(nodes.hasOwnProperty(_nodeId)){if(this.levels[_nodeId]!==undefined){this.levels[_nodeId]-=minLevel}}}}},{key:\"getTreeSize\",value:function getTreeSize(nodes,index){var min_x=1e9;var max_x=-1e9;var min_y=1e9;var max_y=-1e9;for(var nodeId in this.trees){if(this.trees.hasOwnProperty(nodeId)){if(this.trees[nodeId]===index){var node=nodes[nodeId];min_x=Math.min(node.x,min_x);max_x=Math.max(node.x,max_x);min_y=Math.min(node.y,min_y);max_y=Math.max(node.y,max_y)}}}return{min_x:min_x,max_x:max_x,min_y:min_y,max_y:max_y}}},{key:\"hasSameParent\",value:function hasSameParent(node1,node2){var parents1=this.parentReference[node1.id];var parents2=this.parentReference[node2.id];if(parents1===undefined||parents2===undefined){return false}for(var i=0;i<parents1.length;i++){for(var j=0;j<parents2.length;j++){if(parents1[i]==parents2[j]){return true}}}return false}},{key:\"inSameSubNetwork\",value:function inSameSubNetwork(node1,node2){return this.trees[node1.id]===this.trees[node2.id]}},{key:\"getLevels\",value:function getLevels(){return(0,_keys2[\"default\"])(this.distributionOrdering)}},{key:\"addToOrdering\",value:function addToOrdering(node,level){if(this.distributionOrdering[level]===undefined){this.distributionOrdering[level]=[]}var isPresent=false;var curLevel=this.distributionOrdering[level];for(var n in curLevel){if(curLevel[n]===node){isPresent=true;break}}if(!isPresent){this.distributionOrdering[level].push(node);this.distributionIndex[node.id]=this.distributionOrdering[level].length-1}}}]);return HierarchicalStatus}();var LayoutEngine=function(){function LayoutEngine(body){(0,_classCallCheck3[\"default\"])(this,LayoutEngine);this.body=body;this.initialRandomSeed=Math.round(Math.random()*1e6);this.randomSeed=this.initialRandomSeed;this.setPhysics=false;this.options={};this.optionsBackup={physics:{}};this.defaultOptions={randomSeed:undefined,improvedLayout:true,hierarchical:{enabled:false,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:\"UD\",sortMethod:\"hubsize\"}};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(LayoutEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_dataChanged\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_dataLoaded\",function(){_this2.layoutNetwork()});this.body.emitter.on(\"_resetHierarchicalLayout\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_adjustEdgesForHierarchicalLayout\",function(){if(_this2.options.hierarchical.enabled!==true){return}var type=_this2.direction.curveType();_this2.body.emitter.emit(\"_forceDisableDynamicCurves\",type,false)})}},{key:\"setOptions\",value:function setOptions(options,allOptions){if(options!==undefined){var hierarchical=this.options.hierarchical;var prevHierarchicalState=hierarchical.enabled;util.selectiveDeepExtend([\"randomSeed\",\"improvedLayout\"],this.options,options);util.mergeOptions(this.options,options,\"hierarchical\");if(options.randomSeed!==undefined){this.initialRandomSeed=options.randomSeed}if(hierarchical.enabled===true){if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\",true)}if(hierarchical.direction===\"RL\"||hierarchical.direction===\"DU\"){if(hierarchical.levelSeparation>0){hierarchical.levelSeparation*=-1}}else{if(hierarchical.levelSeparation<0){hierarchical.levelSeparation*=-1}}this.setDirectionStrategy();this.body.emitter.emit(\"_resetHierarchicalLayout\");return this.adaptAllOptionsForHierarchicalLayout(allOptions)}else{if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\");return util.deepExtend(allOptions,this.optionsBackup)}}}return allOptions}},{key:\"adaptAllOptionsForHierarchicalLayout\",value:function adaptAllOptionsForHierarchicalLayout(allOptions){if(this.options.hierarchical.enabled===true){var backupPhysics=this.optionsBackup.physics;if(allOptions.physics===undefined||allOptions.physics===true){allOptions.physics={enabled:backupPhysics.enabled===undefined?true:backupPhysics.enabled,solver:\"hierarchicalRepulsion\"};backupPhysics.enabled=backupPhysics.enabled===undefined?true:backupPhysics.enabled;backupPhysics.solver=backupPhysics.solver||\"barnesHut\"}else if((0,_typeof3[\"default\"])(allOptions.physics)===\"object\"){backupPhysics.enabled=allOptions.physics.enabled===undefined?true:allOptions.physics.enabled;backupPhysics.solver=allOptions.physics.solver||\"barnesHut\";allOptions.physics.solver=\"hierarchicalRepulsion\"}else if(allOptions.physics!==false){backupPhysics.solver=\"barnesHut\";allOptions.physics={solver:\"hierarchicalRepulsion\"}}var type=this.direction.curveType();if(allOptions.edges===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges={smooth:false}}else if(allOptions.edges.smooth===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges.smooth=false}else{if(typeof allOptions.edges.smooth===\"boolean\"){this.optionsBackup.edges={smooth:allOptions.edges.smooth};allOptions.edges.smooth={enabled:allOptions.edges.smooth,type:type}}else{var smooth=allOptions.edges.smooth;if(smooth.type!==undefined&&smooth.type!==\"dynamic\"){type=smooth.type}this.optionsBackup.edges={smooth:smooth.enabled===undefined?true:smooth.enabled,type:smooth.type===undefined?\"dynamic\":smooth.type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection};allOptions.edges.smooth={enabled:smooth.enabled===undefined?true:smooth.enabled,type:type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection}}}this.body.emitter.emit(\"_forceDisableDynamicCurves\",type)}return allOptions}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"positionInitially\",value:function positionInitially(nodesArray){if(this.options.hierarchical.enabled!==true){this.randomSeed=this.initialRandomSeed;var radius=nodesArray.length+50;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var angle=2*Math.PI*this.seededRandom();if(node.x===undefined){node.x=radius*Math.cos(angle)}if(node.y===undefined){node.y=radius*Math.sin(angle)}}}}},{key:\"layoutNetwork\",value:function layoutNetwork(){if(this.options.hierarchical.enabled!==true&&this.options.improvedLayout===true){var indices=this.body.nodeIndices;var positionDefined=0;for(var i=0;i<indices.length;i++){var node=this.body.nodes[indices[i]];if(node.predefinedPosition===true){positionDefined+=1}}if(positionDefined<.5*indices.length){var MAX_LEVELS=10;var level=0;var clusterThreshold=150;var clusterOptions={clusterNodeProperties:{shape:\"ellipse\",label:\"\",group:\"\",font:{multi:false}},clusterEdgeProperties:{label:\"\",font:{multi:false},smooth:{enabled:false}}};if(indices.length>clusterThreshold){var startLength=indices.length;while(indices.length>clusterThreshold&&level<=MAX_LEVELS){level+=1;var before=indices.length;if(level%3===0){this.body.modules.clustering.clusterBridges(clusterOptions)}else{this.body.modules.clustering.clusterOutliers(clusterOptions)}var after=indices.length;if(before==after&&level%3!==0){this._declusterAll();this.body.emitter.emit(\"_layoutFailed\");console.info(\"This network could not be positioned by this version of the improved layout algorithm.\"+\" Please disable improvedLayout for better performance.\");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*startLength)})}if(level>MAX_LEVELS){console.info(\"The clustering didn't succeed within the amount of interations allowed,\"+\" progressing with partial result.\")}this.body.modules.kamadaKawai.solve(indices,this.body.edgeIndices,true);this._shiftToCenter();var offset=70;for(var _i=0;_i<indices.length;_i++){var _node=this.body.nodes[indices[_i]];if(_node.predefinedPosition===false){_node.x+=(.5-this.seededRandom())*offset;_node.y+=(.5-this.seededRandom())*offset}}this._declusterAll();this.body.emitter.emit(\"_repositionBezierNodes\")}}}},{key:\"_shiftToCenter\",value:function _shiftToCenter(){var range=NetworkUtil.getRangeCore(this.body.nodes,this.body.nodeIndices);var center=NetworkUtil.findCenter(range);for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];node.x-=center.x;node.y-=center.y}}},{key:\"_declusterAll\",value:function _declusterAll(){var clustersPresent=true;while(clustersPresent===true){clustersPresent=false;for(var i=0;i<this.body.nodeIndices.length;i++){if(this.body.nodes[this.body.nodeIndices[i]].isCluster===true){clustersPresent=true;this.body.modules.clustering.openCluster(this.body.nodeIndices[i],{},false)}}if(clustersPresent===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"getSeed\",value:function getSeed(){return this.initialRandomSeed}},{key:\"setupHierarchicalLayout\",value:function setupHierarchicalLayout(){if(this.options.hierarchical.enabled===true&&this.body.nodeIndices.length>0){var node=void 0,nodeId=void 0;var definedLevel=false;var undefinedLevel=false;this.lastNodeOnLevel={};this.hierarchical=new HierarchicalStatus;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];if(node.options.level!==undefined){definedLevel=true;this.hierarchical.levels[nodeId]=node.options.level}else{undefinedLevel=true}}}if(undefinedLevel===true&&definedLevel===true){throw new Error(\"To use the hierarchical layout, nodes require either no predefined levels\"+\" or levels have to be defined for all nodes.\")}else{if(undefinedLevel===true){var sortMethod=this.options.hierarchical.sortMethod;if(sortMethod===\"hubsize\"){this._determineLevelsByHubsize()}else if(sortMethod===\"directed\"){this._determineLevelsDirected()}else if(sortMethod===\"custom\"){this._determineLevelsCustomCallback()}}for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.hierarchical.ensureLevel(_nodeId2)}}var distribution=this._getDistribution();this._generateMap();this._placeNodesByHierarchy(distribution);this._condenseHierarchy();this._shiftToCenter()}}}},{key:\"_condenseHierarchy\",value:function _condenseHierarchy(){var _this3=this;var stillShifting=false;var branches={};var shiftTrees=function shiftTrees(){var treeSizes=getTreeSizes();var shiftBy=0;for(var i=0;i<treeSizes.length-1;i++){var diff=treeSizes[i].max-treeSizes[i+1].min;shiftBy+=diff+_this3.options.hierarchical.treeSpacing;shiftTree(i+1,shiftBy)}};var shiftTree=function shiftTree(index,offset){var trees=_this3.hierarchical.trees;for(var nodeId in trees){if(trees.hasOwnProperty(nodeId)){if(trees[nodeId]===index){_this3.direction.shift(nodeId,offset)}}}};var getTreeSizes=function getTreeSizes(){var treeWidths=[];for(var i=0;i<_this3.hierarchical.numTrees();i++){treeWidths.push(_this3.direction.getTreeSize(i))}return treeWidths};var getBranchNodes=function getBranchNodes(source,map){if(map[source.id]){return}map[source.id]=true;if(_this3.hierarchical.childrenReference[source.id]){var children=_this3.hierarchical.childrenReference[source.id];if(children.length>0){for(var i=0;i<children.length;i++){getBranchNodes(_this3.body.nodes[children[i]],map)}}}};var getBranchBoundary=function getBranchBoundary(branchMap){var maxLevel=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1e9;var minSpace=1e9;var maxSpace=1e9;var min=1e9;var max=-1e9;for(var branchNode in branchMap){if(branchMap.hasOwnProperty(branchNode)){var node=_this3.body.nodes[branchNode];var level=_this3.hierarchical.levels[node.id];var position=_this3.direction.getPosition(node);var _getSpaceAroundNode2=_this3._getSpaceAroundNode(node,branchMap),_getSpaceAroundNode3=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode2,2),minSpaceNode=_getSpaceAroundNode3[0],maxSpaceNode=_getSpaceAroundNode3[1];minSpace=Math.min(minSpaceNode,minSpace);maxSpace=Math.min(maxSpaceNode,maxSpace);if(level<=maxLevel){min=Math.min(position,min);max=Math.max(position,max)}}}return[min,max,minSpace,maxSpace]};var getCollisionLevel=function getCollisionLevel(node1,node2){var maxLevel1=_this3.hierarchical.getMaxLevel(node1.id);var maxLevel2=_this3.hierarchical.getMaxLevel(node2.id);return Math.min(maxLevel1,maxLevel2)};var shiftElementsCloser=function shiftElementsCloser(callback,levels,centerParents){var hier=_this3.hierarchical;for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=hier.distributionOrdering[level];if(levelNodes.length>1){for(var j=0;j<levelNodes.length-1;j++){var node1=levelNodes[j];var node2=levelNodes[j+1];if(hier.hasSameParent(node1,node2)&&hier.inSameSubNetwork(node1,node2)){callback(node1,node2,centerParents)}}}}};var branchShiftCallback=function branchShiftCallback(node1,node2){var centerParent=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var pos1=_this3.direction.getPosition(node1);var pos2=_this3.direction.getPosition(node2);var diffAbs=Math.abs(pos2-pos1);var nodeSpacing=_this3.options.hierarchical.nodeSpacing;if(diffAbs>nodeSpacing){var branchNodes1={};var branchNodes2={};getBranchNodes(node1,branchNodes1);getBranchNodes(node2,branchNodes2);var maxLevel=getCollisionLevel(node1,node2);var branchNodeBoundary1=getBranchBoundary(branchNodes1,maxLevel);var branchNodeBoundary2=getBranchBoundary(branchNodes2,maxLevel);var max1=branchNodeBoundary1[1];var min2=branchNodeBoundary2[0];var minSpace2=branchNodeBoundary2[2];var diffBranch=Math.abs(max1-min2);if(diffBranch>nodeSpacing){var offset=max1-min2+nodeSpacing;if(offset<-minSpace2+nodeSpacing){offset=-minSpace2+nodeSpacing}if(offset<0){_this3._shiftBlock(node2.id,offset);stillShifting=true;if(centerParent===true)_this3._centerParent(node2)}}}};var minimizeEdgeLength=function minimizeEdgeLength(iterations,node){var nodeId=node.id;var allEdges=node.edges;var nodeLevel=_this3.hierarchical.levels[node.id];var C2=_this3.options.hierarchical.levelSeparation*_this3.options.hierarchical.levelSeparation;var referenceNodes={};var aboveEdges=[];for(var i=0;i<allEdges.length;i++){var edge=allEdges[i];if(edge.toId!=edge.fromId){var otherNode=edge.toId==nodeId?edge.from:edge.to;referenceNodes[allEdges[i].id]=otherNode;if(_this3.hierarchical.levels[otherNode.id]<nodeLevel){aboveEdges.push(edge)}}}var getFx=function getFx(point,edges){var sum=0;for(var _i2=0;_i2<edges.length;_i2++){if(referenceNodes[edges[_i2].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i2].id])-point;sum+=a/Math.sqrt(a*a+C2)}}return sum};var getDFx=function getDFx(point,edges){var sum=0;for(var _i3=0;_i3<edges.length;_i3++){if(referenceNodes[edges[_i3].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i3].id])-point;sum-=C2*Math.pow(a*a+C2,-1.5)}}return sum};var getGuess=function getGuess(iterations,edges){var guess=_this3.direction.getPosition(node);var guessMap={};for(var _i4=0;_i4<iterations;_i4++){var fx=getFx(guess,edges);var dfx=getDFx(guess,edges);var limit=40;var ratio=Math.max(-limit,Math.min(limit,Math.round(fx/dfx)));guess=guess-ratio;if(guessMap[guess]!==undefined){break}guessMap[guess]=_i4}return guess};var moveBranch=function moveBranch(guess){var nodePosition=_this3.direction.getPosition(node);if(branches[node.id]===undefined){var branchNodes={};getBranchNodes(node,branchNodes);branches[node.id]=branchNodes}var branchBoundary=getBranchBoundary(branches[node.id]);var minSpaceBranch=branchBoundary[2];var maxSpaceBranch=branchBoundary[3];var diff=guess-nodePosition;var branchOffset=0;if(diff>0){branchOffset=Math.min(diff,maxSpaceBranch-_this3.options.hierarchical.nodeSpacing)}else if(diff<0){branchOffset=-Math.min(-diff,minSpaceBranch-_this3.options.hierarchical.nodeSpacing)}if(branchOffset!=0){_this3._shiftBlock(node.id,branchOffset);stillShifting=true}};var moveNode=function moveNode(guess){var nodePosition=_this3.direction.getPosition(node);var _getSpaceAroundNode4=_this3._getSpaceAroundNode(node),_getSpaceAroundNode5=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode4,2),minSpace=_getSpaceAroundNode5[0],maxSpace=_getSpaceAroundNode5[1];var diff=guess-nodePosition;var newPosition=nodePosition;if(diff>0){newPosition=Math.min(nodePosition+(maxSpace-_this3.options.hierarchical.nodeSpacing),guess)}else if(diff<0){newPosition=Math.max(nodePosition-(minSpace-_this3.options.hierarchical.nodeSpacing),guess)}if(newPosition!==nodePosition){_this3.direction.setPosition(node,newPosition);stillShifting=true}};var guess=getGuess(iterations,aboveEdges);moveBranch(guess);guess=getGuess(iterations,allEdges);moveNode(guess)};var minimizeEdgeLengthBottomUp=function minimizeEdgeLengthBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;for(var j=0;j<levels.length;j++){var level=levels[j];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var k=0;k<levelNodes.length;k++){minimizeEdgeLength(1e3,levelNodes[k])}}if(stillShifting!==true){break}}};var shiftBranchesCloserBottomUp=function shiftBranchesCloserBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;shiftElementsCloser(branchShiftCallback,levels,true);if(stillShifting!==true){break}}};var centerAllParents=function centerAllParents(){for(var nodeId in _this3.body.nodes){if(_this3.body.nodes.hasOwnProperty(nodeId))_this3._centerParent(_this3.body.nodes[nodeId])}};var centerAllParentsBottomUp=function centerAllParentsBottomUp(){var levels=_this3.hierarchical.getLevels()\n;levels=levels.reverse();for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var j=0;j<levelNodes.length;j++){_this3._centerParent(levelNodes[j])}}};if(this.options.hierarchical.blockShifting===true){shiftBranchesCloserBottomUp(5);centerAllParents()}if(this.options.hierarchical.edgeMinimization===true){minimizeEdgeLengthBottomUp(20)}if(this.options.hierarchical.parentCentralization===true){centerAllParentsBottomUp()}shiftTrees()}},{key:\"_getSpaceAroundNode\",value:function _getSpaceAroundNode(node,map){var useMap=true;if(map===undefined){useMap=false}var level=this.hierarchical.levels[node.id];if(level!==undefined){var index=this.hierarchical.distributionIndex[node.id];var position=this.direction.getPosition(node);var ordering=this.hierarchical.distributionOrdering[level];var minSpace=1e9;var maxSpace=1e9;if(index!==0){var prevNode=ordering[index-1];if(useMap===true&&map[prevNode.id]===undefined||useMap===false){var prevPos=this.direction.getPosition(prevNode);minSpace=position-prevPos}}if(index!=ordering.length-1){var nextNode=ordering[index+1];if(useMap===true&&map[nextNode.id]===undefined||useMap===false){var nextPos=this.direction.getPosition(nextNode);maxSpace=Math.min(maxSpace,nextPos-position)}}return[minSpace,maxSpace]}else{return[0,0]}}},{key:\"_centerParent\",value:function _centerParent(node){if(this.hierarchical.parentReference[node.id]){var parents=this.hierarchical.parentReference[node.id];for(var i=0;i<parents.length;i++){var parentId=parents[i];var parentNode=this.body.nodes[parentId];var children=this.hierarchical.childrenReference[parentId];if(children!==undefined){var newPosition=this._getCenterPosition(children);var position=this.direction.getPosition(parentNode);var _getSpaceAroundNode6=this._getSpaceAroundNode(parentNode),_getSpaceAroundNode7=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode6,2),minSpace=_getSpaceAroundNode7[0],maxSpace=_getSpaceAroundNode7[1];var diff=position-newPosition;if(diff<0&&Math.abs(diff)<maxSpace-this.options.hierarchical.nodeSpacing||diff>0&&Math.abs(diff)<minSpace-this.options.hierarchical.nodeSpacing){this.direction.setPosition(parentNode,newPosition)}}}}}},{key:\"_placeNodesByHierarchy\",value:function _placeNodesByHierarchy(distribution){this.positionedNodes={};for(var level in distribution){if(distribution.hasOwnProperty(level)){var nodeArray=(0,_keys2[\"default\"])(distribution[level]);nodeArray=this._indexArrayToNodes(nodeArray);this.direction.sort(nodeArray);var handledNodeCount=0;for(var i=0;i<nodeArray.length;i++){var node=nodeArray[i];if(this.positionedNodes[node.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=spacing*handledNodeCount;if(handledNodeCount>0){pos=this.direction.getPosition(nodeArray[i-1])+spacing}this.direction.setPosition(node,pos,level);this._validatePositionAndContinue(node,level,pos);handledNodeCount++}}}}}},{key:\"_placeBranchNodes\",value:function _placeBranchNodes(parentId,parentLevel){var childRef=this.hierarchical.childrenReference[parentId];if(childRef===undefined){return}var childNodes=[];for(var i=0;i<childRef.length;i++){childNodes.push(this.body.nodes[childRef[i]])}this.direction.sort(childNodes);for(var _i5=0;_i5<childNodes.length;_i5++){var childNode=childNodes[_i5];var childNodeLevel=this.hierarchical.levels[childNode.id];if(childNodeLevel>parentLevel&&this.positionedNodes[childNode.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=void 0;if(_i5===0){pos=this.direction.getPosition(this.body.nodes[parentId])}else{pos=this.direction.getPosition(childNodes[_i5-1])+spacing}this.direction.setPosition(childNode,pos,childNodeLevel);this._validatePositionAndContinue(childNode,childNodeLevel,pos)}else{return}}var center=this._getCenterPosition(childNodes);this.direction.setPosition(this.body.nodes[parentId],center,parentLevel)}},{key:\"_validatePositionAndContinue\",value:function _validatePositionAndContinue(node,level,pos){if(!this.hierarchical.isTree)return;if(this.lastNodeOnLevel[level]!==undefined){var previousPos=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[level]]);if(pos-previousPos<this.options.hierarchical.nodeSpacing){var diff=previousPos+this.options.hierarchical.nodeSpacing-pos;var sharedParent=this._findCommonParent(this.lastNodeOnLevel[level],node.id);this._shiftBlock(sharedParent.withChild,diff)}}this.lastNodeOnLevel[level]=node.id;this.positionedNodes[node.id]=true;this._placeBranchNodes(node.id,level)}},{key:\"_indexArrayToNodes\",value:function _indexArrayToNodes(idArray){var array=[];for(var i=0;i<idArray.length;i++){array.push(this.body.nodes[idArray[i]])}return array}},{key:\"_getDistribution\",value:function _getDistribution(){var distribution={};var nodeId=void 0,node=void 0;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];var level=this.hierarchical.levels[nodeId]===undefined?0:this.hierarchical.levels[nodeId];this.direction.fix(node,level);if(distribution[level]===undefined){distribution[level]={}}distribution[level][nodeId]=node}}return distribution}},{key:\"_getActiveEdges\",value:function _getActiveEdges(node){var _this4=this;var result=[];util.forEach(node.edges,function(edge){if(_this4.body.edgeIndices.indexOf(edge.id)!==-1){result.push(edge)}});return result}},{key:\"_getHubSizes\",value:function _getHubSizes(){var _this5=this;var hubSizes={};var nodeIds=this.body.nodeIndices;util.forEach(nodeIds,function(nodeId){var node=_this5.body.nodes[nodeId];var hubSize=_this5._getActiveEdges(node).length;hubSizes[hubSize]=true});var result=[];util.forEach(hubSizes,function(size){result.push(Number(size))});result.sort(function(a,b){return b-a});return result}},{key:\"_determineLevelsByHubsize\",value:function _determineLevelsByHubsize(){var _this6=this;var levelDownstream=function levelDownstream(nodeA,nodeB){_this6.hierarchical.levelDownstream(nodeA,nodeB)};var hubSizes=this._getHubSizes();var _loop=function _loop(i){var hubSize=hubSizes[i];if(hubSize===0)return\"break\";util.forEach(_this6.body.nodeIndices,function(nodeId){var node=_this6.body.nodes[nodeId];if(hubSize===_this6._getActiveEdges(node).length){_this6._crawlNetwork(levelDownstream,nodeId)}})};for(var i=0;i<hubSizes.length;++i){var _ret=_loop(i);if(_ret===\"break\")break}}},{key:\"_determineLevelsCustomCallback\",value:function _determineLevelsCustomCallback(){var _this7=this;var minLevel=1e5;var customCallback=function customCallback(nodeA,nodeB,edge){};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this7.hierarchical.levels[nodeA.id];if(levelA===undefined){levelA=_this7.hierarchical.levels[nodeA.id]=minLevel}var diff=customCallback(NetworkUtil.cloneOptions(nodeA,\"node\"),NetworkUtil.cloneOptions(nodeB,\"node\"),NetworkUtil.cloneOptions(edge,\"edge\"));_this7.hierarchical.levels[nodeB.id]=levelA+diff};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_determineLevelsDirected\",value:function _determineLevelsDirected(){var _this8=this;var minLevel=1e4;var isBidirectional=function isBidirectional(edge){util.forEach(_this8.body.edges,function(otherEdge){if(otherEdge.toId===edge.fromId&&otherEdge.fromId===edge.toId){return true}});return false};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this8.hierarchical.levels[nodeA.id];var levelB=_this8.hierarchical.levels[nodeB.id];if(isBidirectional(edge)&&levelA!==undefined&&levelB!==undefined){return}if(levelA===undefined){levelA=_this8.hierarchical.levels[nodeA.id]=minLevel}if(edge.toId==nodeB.id){_this8.hierarchical.levels[nodeB.id]=levelA+1}else{_this8.hierarchical.levels[nodeB.id]=levelA-1}};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_generateMap\",value:function _generateMap(){var _this9=this;var fillInRelations=function fillInRelations(parentNode,childNode){if(_this9.hierarchical.levels[childNode.id]>_this9.hierarchical.levels[parentNode.id]){_this9.hierarchical.addRelation(parentNode.id,childNode.id)}};this._crawlNetwork(fillInRelations);this.hierarchical.checkIfTree()}},{key:\"_crawlNetwork\",value:function _crawlNetwork(){var _this10=this;var callback=arguments.length>0&&arguments[0]!==undefined?arguments[0]:function(){};var startingNodeId=arguments[1];var progress={};var crawler=function crawler(node,tree){if(progress[node.id]===undefined){_this10.hierarchical.setTreeIndex(node,tree);progress[node.id]=true;var childNode=void 0;var edges=_this10._getActiveEdges(node);for(var i=0;i<edges.length;i++){var edge=edges[i];if(edge.connected===true){if(edge.toId==node.id){childNode=edge.from}else{childNode=edge.to}if(node.id!=childNode.id){callback(node,childNode,edge);crawler(childNode,tree)}}}}};if(startingNodeId===undefined){var treeIndex=0;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(progress[nodeId]===undefined){var node=this.body.nodes[nodeId];crawler(node,treeIndex);treeIndex+=1}}}else{var _node2=this.body.nodes[startingNodeId];if(_node2===undefined){console.error(\"Node not found:\",startingNodeId);return}crawler(_node2)}}},{key:\"_shiftBlock\",value:function _shiftBlock(parentId,diff){var _this11=this;var progress={};var shifter=function shifter(parentId){if(progress[parentId]){return}progress[parentId]=true;_this11.direction.shift(parentId,diff);var childRef=_this11.hierarchical.childrenReference[parentId];if(childRef!==undefined){for(var i=0;i<childRef.length;i++){shifter(childRef[i])}}};shifter(parentId)}},{key:\"_findCommonParent\",value:function _findCommonParent(childA,childB){var _this12=this;var parents={};var iterateParents=function iterateParents(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];parents[parent]=true;iterateParents(parents,parent)}}};var findParent=function findParent(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];if(parents[parent]!==undefined){return{foundParent:parent,withChild:child}}var branch=findParent(parents,parent);if(branch.foundParent!==null){return branch}}}return{foundParent:null,withChild:child}};iterateParents(parents,childA);return findParent(parents,childB)}},{key:\"setDirectionStrategy\",value:function setDirectionStrategy(){var isVertical=this.options.hierarchical.direction===\"UD\"||this.options.hierarchical.direction===\"DU\";if(isVertical){this.direction=new VerticalStrategy(this)}else{this.direction=new HorizontalStrategy(this)}}},{key:\"_getCenterPosition\",value:function _getCenterPosition(childNodes){var minPos=1e9;var maxPos=-1e9;for(var i=0;i<childNodes.length;i++){var childNode=void 0;if(childNodes[i].id!==undefined){childNode=childNodes[i]}else{var childNodeId=childNodes[i];childNode=this.body.nodes[childNodeId]}var position=this.direction.getPosition(childNode);minPos=Math.min(minPos,position);maxPos=Math.max(maxPos,position)}return.5*(minPos+maxPos)}}]);return LayoutEngine}();exports[\"default\"]=LayoutEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.VerticalStrategy=exports.HorizontalStrategy=undefined;var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DirectionInterface=function(){function DirectionInterface(){(0,_classCallCheck3[\"default\"])(this,DirectionInterface)}(0,_createClass3[\"default\"])(DirectionInterface,[{key:\"abstract\",value:function abstract(){throw new Error(\"Can't instantiate abstract class!\")}},{key:\"fake_use\",value:function fake_use(){}},{key:\"curveType\",value:function curveType(){return this.abstract()}},{key:\"getPosition\",value:function getPosition(node){this.fake_use(node);return this.abstract()}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;this.fake_use(node,position,level);this.abstract()}},{key:\"getTreeSize\",value:function getTreeSize(index){this.fake_use(index);return this.abstract()}},{key:\"sort\",value:function sort(nodeArray){this.fake_use(nodeArray);this.abstract()}},{key:\"fix\",value:function fix(node,level){this.fake_use(node,level);this.abstract()}},{key:\"shift\",value:function shift(nodeId,diff){this.fake_use(nodeId,diff);this.abstract()}}]);return DirectionInterface}();var VerticalStrategy=function(_DirectionInterface){(0,_inherits3[\"default\"])(VerticalStrategy,_DirectionInterface);function VerticalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,VerticalStrategy);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(VerticalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(VerticalStrategy)).call(this));_this.layout=layout;return _this}(0,_createClass3[\"default\"])(VerticalStrategy,[{key:\"curveType\",value:function curveType(){return\"horizontal\"}},{key:\"getPosition\",value:function getPosition(node){return node.x}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.x=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_x,max:res.max_x}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.x===undefined||b.x===undefined)return 0;return a.x-b.x})}},{key:\"fix\",value:function fix(node,level){node.y=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.y=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].x+=diff}}]);return VerticalStrategy}(DirectionInterface);var HorizontalStrategy=function(_DirectionInterface2){(0,_inherits3[\"default\"])(HorizontalStrategy,_DirectionInterface2);function HorizontalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,HorizontalStrategy);var _this2=(0,_possibleConstructorReturn3[\"default\"])(this,(HorizontalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(HorizontalStrategy)).call(this));_this2.layout=layout;return _this2}(0,_createClass3[\"default\"])(HorizontalStrategy,[{key:\"curveType\",value:function curveType(){return\"vertical\"}},{key:\"getPosition\",value:function getPosition(node){return node.y}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.y=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_y,max:res.max_y}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.y===undefined||b.y===undefined)return 0;return a.y-b.y})}},{key:\"fix\",value:function fix(node,level){node.x=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.x=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].y+=diff}}]);return HorizontalStrategy}(DirectionInterface);exports.HorizontalStrategy=HorizontalStrategy;exports.VerticalStrategy=VerticalStrategy},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var ManipulationSystem=function(){function ManipulationSystem(body,canvas,selectionHandler){var _this=this;(0,_classCallCheck3[\"default\"])(this,ManipulationSystem);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.editMode=false;this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined;this.manipulationHammers=[];this.temporaryUIFunctions={};this.temporaryEventFunctions=[];this.touchTime=0;this.temporaryIds={nodes:[],edges:[]};this.guiEnabled=false;this.inMode=false;this.selectedControlNode=undefined;this.options={};this.defaultOptions={enabled:false,initiallyActive:false,addNode:true,addEdge:true,editNode:undefined,editEdge:true,deleteNode:true,deleteEdge:true,controlNodeStyle:{shape:\"dot\",size:6,color:{background:\"#ff0000\",border:\"#3c3c3c\",highlight:{background:\"#07f968\",border:\"#3c3c3c\"}},borderWidth:2,borderWidthSelected:2}};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"destroy\",function(){_this._clean()});this.body.emitter.on(\"_dataChanged\",this._restore.bind(this));this.body.emitter.on(\"_resetData\",this._restore.bind(this))}(0,_createClass3[\"default\"])(ManipulationSystem,[{key:\"_restore\",value:function _restore(){if(this.inMode!==false){if(this.options.initiallyActive===true){this.enableEditMode()}else{this.disableEditMode()}}}},{key:\"setOptions\",value:function setOptions(options,allOptions,globalOptions){if(allOptions!==undefined){if(allOptions.locale!==undefined){this.options.locale=allOptions.locale}else{this.options.locale=globalOptions.locale}if(allOptions.locales!==undefined){this.options.locales=allOptions.locales}else{this.options.locales=globalOptions.locales}}if(options!==undefined){if(typeof options===\"boolean\"){this.options.enabled=options}else{this.options.enabled=true;util.deepExtend(this.options,options)}if(this.options.initiallyActive===true){this.editMode=true}this._setup()}}},{key:\"toggleEditMode\",value:function toggleEditMode(){if(this.editMode===true){this.disableEditMode()}else{this.enableEditMode()}}},{key:\"enableEditMode\",value:function enableEditMode(){this.editMode=true;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";this.editModeDiv.style.display=\"none\";this.showManipulatorToolbar()}}},{key:\"disableEditMode\",value:function disableEditMode(){this.editMode=false;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"none\";this.closeDiv.style.display=\"none\";this.editModeDiv.style.display=\"block\";this._createEditButton()}}},{key:\"showManipulatorToolbar\",value:function showManipulatorToolbar(){this._clean();this.manipulationDOM={};if(this.guiEnabled===true){this.editMode=true;this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";var selectedNodeCount=this.selectionHandler._getSelectedNodeCount();var selectedEdgeCount=this.selectionHandler._getSelectedEdgeCount();var selectedTotalCount=selectedNodeCount+selectedEdgeCount;var locale=this.options.locales[this.options.locale];var needSeperator=false;if(this.options.addNode!==false){this._createAddNodeButton(locale);needSeperator=true}if(this.options.addEdge!==false){if(needSeperator===true){this._createSeperator(1)}else{needSeperator=true}this._createAddEdgeButton(locale)}if(selectedNodeCount===1&&typeof this.options.editNode===\"function\"){if(needSeperator===true){this._createSeperator(2)}else{needSeperator=true}this._createEditNodeButton(locale)}else if(selectedEdgeCount===1&&selectedNodeCount===0&&this.options.editEdge!==false){if(needSeperator===true){this._createSeperator(3)}else{needSeperator=true}this._createEditEdgeButton(locale)}if(selectedTotalCount!==0){if(selectedNodeCount>0&&this.options.deleteNode!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}else if(selectedNodeCount===0&&this.options.deleteEdge!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}}this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this));this._temporaryBindEvent(\"select\",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit(\"_redraw\")}},{key:\"addNodeMode\",value:function addNodeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addNode\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"addDescription\"]||this.options.locales[\"en\"][\"addDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent(\"click\",this._performAddNode.bind(this))}},{key:\"editNode\",value:function editNode(){var _this2=this;if(this.editMode!==true){this.enableEditMode()}this._clean();var node=this.selectionHandler._getSelectedNode();if(node!==undefined){this.inMode=\"editNode\";if(typeof this.options.editNode===\"function\"){if(node.isCluster!==true){var data=util.deepExtend({},node.options,false);data.x=node.x;data.y=node.y;if(this.options.editNode.length===2){this.options.editNode(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this2.inMode===\"editNode\"){_this2.body.data.nodes.getDataSet().update(finalizedData)}_this2.showManipulatorToolbar()})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{alert(this.options.locales[this.options.locale][\"editClusterError\"]||this.options.locales[\"en\"][\"editClusterError\"])}}else{throw new Error(\"No function has been configured to handle the editing of nodes.\")}}else{this.showManipulatorToolbar()}}},{key:\"addEdgeMode\",value:function addEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addEdge\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"edgeDescription\"]||this.options.locales[\"en\"][\"edgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI(\"onTouch\",this._handleConnect.bind(this));this._temporaryBindUI(\"onDragEnd\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDrag\",this._dragControlNode.bind(this));this._temporaryBindUI(\"onRelease\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDragStart\",this._dragStartEdge.bind(this));this._temporaryBindUI(\"onHold\",function(){})}},{key:\"editEdgeMode\",value:function editEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"editEdge\";if((0,_typeof3[\"default\"])(this.options.editEdge)===\"object\"&&typeof this.options.editEdge.editWithoutDrag===\"function\"){this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var edge=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(edge.from,edge.to);return}}if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"editEdgeDescription\"]||this.options.locales[\"en\"][\"editEdgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var _edge=this.body.edges[this.edgeBeingEditedId];var controlNodeFrom=this._getNewTargetNode(_edge.from.x,_edge.from.y);var controlNodeTo=this._getNewTargetNode(_edge.to.x,_edge.to.y);this.temporaryIds.nodes.push(controlNodeFrom.id);this.temporaryIds.nodes.push(controlNodeTo.id);this.body.nodes[controlNodeFrom.id]=controlNodeFrom;this.body.nodeIndices.push(controlNodeFrom.id);this.body.nodes[controlNodeTo.id]=controlNodeTo;this.body.nodeIndices.push(controlNodeTo.id);this._temporaryBindUI(\"onTouch\",this._controlNodeTouch.bind(this));this._temporaryBindUI(\"onTap\",function(){});this._temporaryBindUI(\"onHold\",function(){});this._temporaryBindUI(\"onDragStart\",this._controlNodeDragStart.bind(this));this._temporaryBindUI(\"onDrag\",this._controlNodeDrag.bind(this));this._temporaryBindUI(\"onDragEnd\",this._controlNodeDragEnd.bind(this));this._temporaryBindUI(\"onMouseMove\",function(){});this._temporaryBindEvent(\"beforeDrawing\",function(ctx){var positions=_edge.edgeType.findBorderPositions(ctx);if(controlNodeFrom.selected===false){controlNodeFrom.x=positions.from.x;controlNodeFrom.y=positions.from.y}if(controlNodeTo.selected===false){controlNodeTo.x=positions.to.x;controlNodeTo.y=positions.to.y}});this.body.emitter.emit(\"_redraw\")}else{this.showManipulatorToolbar()}}},{key:\"deleteSelected\",value:function deleteSelected(){var _this3=this;if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"delete\";var selectedNodes=this.selectionHandler.getSelectedNodes();var selectedEdges=this.selectionHandler.getSelectedEdges();var deleteFunction=undefined;if(selectedNodes.length>0){for(var i=0;i<selectedNodes.length;i++){if(this.body.nodes[selectedNodes[i]].isCluster===true){alert(this.options.locales[this.options.locale][\"deleteClusterError\"]||this.options.locales[\"en\"][\"deleteClusterError\"]);return}}if(typeof this.options.deleteNode===\"function\"){deleteFunction=this.options.deleteNode}}else if(selectedEdges.length>0){if(typeof this.options.deleteEdge===\"function\"){deleteFunction=this.options.deleteEdge}}if(typeof deleteFunction===\"function\"){var data={nodes:selectedNodes,edges:selectedEdges};if(deleteFunction.length===2){deleteFunction(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this3.inMode===\"delete\"){_this3.body.data.edges.getDataSet().remove(finalizedData.edges);_this3.body.data.nodes.getDataSet().remove(finalizedData.nodes);_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}else{_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}})}else{throw new Error(\"The function for delete does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().remove(selectedEdges);this.body.data.nodes.getDataSet().remove(selectedNodes);this.body.emitter.emit(\"startSimulation\");this.showManipulatorToolbar()}}},{key:\"_setup\",value:function _setup(){if(this.options.enabled===true){this.guiEnabled=true;this._createWrappers();if(this.editMode===false){this._createEditButton()}else{this.showManipulatorToolbar()}}else{this._removeManipulationDOM();this.guiEnabled=false}}},{key:\"_createWrappers\",value:function _createWrappers(){if(this.manipulationDiv===undefined){this.manipulationDiv=document.createElement(\"div\");this.manipulationDiv.className=\"vis-manipulation\";if(this.editMode===true){this.manipulationDiv.style.display=\"block\"}else{this.manipulationDiv.style.display=\"none\"}this.canvas.frame.appendChild(this.manipulationDiv)}if(this.editModeDiv===undefined){this.editModeDiv=document.createElement(\"div\");this.editModeDiv.className=\"vis-edit-mode\";if(this.editMode===true){this.editModeDiv.style.display=\"none\"}else{this.editModeDiv.style.display=\"block\"}this.canvas.frame.appendChild(this.editModeDiv)}if(this.closeDiv===undefined){this.closeDiv=document.createElement(\"div\");this.closeDiv.className=\"vis-close\";this.closeDiv.style.display=this.manipulationDiv.style.display;this.canvas.frame.appendChild(this.closeDiv)}}},{key:\"_getNewTargetNode\",value:function _getNewTargetNode(x,y){var controlNodeStyle=util.deepExtend({},this.options.controlNodeStyle);controlNodeStyle.id=\"targetNode\"+util.randomUUID();controlNodeStyle.hidden=false;controlNodeStyle.physics=false;controlNodeStyle.x=x;controlNodeStyle.y=y;var node=this.body.functions.createNode(controlNodeStyle);node.shape.boundingBox={left:x,right:x,top:y,bottom:y};return node}},{key:\"_createEditButton\",value:function _createEditButton(){this._clean();this.manipulationDOM={};util.recursiveDOMDelete(this.editModeDiv);var locale=this.options.locales[this.options.locale];var button=this._createButton(\"editMode\",\"vis-button vis-edit vis-edit-mode\",locale[\"edit\"]||this.options.locales[\"en\"][\"edit\"]);this.editModeDiv.appendChild(button);this._bindHammerToDiv(button,this.toggleEditMode.bind(this))}},{key:\"_clean\",value:function _clean(){this.inMode=false;if(this.guiEnabled===true){util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.manipulationDiv);this._cleanManipulatorHammers()}this._cleanupTemporaryNodesAndEdges();this._unbindTemporaryUIs();this._unbindTemporaryEvents();this.body.emitter.emit(\"restorePhysics\")}},{key:\"_cleanManipulatorHammers\",value:function _cleanManipulatorHammers(){if(this.manipulationHammers.length!=0){for(var i=0;i<this.manipulationHammers.length;i++){this.manipulationHammers[i].destroy()}this.manipulationHammers=[]}}},{key:\"_removeManipulationDOM\",value:function _removeManipulationDOM(){this._clean();util.recursiveDOMDelete(this.manipulationDiv);util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.closeDiv);if(this.manipulationDiv){this.canvas.frame.removeChild(this.manipulationDiv)}if(this.editModeDiv){this.canvas.frame.removeChild(this.editModeDiv)}if(this.closeDiv){this.canvas.frame.removeChild(this.closeDiv)}this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined}},{key:\"_createSeperator\",value:function _createSeperator(){var index=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;this.manipulationDOM[\"seperatorLineDiv\"+index]=document.createElement(\"div\");this.manipulationDOM[\"seperatorLineDiv\"+index].className=\"vis-separator-line\";this.manipulationDiv.appendChild(this.manipulationDOM[\"seperatorLineDiv\"+index])}},{key:\"_createAddNodeButton\",value:function _createAddNodeButton(locale){var button=this._createButton(\"addNode\",\"vis-button vis-add\",locale[\"addNode\"]||this.options.locales[\"en\"][\"addNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addNodeMode.bind(this))}},{key:\"_createAddEdgeButton\",value:function _createAddEdgeButton(locale){var button=this._createButton(\"addEdge\",\"vis-button vis-connect\",locale[\"addEdge\"]||this.options.locales[\"en\"][\"addEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addEdgeMode.bind(this))}},{key:\"_createEditNodeButton\",value:function _createEditNodeButton(locale){var button=this._createButton(\"editNode\",\"vis-button vis-edit\",locale[\"editNode\"]||this.options.locales[\"en\"][\"editNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editNode.bind(this))}},{key:\"_createEditEdgeButton\",value:function _createEditEdgeButton(locale){var button=this._createButton(\"editEdge\",\"vis-button vis-edit\",locale[\"editEdge\"]||this.options.locales[\"en\"][\"editEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editEdgeMode.bind(this))}},{key:\"_createDeleteButton\",value:function _createDeleteButton(locale){var deleteBtnClass;if(this.options.rtl){deleteBtnClass=\"vis-button vis-delete-rtl\"}else{deleteBtnClass=\"vis-button vis-delete\"}var button=this._createButton(\"delete\",deleteBtnClass,locale[\"del\"]||this.options.locales[\"en\"][\"del\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.deleteSelected.bind(this))}},{key:\"_createBackButton\",value:function _createBackButton(locale){\nvar button=this._createButton(\"back\",\"vis-button vis-back\",locale[\"back\"]||this.options.locales[\"en\"][\"back\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.showManipulatorToolbar.bind(this))}},{key:\"_createButton\",value:function _createButton(id,className,label){var labelClassName=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"vis-label\";this.manipulationDOM[id+\"Div\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Div\"].className=className;this.manipulationDOM[id+\"Label\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Label\"].className=labelClassName;this.manipulationDOM[id+\"Label\"].innerHTML=label;this.manipulationDOM[id+\"Div\"].appendChild(this.manipulationDOM[id+\"Label\"]);return this.manipulationDOM[id+\"Div\"]}},{key:\"_createDescription\",value:function _createDescription(label){this.manipulationDiv.appendChild(this._createButton(\"description\",\"vis-button vis-none\",label))}},{key:\"_temporaryBindEvent\",value:function _temporaryBindEvent(event,newFunction){this.temporaryEventFunctions.push({event:event,boundFunction:newFunction});this.body.emitter.on(event,newFunction)}},{key:\"_temporaryBindUI\",value:function _temporaryBindUI(UIfunctionName,newFunction){if(this.body.eventListeners[UIfunctionName]!==undefined){this.temporaryUIFunctions[UIfunctionName]=this.body.eventListeners[UIfunctionName];this.body.eventListeners[UIfunctionName]=newFunction}else{throw new Error(\"This UI function does not exist. Typo? You tried: \"+UIfunctionName+\" possible are: \"+(0,_stringify2[\"default\"])((0,_keys2[\"default\"])(this.body.eventListeners)))}}},{key:\"_unbindTemporaryUIs\",value:function _unbindTemporaryUIs(){for(var functionName in this.temporaryUIFunctions){if(this.temporaryUIFunctions.hasOwnProperty(functionName)){this.body.eventListeners[functionName]=this.temporaryUIFunctions[functionName];delete this.temporaryUIFunctions[functionName]}}this.temporaryUIFunctions={}}},{key:\"_unbindTemporaryEvents\",value:function _unbindTemporaryEvents(){for(var i=0;i<this.temporaryEventFunctions.length;i++){var eventName=this.temporaryEventFunctions[i].event;var boundFunction=this.temporaryEventFunctions[i].boundFunction;this.body.emitter.off(eventName,boundFunction)}this.temporaryEventFunctions=[]}},{key:\"_bindHammerToDiv\",value:function _bindHammerToDiv(domElement,boundFunction){var hammer=new Hammer(domElement,{});hammerUtil.onTouch(hammer,boundFunction);this.manipulationHammers.push(hammer)}},{key:\"_cleanupTemporaryNodesAndEdges\",value:function _cleanupTemporaryNodesAndEdges(){for(var i=0;i<this.temporaryIds.edges.length;i++){this.body.edges[this.temporaryIds.edges[i]].disconnect();delete this.body.edges[this.temporaryIds.edges[i]];var indexTempEdge=this.body.edgeIndices.indexOf(this.temporaryIds.edges[i]);if(indexTempEdge!==-1){this.body.edgeIndices.splice(indexTempEdge,1)}}for(var _i=0;_i<this.temporaryIds.nodes.length;_i++){delete this.body.nodes[this.temporaryIds.nodes[_i]];var indexTempNode=this.body.nodeIndices.indexOf(this.temporaryIds.nodes[_i]);if(indexTempNode!==-1){this.body.nodeIndices.splice(indexTempNode,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:\"_controlNodeTouch\",value:function _controlNodeTouch(event){this.selectionHandler.unselectAll();this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation)}},{key:\"_controlNodeDragStart\",value:function _controlNodeDragStart(event){var pointer=this.lastTouch;var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var from=this.body.nodes[this.temporaryIds.nodes[0]];var to=this.body.nodes[this.temporaryIds.nodes[1]];var edge=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=undefined;var fromSelect=from.isOverlappingWith(pointerObj);var toSelect=to.isOverlappingWith(pointerObj);if(fromSelect===true){this.selectedControlNode=from;edge.edgeType.from=from}else if(toSelect===true){this.selectedControlNode=to;edge.edgeType.to=to}if(this.selectedControlNode!==undefined){this.selectionHandler.selectObject(this.selectedControlNode)}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDrag\",value:function _controlNodeDrag(event){this.body.emitter.emit(\"disablePhysics\");var pointer=this.body.functions.getPointer(event.center);var pos=this.canvas.DOMtoCanvas(pointer);if(this.selectedControlNode!==undefined){this.selectedControlNode.x=pos.x;this.selectedControlNode.y=pos.y}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDragEnd\",value:function _controlNodeDragEnd(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var edge=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===undefined){return}this.selectionHandler.unselectAll();var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(overlappingNodeIds[i]!==this.selectedControlNode.id){node=this.body.nodes[overlappingNodeIds[i]];break}}if(node!==undefined&&this.selectedControlNode!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var from=this.body.nodes[this.temporaryIds.nodes[0]];if(this.selectedControlNode.id===from.id){this._performEditEdge(node.id,edge.to.id)}else{this._performEditEdge(edge.from.id,node.id)}}}else{edge.updateEdgeType();this.body.emitter.emit(\"restorePhysics\")}this.body.emitter.emit(\"_redraw\")}},{key:\"_handleConnect\",value:function _handleConnect(event){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation);var pointer=this.lastTouch;var node=this.selectionHandler.getNodeAt(pointer);if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var targetNode=this._getNewTargetNode(node.x,node.y);this.body.nodes[targetNode.id]=targetNode;this.body.nodeIndices.push(targetNode.id);var connectionEdge=this.body.functions.createEdge({id:\"connectionEdge\"+util.randomUUID(),from:node.id,to:targetNode.id,physics:false,smooth:{enabled:true,type:\"continuous\",roundness:.5}});this.body.edges[connectionEdge.id]=connectionEdge;this.body.edgeIndices.push(connectionEdge.id);this.temporaryIds.nodes.push(targetNode.id);this.temporaryIds.edges.push(connectionEdge.id)}}this.touchTime=(new Date).valueOf()}}},{key:\"_dragControlNode\",value:function _dragControlNode(event){var pointer=this.body.functions.getPointer(event.center);if(this.temporaryIds.nodes[0]!==undefined){var targetNode=this.body.nodes[this.temporaryIds.nodes[0]];targetNode.x=this.canvas._XconvertDOMtoCanvas(pointer.x);targetNode.y=this.canvas._YconvertDOMtoCanvas(pointer.y);this.body.emitter.emit(\"_redraw\")}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}}},{key:\"_finishConnect\",value:function _finishConnect(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var connectFromId=undefined;if(this.temporaryIds.edges[0]!==undefined){connectFromId=this.body.edges[this.temporaryIds.edges[0]].fromId}var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(this.temporaryIds.nodes.indexOf(overlappingNodeIds[i])===-1){node=this.body.nodes[overlappingNodeIds[i]];break}}this._cleanupTemporaryNodesAndEdges();if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{if(this.body.nodes[connectFromId]!==undefined&&this.body.nodes[node.id]!==undefined){this._performAddEdge(connectFromId,node.id)}}}this.body.emitter.emit(\"_redraw\")}},{key:\"_dragStartEdge\",value:function _dragStartEdge(event){var pointer=this.lastTouch;this.selectionHandler._generateClickEvent(\"dragStart\",event,pointer,undefined,true)}},{key:\"_performAddNode\",value:function _performAddNode(clickData){var _this4=this;var defaultData={id:util.randomUUID(),x:clickData.pointer.canvas.x,y:clickData.pointer.canvas.y,label:\"new\"};if(typeof this.options.addNode===\"function\"){if(this.options.addNode.length===2){this.options.addNode(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this4.inMode===\"addNode\"){_this4.body.data.nodes.getDataSet().add(finalizedData);_this4.showManipulatorToolbar()}})}else{this.showManipulatorToolbar();throw new Error(\"The function for add does not support two arguments (data,callback)\")}}else{this.body.data.nodes.getDataSet().add(defaultData);this.showManipulatorToolbar()}}},{key:\"_performAddEdge\",value:function _performAddEdge(sourceNodeId,targetNodeId){var _this5=this;var defaultData={from:sourceNodeId,to:targetNodeId};if(typeof this.options.addEdge===\"function\"){if(this.options.addEdge.length===2){this.options.addEdge(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this5.inMode===\"addEdge\"){_this5.body.data.edges.getDataSet().add(finalizedData);_this5.selectionHandler.unselectAll();_this5.showManipulatorToolbar()}})}else{throw new Error(\"The function for connect does not support two arguments (data,callback)\")}}else{this.body.data.edges.getDataSet().add(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}},{key:\"_performEditEdge\",value:function _performEditEdge(sourceNodeId,targetNodeId){var _this6=this;var defaultData={id:this.edgeBeingEditedId,from:sourceNodeId,to:targetNodeId,label:this.body.data.edges._data[this.edgeBeingEditedId].label};var eeFunct=this.options.editEdge;if((typeof eeFunct===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(eeFunct))===\"object\"){eeFunct=eeFunct.editWithoutDrag}if(typeof eeFunct===\"function\"){if(eeFunct.length===2){eeFunct(defaultData,function(finalizedData){if(finalizedData===null||finalizedData===undefined||_this6.inMode!==\"editEdge\"){_this6.body.edges[defaultData.id].updateEdgeType();_this6.body.emitter.emit(\"_redraw\");_this6.showManipulatorToolbar()}else{_this6.body.data.edges.getDataSet().update(finalizedData);_this6.selectionHandler.unselectAll();_this6.showManipulatorToolbar()}})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().update(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}}]);return ManipulationSystem}();exports[\"default\"]=ManipulationSystem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _FloydWarshall=__webpack_require__(239);var _FloydWarshall2=_interopRequireDefault(_FloydWarshall);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var KamadaKawai=function(){function KamadaKawai(body,edgeLength,edgeStrength){(0,_classCallCheck3[\"default\"])(this,KamadaKawai);this.body=body;this.springLength=edgeLength;this.springConstant=edgeStrength;this.distanceSolver=new _FloydWarshall2[\"default\"]}(0,_createClass3[\"default\"])(KamadaKawai,[{key:\"setOptions\",value:function setOptions(options){if(options){if(options.springLength){this.springLength=options.springLength}if(options.springConstant){this.springConstant=options.springConstant}}}},{key:\"solve\",value:function solve(nodesArray,edgesArray){var ignoreClusters=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var D_matrix=this.distanceSolver.getDistances(this.body,nodesArray,edgesArray);this._createL_matrix(D_matrix);this._createK_matrix(D_matrix);this._createE_matrix();var threshold=.01;var innerThreshold=1;var iterations=0;var maxIterations=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3));var maxInnerIterations=5;var maxEnergy=1e9;var highE_nodeId=0,dE_dx=0,dE_dy=0,delta_m=0,subIterations=0;while(maxEnergy>threshold&&iterations<maxIterations){iterations+=1;var _getHighestEnergyNode2=this._getHighestEnergyNode(ignoreClusters);var _getHighestEnergyNode3=(0,_slicedToArray3[\"default\"])(_getHighestEnergyNode2,4);highE_nodeId=_getHighestEnergyNode3[0];maxEnergy=_getHighestEnergyNode3[1];dE_dx=_getHighestEnergyNode3[2];dE_dy=_getHighestEnergyNode3[3];delta_m=maxEnergy;subIterations=0;while(delta_m>innerThreshold&&subIterations<maxInnerIterations){subIterations+=1;this._moveNode(highE_nodeId,dE_dx,dE_dy);var _getEnergy2=this._getEnergy(highE_nodeId);var _getEnergy3=(0,_slicedToArray3[\"default\"])(_getEnergy2,3);delta_m=_getEnergy3[0];dE_dx=_getEnergy3[1];dE_dy=_getEnergy3[2]}}}},{key:\"_getHighestEnergyNode\",value:function _getHighestEnergyNode(ignoreClusters){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var maxEnergy=0;var maxEnergyNodeId=nodesArray[0];var dE_dx_max=0,dE_dy_max=0;for(var nodeIdx=0;nodeIdx<nodesArray.length;nodeIdx++){var m=nodesArray[nodeIdx];if(nodes[m].predefinedPosition===false||nodes[m].isCluster===true&&ignoreClusters===true||nodes[m].options.fixed.x===true||nodes[m].options.fixed.y===true){var _getEnergy4=this._getEnergy(m),_getEnergy5=(0,_slicedToArray3[\"default\"])(_getEnergy4,3),delta_m=_getEnergy5[0],dE_dx=_getEnergy5[1],dE_dy=_getEnergy5[2];if(maxEnergy<delta_m){maxEnergy=delta_m;maxEnergyNodeId=m;dE_dx_max=dE_dx;dE_dy_max=dE_dy}}}return[maxEnergyNodeId,maxEnergy,dE_dx_max,dE_dy_max]}},{key:\"_getEnergy\",value:function _getEnergy(m){var _E_sums$m=(0,_slicedToArray3[\"default\"])(this.E_sums[m],2),dE_dx=_E_sums$m[0],dE_dy=_E_sums$m[1];var delta_m=Math.sqrt(Math.pow(dE_dx,2)+Math.pow(dE_dy,2));return[delta_m,dE_dx,dE_dy]}},{key:\"_moveNode\",value:function _moveNode(m,dE_dx,dE_dy){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var d2E_dx2=0;var d2E_dxdy=0;var d2E_dy2=0;var x_m=nodes[m].x;var y_m=nodes[m].y;var km=this.K_matrix[m];var lm=this.L_matrix[m];for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var kmat=km[i];var lmat=lm[i];var denominator=1/Math.pow(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2),1.5);d2E_dx2+=kmat*(1-lmat*Math.pow(y_m-y_i,2)*denominator);d2E_dxdy+=kmat*(lmat*(x_m-x_i)*(y_m-y_i)*denominator);d2E_dy2+=kmat*(1-lmat*Math.pow(x_m-x_i,2)*denominator)}}var A=d2E_dx2,B=d2E_dxdy,C=dE_dx,D=d2E_dy2,E=dE_dy;var dy=(C/A+E/B)/(B/A-D/B);var dx=-(B*dy+C)/A;nodes[m].x+=dx;nodes[m].y+=dy;this._updateE_matrix(m)}},{key:\"_createL_matrix\",value:function _createL_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeLength=this.springLength;this.L_matrix=[];for(var i=0;i<nodesArray.length;i++){this.L_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.L_matrix[nodesArray[i]][nodesArray[j]]=edgeLength*D_matrix[nodesArray[i]][nodesArray[j]]}}}},{key:\"_createK_matrix\",value:function _createK_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeStrength=this.springConstant;this.K_matrix=[];for(var i=0;i<nodesArray.length;i++){this.K_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.K_matrix[nodesArray[i]][nodesArray[j]]=edgeStrength*Math.pow(D_matrix[nodesArray[i]][nodesArray[j]],-2)}}}},{key:\"_createE_matrix\",value:function _createE_matrix(){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;this.E_matrix={};this.E_sums={};for(var mIdx=0;mIdx<nodesArray.length;mIdx++){this.E_matrix[nodesArray[mIdx]]=[]}for(var _mIdx=0;_mIdx<nodesArray.length;_mIdx++){var m=nodesArray[_mIdx];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=_mIdx;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));this.E_matrix[m][iIdx]=[this.K_matrix[m][i]*(x_m-x_i-this.L_matrix[m][i]*(x_m-x_i)*denominator),this.K_matrix[m][i]*(y_m-y_i-this.L_matrix[m][i]*(y_m-y_i)*denominator)];this.E_matrix[i][_mIdx]=this.E_matrix[m][iIdx];dE_dx+=this.E_matrix[m][iIdx][0];dE_dy+=this.E_matrix[m][iIdx][1]}}this.E_sums[m]=[dE_dx,dE_dy]}}},{key:\"_updateE_matrix\",value:function _updateE_matrix(m){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var colm=this.E_matrix[m];var kcolm=this.K_matrix[m];var lcolm=this.L_matrix[m];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var cell=colm[iIdx];var oldDx=cell[0];var oldDy=cell[1];var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));var dx=kcolm[i]*(x_m-x_i-lcolm[i]*(x_m-x_i)*denominator);var dy=kcolm[i]*(y_m-y_i-lcolm[i]*(y_m-y_i)*denominator);colm[iIdx]=[dx,dy];dE_dx+=dx;dE_dy+=dy;var sum=this.E_sums[i];sum[0]+=dx-oldDx;sum[1]+=dy-oldDy}}this.E_sums[m]=[dE_dx,dE_dy]}}]);return KamadaKawai}();exports[\"default\"]=KamadaKawai},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var FloydWarshall=function(){function FloydWarshall(){(0,_classCallCheck3[\"default\"])(this,FloydWarshall)}(0,_createClass3[\"default\"])(FloydWarshall,[{key:\"getDistances\",value:function getDistances(body,nodesArray,edgesArray){var D_matrix={};var edges=body.edges;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var cell={};D_matrix[node]=cell;for(var j=0;j<nodesArray.length;j++){cell[nodesArray[j]]=i==j?0:1e9}}for(var _i=0;_i<edgesArray.length;_i++){var edge=edges[edgesArray[_i]];if(edge.connected===true&&D_matrix[edge.fromId]!==undefined&&D_matrix[edge.toId]!==undefined){D_matrix[edge.fromId][edge.toId]=1;D_matrix[edge.toId][edge.fromId]=1}}var nodeCount=nodesArray.length;for(var k=0;k<nodeCount;k++){var knode=nodesArray[k];var kcolm=D_matrix[knode];for(var _i2=0;_i2<nodeCount-1;_i2++){var inode=nodesArray[_i2];var icolm=D_matrix[inode];for(var _j=_i2+1;_j<nodeCount;_j++){var jnode=nodesArray[_j];var jcolm=D_matrix[jnode];var val=Math.min(icolm[jnode],icolm[knode]+kcolm[jnode]);icolm[jnode]=val;jcolm[inode]=val}}}return D_matrix}}]);return FloydWarshall}();exports[\"default\"]=FloydWarshall}])});\n",
"type": "application/javascript",
"module-type": "library"
}
}
}
{
"tiddlers": {
"$:/plugins/tg/ro/advanced-search-button-style": {
"created": "20150519114003182",
"text": "/* Hide advanced search button */\n.tc-image-advanced-search-button.tc-image-button {\n padding-left: 15px;\n}",
"type": "text/css",
"title": "$:/plugins/tg/ro/advanced-search-button-style",
"tags": "$:/tags/advanced-search-button",
"modifier": "TonGerner",
"modified": "20191230134649191",
"creator": "TonGerner"
},
"$:/plugins/tg/ro/change-settings": {
"created": "20161108100322449",
"text": "!!4) Settings\nTo customise the behaviour of TiddlyWiki\n\n{{$:/snippets/viewswitcher}}\n{{$:/plugins/tg/ro/sidebar-layout}}\n{{$:/core/ui/ControlPanel/Settings}}\n",
"title": "$:/plugins/tg/ro/change-settings",
"tags": "",
"modified": "20191230134715488",
"caption": "4. Settings"
},
"$:/plugins/tg/ro/help": {
"created": "20140716184603499",
"text": "!! Help\n\nBefore you 'publish' your ~TiddlyWiki:\n\n# Make a backup of your wiki\n# Get a defined start-up situation for your TW:\n#* Define your starting tiddler(s) in [[$:/DefaultTiddlers]]\n#* If required, define the state of the sidebar tabs\n#* If required create a tiddler (e.g. `xyz`) which transcludes $:/plugins/tg/ro/publish to create another option to return from readonly to edit mode\n#* If required change the keyboard shortut (Ctrl-Shift-Alt-P) for opening $:/plugins/tg/ro/publish via Control Panel > Keyboard Shortcuts\n# Follow the procedure given in tabs 1 to 5.\n\nThere are a few ways to return from readonly to edit mode:\n\n# Press the configured keyboard shortcut (default Ctrl-Shift-Alt-P), which opens $:/plugins/tg/ro/publish\n# Start the TW with `#xyz` appended which opens $:/plugins/tg/ro/publish\n# Search for:\n#* ''Publish'' to get to $:/plugins/tg/ro/publish\n#* ''~ControlPanel'' to get to ''$:/ControlPanel > Appearance > Publish''\n\n<<<\n''Note:''<br>\n@@.RED Although you can hide the 'Sidebar' and 'Advanced Search' button, they remain 'active'!@@\n<<<\n",
"title": "$:/plugins/tg/ro/help",
"modifier": "TonGerner",
"modified": "20200318122932944",
"creator": "TonGerner",
"caption": "Help"
},
"$:/plugins/tg/ro/hide-sidebar-buttons": {
"created": "20161108100124814",
"text": "!! Show/hide sidebar buttons\nUncheck to hide the appropriate sidebar button\n\n|Button |visible |note |h\n|Sidebar button (<<icn $:/core/images/chevron-left>>/<<icn $:/core/images/chevron-right>>) | <$checkbox tiddler=\"$:/core/ui/TopBar/menu\" tag=\"$:/tags/TopRightBar\"/> | 1 |\n|Advanced search button (<<icn $:/core/images/advanced-search-button>>) | <$checkbox tiddler=\"$:/plugins/tg/ro/advanced-search-button-style\" tag=\"$:/tags/Stylesheet\" invertTag=\"yes\"/> | 1 |\n|Publish button (<<icn $:/plugins/tg/ro/images/publish>>) | <$checkbox tiddler=\"$:/plugins/tg/ro/publish-button\" tag=\"$:/tags/TopRightBar\"/> | 2 |\n\n<<<\n''Note:''\n\n# Although 'invisible' (`display:none;`), ''Sidebar'' and ''Advanced search'' buttons stay active!\n# The ''Publish'' button is invisible and inactive (`$:/tags/TopRightBar` removed)\n<<<",
"title": "$:/plugins/tg/ro/hide-sidebar-buttons",
"tags": "",
"modified": "20200316123412336",
"caption": "3. Sidebar buttons"
},
"$:/plugins/tg/ro/hide-sidebar-tabs": {
"text": "\\define check()\n<$checkbox\ntag=\"$:/tags/SideBar\"\nchecked=\"$:/tags/SideBar\"\nunchecked=\"$:/tags/hide\"\ndefault=\"$:/tags/SideBar\"\ncheckactions=\"\"\"<$action-deletefield tags/><$action-setfield tags=\"$:/tags/SideBar\"/>\"\"\"\nuncheckactions=\"\"\"<$action-deletefield tags/><$action-setfield tags=\"$:/tags/hide\"/>\"\"\"\n<$link to={{!!title}}> \n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$checkbox>\n\\end\n\n!! Show/hide sidebar tabs\nUncheck to hide the appropriate sidebar tab\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]]\"><br>\n<<check>>\n</$list>\n<$list filter=\"[tag[$:/tags/hide]]\"><br>\n<<check>>\n</$list>\n",
"title": "$:/plugins/tg/ro/hide-sidebar-tabs",
"tags": "",
"modified": "20200319201054427",
"created": "20161108100017749",
"caption": "2. Sidebar tabs"
},
"$:/plugins/tg/ro/hide-toolbar-buttons": {
"created": "20161108095713019",
"text": "!! Hide toolbar buttons\n\nDisable in Control panel (Appearance > Toolbars) the buttons you do not need in read-only mode.\n\n''//Disable at least the following buttons://''\n\n* ~ViewToolbar\n** Edit button <<icn $:/core/images/edit-button>>\n** More button <<icn $:/core/images/down-arrow>>\n** Info button <<icn $:/core/images/info-button>> (Tools tab contains button configuration!)\n* Page control buttons\n** New tiddler button <<icn $:/core/images/new-button>>\n** Control panel button <<icn $:/core/images/options-button>>\n** Save button <<icn $:/core/images/save-button>>\n** More button <<icn $:/core/images/down-arrow>>\n\n{{$:/language/ControlPanel/Toolbars/Hint}}\n\n<div class=\"tc-control-panel\">\n<<tabs \"$:/core/ui/ControlPanel/Toolbars/ViewToolbar $:/core/ui/ControlPanel/Toolbars/PageControls\" \"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" \"$:/state/tabs/controlpanel/toolbars\" \"tc-vertical\">>\n</div>",
"title": "$:/plugins/tg/ro/hide-toolbar-buttons",
"tags": "",
"modified": "20200319203659025",
"caption": "1. Buttons"
},
"$:/plugins/tg/ro/icon": {
"created": "20170322100000766",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:svg=\"http://www.w3.org/2000/svg\">\n <metadata id=\"metadata7\">image/svg+xml</metadata>\n <g>\n <g stroke=\"null\" id=\"layer1\">\n <path stroke=\"#a0a0ff\" d=\"m62.98237,124.8691l-52.98313,-30.489l0,-60.97796l52.98313,-30.48897l52.98313,30.48897l0,60.97796l-52.98313,30.489z\" id=\"path4142\" stroke-miterlimit=\"4\" stroke-width=\"1.2218\" fill=\"#a0a0ff\"/>\n <g stroke=\"null\" transform=\"matrix(3.659923335400057,0,0,3.647856469142962,20.327076261330674,1218.0946222935067) \" id=\"g4657\">\n <path stroke=\"null\" d=\"m3.22135,-313.27808l4.72483,4.70973l10.79962,-10.7651l-4.72483,-4.70973l-10.79962,10.7651zm13.51982,-13.47661l-1.99364,1.98727l4.72409,4.70899l1.99364,-1.98727c0.6766,-0.67444 -0.00001,-1.34889 -0.00001,-1.34889l-3.37088,-3.3601c0,0 -0.6766,-0.67444 -1.3532,0zm-14.18411,14.11637l-0.99229,5.72125l5.7273,-1.00138l-4.735,-4.71987l-0.00001,0z\" id=\"editor_pencil_pen_edit_write_glyph\" fill=\"#000000\"/>\n <rect stroke=\"null\" stroke-width=\"null\" stroke-linejoin=\"null\" stroke-linecap=\"null\" x=\"-236.34445\" y=\"-219.86093\" width=\"26.11743\" height=\"2.10315\" id=\"svg_1\" transform=\"matrix(0.69825835,0.71584585,-0.71584585,0.69825835,11.119094,-4.6050809) \"/>\n </g>\n </g>\n </g>\n</svg>",
"type": "image/svg+xml",
"title": "$:/plugins/tg/ro/icon",
"tags": "",
"modified": "20191230134918451"
},
"$:/plugins/tg/ro/image-save-button": {
"created": "20140715185836189",
"text": "<svg class=\"tgc-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>",
"creator": "TonGerner",
"modified": "20191230134931683",
"modifier": "TonGerner",
"title": "$:/plugins/tg/ro/image-save-button"
},
"$:/plugins/tg/ro/images/publish": {
"created": "20170322105731731",
"text": "<svg class=\"tgc-publish-ro tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 486 438\">\n<style>\n .ro {\n fill:none;\n stroke-width:40;\n stroke:#FF00FF;\n }\n</style>\n <path class=\"ro\" d=\"m203.2 81.6l-141.6 0 0 311.7 313.3 0 0-139.5\"/>\n <path class=\"ro\" d=\"m176.4 279.6l0-60 188-188 60.5 60.5 -189.5 189.5 -59 0\"/>\n <path class=\"ro\" d=\"m326.9 69l61.1 61.1\"/>\n</svg>",
"title": "$:/plugins/tg/ro/images/publish",
"tags": "",
"modified": "20191230134946688"
},
"$:/plugins/tg/ro/license": {
"created": "20180124175202510",
"text": "[[Readonly plugin|http://tongerner.tiddlyspot.com/#Readonly%20plugin]] © Ton Gerner — 2018-2020\n\nMIT License: https://opensource.org/licenses/MIT\n",
"title": "$:/plugins/tg/ro/license",
"tags": "",
"modified": "20191230135005582"
},
"$:/plugins/tg/ro/publish": {
"created": "20140715185723459",
"text": "!! Readonly plugin\n<<tabs \"$:/plugins/tg/ro/help $:/plugins/tg/ro/hide-toolbar-buttons $:/plugins/tg/ro/hide-sidebar-tabs $:/plugins/tg/ro/hide-sidebar-buttons $:/plugins/tg/ro/change-settings $:/plugins/tg/ro/save\" \"Help\">>\n\n\n\n\n\n",
"title": "$:/plugins/tg/ro/publish",
"tags": "$:/tags/ControlPanel/Appearance",
"modifier": "TonGerner",
"modified": "20191230135048784",
"creator": "TonGerner",
"caption": "Publish"
},
"$:/plugins/tg/ro/publish-button": {
"created": "20170506162930803",
"text": "<$button class=\"tc-btn-invisible\" tooltip=\"Publish read-only\">\n<$action-sendmessage $message=\"tm-open-window\" $param=\"$:/plugins/tg/ro/publish\" height=\"700px\" width=\"550px\"/>\n{{$:/plugins/tg/ro/images/publish}}\n</$button>",
"title": "$:/plugins/tg/ro/publish-button",
"tags": "$:/tags/publish-button $:/tags/TopRightBar",
"modifier": "TonGerner",
"modified": "20191231184447737",
"list-before": "$:/core/ui/TopBar/menu",
"creator": "TonGerner"
},
"$:/plugins/tg/ro/readme": {
"text": "A plugin to make ~TiddlyWiki read-only.\n\nYou can hide:\n\n* ''All'' toolbar buttons\n* 'Sidebar' button (to switch Sidebar) and 'Advanced search' button (next to Search)\n* All Sidebar tabs tagged with $:/tags/SideBar.\n\nClick the Publish button <<icn $:/plugins/tg/ro/images/publish>> next to the sidebar button <<icn $:/core/images/chevron-left>>/<<icn $:/core/images/chevron-right>> to start making your TW 'publish-ready'. A new window with six tabs opens. Read the Help tab and follow the 5 steps.\n\n<<<\n''Note:''<br>@@.RED Although you can hide the 'Sidebar' button and 'Advanced Search' button, they remain 'active'!@@\n<<<\n\nThere are a few ways to return from readonly to edit mode, see [[Help|$:/plugins/tg/ro/help]].\n",
"title": "$:/plugins/tg/ro/readme",
"modifier": "TonGerner",
"modified": "20200319200627098",
"creator": "TonGerner",
"created": "20140821172500339"
},
"$:/plugins/tg/ro/save": {
"created": "20161108100434387",
"text": "! Save\n\n{{$:/core/ui/ControlPanel/Saving}}\n\n@@.BLUE ''Save''@@ {{$:/plugins/tg/ro/save-button}}\n",
"title": "$:/plugins/tg/ro/save",
"tags": "",
"modified": "20191230135228815",
"caption": "5. Save"
},
"$:/plugins/tg/ro/save-button": {
"created": "20170405200808621",
"text": "<$button message=\"tm-save-wiki\" param={{$:/config/SaveWikiButton/Template}}>\n<span class=\"tc-dirty-indicator\">\n{{$:/plugins/tg/ro/image-save-button}}\n</span>\n</$button>",
"title": "$:/plugins/tg/ro/save-button",
"tags": "",
"modifier": "TonGerner",
"modified": "20191230135303043",
"creator": "TonGerner"
},
"$:/plugins/tg/ro/sidebar-button-style": {
"created": "20140715185800387",
"text": "/* Hide sidebar button */\nsvg.tc-image-chevron-left {\n display: none;\n}\n\nsvg.tc-image-chevron-right {\n display: none;\n}\n",
"type": "text/css",
"title": "$:/plugins/tg/ro/sidebar-button-style",
"tags": "$:/tags/sidebar-button",
"modifier": "TonGerner",
"modified": "20191230135322974",
"creator": "TonGerner"
},
"$:/plugins/tg/ro/sidebar-layout": {
"created": "20170307110734575",
"text": "\\define lingo-base() $:/language/ThemeTweaks/\n\nSidebar layout: <$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",
"title": "$:/plugins/tg/ro/sidebar-layout",
"tags": "",
"modified": "20191230135338759"
},
"$:/plugins/tg/ro/styles": {
"created": "20161104132710834",
"text": "/* Slider style */\n\nhtml .tgc-slider {\n color: #5778D8;\n font-weight: bold;\n}\n\n.tgc-slider:hover {\n color: #5778D8;\n text-decoration: underline;\n}\n\n.RED {\n color: red;\n font-weight: bold;\n}",
"title": "$:/plugins/tg/ro/styles",
"tags": "$:/tags/Stylesheet",
"modified": "20191230135353718",
"type": "text/css"
},
"$:/plugins/tg/ro/macros/doc": {
"created": "20200316122632179",
"text": "\\define icn(icon)\n<button class=\"tc-btn-invisible\"> {{$icon$}}</button>\n\\end",
"title": "$:/plugins/tg/ro/macros/doc",
"tags": "$:/tags/Macro",
"modified": "20200316123614203"
},
"$:/plugins/tg/ro/shortcut/publish": {
"created": "20200317164804429",
"text": "<$navigator story=\"$:/StoryList\">\n<$action-navigate $to=\"$:/plugins/tg/ro/publish\"/>\n</$navigator>",
"title": "$:/plugins/tg/ro/shortcut/publish",
"tags": "$:/tags/KeyboardShortcut",
"modified": "20200317185519894",
"key": "((publish))"
},
"$:/config/ShortcutInfo/publish": {
"created": "20200317164006337",
"text": "Open Publish window",
"title": "$:/config/ShortcutInfo/publish",
"tags": "",
"modified": "20200317164305031"
},
"$:/config/shortcuts/publish": {
"created": "20200317164439679",
"text": "ctrl-shift-alt-P",
"title": "$:/config/shortcuts/publish",
"modified": "20200318102428021"
}
}
}
<$button class="tc-btn-invisible" tooltip="Publish read-only">
<$action-sendmessage $message="tm-open-window" $param="$:/plugins/tg/ro/publish" height="700px" width="550px"/>
{{$:/plugins/tg/ro/images/publish}}
</$button>
{
"tiddlers": {
"$:/plugins/tg/sro/change-settings": {
"created": "20170322105507933",
"text": "! Settings\nThese settings let you customise the view and sidebar layout of TiddlyWiki\n\n{{$:/snippets/viewswitcher}}\n{{$:/plugins/tg/sro/sidebar-layout}}\n\n---\n\n{{$:/core/ui/ControlPanel/Settings}}\n",
"title": "$:/plugins/tg/sro/change-settings",
"tags": "$:/tags/publish",
"modified": "20200318114153795",
"caption": "Settings"
},
"$:/plugins/tg/sro/help": {
"text": "! Help\nBefore you 'publish' your ~TiddlyWiki:\n\n# Make a backup of your wiki\n# Get a defined start-up situation for your TW:\n#* Define your starting tiddler(s) in [[$:/DefaultTiddlers]]\n#* If required, define the state of the sidebar and the sidebar tabs\n#* If required create a tiddler (e.g. `xyz`) which transcludes $:/plugins/tg/sro/publish to create another option to return from readonly to edit mode\n#* If required change the keyboard shortut (Ctrl-Shift-Alt-P) for opening $:/plugins/tg/sro/publish via Control Panel > Keyboard Shortcuts\n# Click the button ''Hide buttons & tabs'' in tab ''Buttons and sidebar tabs''\n# Adjust ''Settings'' in tab ''Settings''\n# Save in tab ''Save'' with the special save button: @@.BLUE ''Save''@@ {{$:/plugins/tg/sro/save-button}}\n# Reload your wiki\n\nThere are a few ways to return from readonly to edit mode:\n\n# Press the configured keyboard shortcut (default Ctrl-Shift-Alt-P), which opens $:/plugins/tg/sro/publish\n# Start the TW with `#xyz` appended which opens $:/plugins/tg/sro/publish\n# Search for:\n#* ''Publish'' to get to $:/plugins/tg/sro/publish\n#* ''~ControlPanel'' to get to ''$:/ControlPanel > Appearance > Publish''\n\n<<<\n''Note:''<br>\n@@.RED Although you can hide the 'Sidebar' and 'Advanced Search' button, they remain 'active'!@@\n<<<\n",
"title": "$:/plugins/tg/sro/help",
"tags": "$:/tags/publish",
"modifier": "TonGerner",
"modified": "20200925155146153",
"creator": "TonGerner",
"created": "20170322105540899",
"caption": "Help"
},
"$:/plugins/tg/sro/hide-buttons-tabs": {
"text": "! Buttons & sidebar tabs\n<$button>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/publish-button\" tags=\"-$:/tags/TopRightBar\"/>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/readonly-styles\" tags=\"$:/tags/Stylesheet\"/>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/search\" tags=\"$:/tags/SideBarSegment\"/>\n<$action-setfield $tiddler=\"$:/config/DragAndDrop/Enable\" text=\"no\"/>\nHide buttons & tabs</$button>\n\n<$button>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/publish-button\" tags=\"$:/tags/TopRightBar\"/>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/readonly-styles\" tags=\"-$:/tags/Stylesheet\"/>\n<$action-setfield $tiddler=\"$:/plugins/tg/sro/search\" tags=\"-$:/tags/SideBarSegment\"/>\n<$action-setfield $tiddler=\"$:/config/DragAndDrop/Enable\" text=\"yes\"/>\nShow buttons & tabs</$button>\n\n<<<\n''Note:''<br><<slidertg \"Predefined buttons & sidebar tabs\" \"$:/plugins/tg/sro/predefined-buttons-tabs\">>\n<<<\n",
"title": "$:/plugins/tg/sro/hide-buttons-tabs",
"tags": "$:/tags/publish",
"modified": "20200925160943100",
"created": "20170322105628418",
"caption": "Buttons & sidebar tabs"
},
"$:/plugins/tg/sro/icon": {
"created": "20170322105647495",
"text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 100 100\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:svg=\"http://www.w3.org/2000/svg\">\n <g>\n <g id=\"layer1\">\n <path fill=\"#a0a0ff\" stroke=\"#a0a0ff\" stroke-width=\"1.2218\" stroke-miterlimit=\"4\" id=\"path4142\" d=\"m48.98237,97.8691l-41.98313,-24.239l0,-48.47796l41.98313,-24.23897l41.98313,24.23897l0,48.47796l-41.98313,24.239z\"/>\n <g id=\"g4657\" transform=\"matrix(2.9000748,0,0,2.9000748,17.560041,968.58207) \">\n <path fill=\"#000000\" stroke=\"null\" id=\"editor_pencil_pen_edit_write_glyph\" d=\"m2.40166,-313.82635l4.72483,4.70973l10.79962,-10.7651l-4.72483,-4.70973l-10.79962,10.7651zm13.51982,-13.47661l-1.99364,1.98727l4.72409,4.70899l1.99364,-1.98727c0.6766,-0.67444 -0.00001,-1.34889 -0.00001,-1.34889l-3.37088,-3.3601c0,0 -0.6766,-0.67444 -1.3532,0zm-14.18411,14.11637l-0.99229,5.72125l5.7273,-1.00138l-4.735,-4.71987l-0.00001,0z\"/>\n <rect transform=\"matrix(0.69825835,0.71584585,-0.71584585,0.69825835,11.119094,-4.6050809) \" id=\"svg_1\" height=\"2.10315\" width=\"26.11743\" y=\"-219.65699\" x=\"-237.30928\" stroke-linecap=\"null\" stroke-linejoin=\"null\" stroke-width=\"null\"/>\n </g>\n </g>\n </g>\n</svg>",
"type": "image/svg+xml",
"title": "$:/plugins/tg/sro/icon",
"tags": "",
"modified": "20191230124255626"
},
"$:/plugins/tg/sro/image-save-button": {
"created": "20170322105709315",
"text": "<svg class=\"tgc-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>",
"title": "$:/plugins/tg/sro/image-save-button",
"tags": "",
"modifier": "TonGerner",
"modified": "20191230124312849",
"creator": "TonGerner"
},
"$:/plugins/tg/sro/images/publish": {
"created": "20170322105731731",
"text": "<svg class=\"tgc-publish-sro tc-image-button\" width=\"22pt\" height=\"22pt\" viewBox=\"0 0 486 438\">\n<style>\n .sro {\n fill:none;\n stroke-width:40;\n stroke:#FF0000;\n }\n</style>\n <path class=\"sro\" d=\"m203.2 81.6l-141.6 0 0 311.7 313.3 0 0-139.5\"/>\n <path class=\"sro\" d=\"m176.4 279.6l0-60 188-188 60.5 60.5 -189.5 189.5 -59 0\"/>\n <path class=\"sro\" d=\"m326.9 69l61.1 61.1\"/>\n</svg>",
"title": "$:/plugins/tg/sro/images/publish",
"tags": "",
"modified": "20191230124356911"
},
"$:/plugins/tg/sro/license": {
"created": "20180124175247498",
"text": "[[Simple readonly plugin|http://tongerner.tiddlyspot.com/#Simple%20readonly%20plugin]] © Ton Gerner — 2018-2020\n\nMIT License: https://opensource.org/licenses/MIT\n",
"title": "$:/plugins/tg/sro/license",
"tags": "",
"modified": "20191230124416664"
},
"$:/plugins/tg/sro/predefined-buttons-tabs": {
"text": "@@.sliderBG\n<div>\n\n<hr>\n\n!!! Buttons\n# Page toolbar\n#* New button\n#* Control panel button\n#* Save button\n# View toolbar\n#* Edit button\n#* More button\n#* Info button\n# Edit toolbar\n#* Delete button\n#* Cancel button\n#* Done button\n# Top toolbar\n#* Sidebar button (to switch Sidebar) ^^''1''^^\n#* Publish button (opens menu for hiding/showing/saving tabs & buttons) ^^''2''^^\n# Search\n#* Advanced search button (next to Search) ^^''1''^^\n\n!!! Sidebar tabs\n* Open\n* Recent\n* Tools\n* More\n* ...\n\n ^^''1''^^ ''Sidebar button and Advanced search button will be hidden, but they stay active!''<br>\n ^^''2''^^ ''Publish button will be hidden as well (not active!)''.\n\n<hr>\n\n</div>\n@@\n",
"title": "$:/plugins/tg/sro/predefined-buttons-tabs",
"tags": "",
"modified": "20200925155045992",
"created": "20170322105829625"
},
"$:/plugins/tg/sro/publish": {
"text": "!! Simple readonly plugin\n<<tabs \"$:/plugins/tg/sro/help $:/plugins/tg/sro/hide-buttons-tabs $:/plugins/tg/sro/change-settings $:/plugins/tg/sro/save\" \"$:/plugins/tg/sro/help\">>",
"title": "$:/plugins/tg/sro/publish",
"tags": "$:/tags/ControlPanel/Appearance",
"modified": "20200925152026099",
"created": "20170322105850884",
"caption": "Publish"
},
"$:/plugins/tg/sro/publish-button": {
"text": "<$button class=\"tc-btn-invisible\" tooltip=\"Publish simple read-only\">\n<$action-sendmessage $message=\"tm-open-window\" $param=\"$:/plugins/tg/sro/publish\" height=\"700px\" width=\"500px\"/>\n{{$:/plugins/tg/sro/images/publish}}\n</$button>",
"title": "$:/plugins/tg/sro/publish-button",
"tags": "$:/tags/TopRightBar -$:/tags/TopRightBar",
"modified": "20200925155609600",
"list-before": "$:/core/ui/TopBar/menu",
"created": "20170322105910944"
},
"$:/plugins/tg/sro/readme": {
"created": "20170322105934099",
"text": "A plugin to make ~TiddlyWiki read-only.<br>\nYou can hide - by clicking one button - a set of <<slidertg \"predefined buttons & sidebar tabs\" \"$:/plugins/tg/sro/predefined-buttons-tabs\">> and save this situation.\n\nClick the Publish button <<icn $:/plugins/tg/sro/images/publish>> next to the sidebar button <<icn $:/core/images/chevron-left>>/<<icn $:/core/images/chevron-right>> to start making your TW 'publish-ready'. A new window with four tabs opens.\n\n<<<\n''Note:''<br>@@.RED Although you can hide the 'Sidebar' and 'Advanced Search' button, they remain 'active'!@@\n<<<\n\nThere are a few ways to return from readonly to edit mode, see [[Help|$:/plugins/tg/sro/help]]. ",
"title": "$:/plugins/tg/sro/readme",
"tags": "",
"modified": "20200323201842302",
"caption": "Simple mode"
},
"$:/plugins/tg/sro/readonly-styles": {
"text": "/* Readonly styles for buttons */\n\nsvg.tc-image-new-button,\nsvg.tc-image-options-button,\nsvg.tc-image-save-button,\nsvg.tc-image-edit-button,\nsvg.tc-image-delete-button,\nsvg.tc-image-cancel-button,\nsvg.tc-image-done-button,\nsvg.tc-image-down-arrow,\nsvg.tc-image-info-button,\nsvg.tc-image-chevron-right,\nsvg.tc-image-chevron-left,\nsvg.tgc-publish-sro {\n display: none;\n}\n\n/* Hide advanced search button */\n\n.tc-image-advanced-search-button.tc-image-button {\n padding-left: 15px;\n}\n\n.tc-sidebar-lists {\n display: none;\n}\n",
"type": "text/css",
"title": "$:/plugins/tg/sro/readonly-styles",
"tags": "",
"modified": "20200925155609601",
"list-after": "$:/themes/tiddlywiki/vanilla/base",
"created": "20170322105952964"
},
"$:/plugins/tg/sro/save": {
"created": "20170322110010997",
"text": "! Save\n\n{{$:/core/ui/ControlPanel/Saving}}\n\n@@.BLUE ''Save''@@ {{$:/plugins/tg/sro/save-button}}\n",
"title": "$:/plugins/tg/sro/save",
"tags": "$:/tags/publish",
"modified": "20200318114131041",
"caption": "Save"
},
"$:/plugins/tg/sro/save-button": {
"created": "20170405200808621",
"text": "<$button message=\"tm-save-wiki\" param={{$:/config/SaveWikiButton/Template}}>\n<span class=\"tc-dirty-indicator\">\n{{$:/plugins/tg/sro/image-save-button}}\n</span>\n</$button>",
"title": "$:/plugins/tg/sro/save-button",
"tags": "",
"modifier": "TonGerner",
"modified": "20191230124759843",
"creator": "TonGerner"
},
"$:/plugins/tg/sro/search": {
"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=\"searchTerm\" value={{{ [<searchTiddler>get[text]] }}}>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[!is[system]search<searchTerm>]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\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</div>\n\n\n\n",
"title": "$:/plugins/tg/sro/search",
"tags": "",
"modified": "20200925155609603",
"created": "20181221200154739"
},
"$:/plugins/tg/sro/sidebar-layout": {
"created": "20170322110052858",
"text": "\\define lingo-base() $:/language/ThemeTweaks/\n\nSidebar layout: <$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",
"title": "$:/plugins/tg/sro/sidebar-layout",
"tags": "",
"modified": "20191230124849067"
},
"$:/plugins/tg/sro/slider-macro": {
"created": "20170322110111515",
"text": "\\define slidertg(label,text)\n<$button popup=\"$:/state/$label$\" class=\"tc-btn-invisible tgc-slider\"><$text text=\"$label$ »\"/></$button>\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=\"$:/state/$label$\" animate=\"yes\">\n\n{{$text$}}\n\n</$reveal>\n\\end",
"title": "$:/plugins/tg/sro/slider-macro",
"tags": "$:/tags/Macro",
"modified": "20191230124912497"
},
"$:/plugins/tg/sro/styles": {
"created": "20170322110126226",
"text": "/* Slider style */\n\nhtml .tgc-slider {\n color: #5778D8;\n font-weight: bold;\n}\n\n.tgc-slider:hover {\n color: #5778D8;\n text-decoration: underline;\n}\n\n.sliderBG {\n color: #000080;\n background-color: #F7FAFF;\n}\n\n.RED {\n color: red;\n font-weight: bold;\n}\n\n.BLUE {\n color: blue;\n font-weight: bold;\n}",
"type": "text/css",
"title": "$:/plugins/tg/sro/styles",
"tags": "$:/tags/Stylesheet",
"modified": "20191230124931037"
},
"$:/plugins/tg/sro/macros/doc": {
"text": "\\define icn(icon)\n<button class=\"tc-btn-invisible\"> {{$icon$}}</button>\n\\end",
"title": "$:/plugins/tg/sro/macros/doc",
"tags": "$:/tags/Macro",
"modified": "20200316124655912",
"created": "20200316124557084"
},
"$:/config/ShortcutInfo/publish": {
"created": "20200318124157969",
"text": "Open Publish window",
"title": "$:/config/ShortcutInfo/publish",
"tags": "",
"modified": "20200318124228751"
},
"$:/config/shortcuts/publish": {
"created": "20200318124115057",
"text": "ctrl-shift-alt-P",
"title": "$:/config/shortcuts/publish",
"tags": "",
"modified": "20200318124135106"
},
"$:/plugins/tg/sro/shortcut/publish": {
"created": "20200323202318023",
"text": "<$navigator story=\"$:/StoryList\">\n<$action-navigate $to=\"$:/plugins/tg/sro/publish\"/>\n</$navigator>",
"title": "$:/plugins/tg/sro/shortcut/publish",
"tags": "$:/tags/KeyboardShortcut",
"modified": "20200323202630736",
"key": "((publish))"
}
}
}
<$button class="tc-btn-invisible" tooltip="Publish simple read-only">
<$action-sendmessage $message="tm-open-window" $param="$:/plugins/tg/sro/publish" height="700px" width="500px"/>
{{$:/plugins/tg/sro/images/publish}}
</$button>
/* Readonly styles for buttons */
svg.tc-image-new-button,
svg.tc-image-options-button,
svg.tc-image-save-button,
svg.tc-image-edit-button,
svg.tc-image-delete-button,
svg.tc-image-cancel-button,
svg.tc-image-done-button,
svg.tc-image-down-arrow,
svg.tc-image-info-button,
svg.tc-image-chevron-right,
svg.tc-image-chevron-left,
svg.tgc-publish-sro {
display: none;
}
/* Hide advanced search button */
.tc-image-advanced-search-button.tc-image-button {
padding-left: 15px;
}
.tc-sidebar-lists {
display: none;
}
<div class="tc-sidebar-lists_">
<$set name="searchTiddler" value="$:/temp/search">
<div class="tc-search">
<$edit-text tiddler="$:/temp/search" type="search" tag="input" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify "$:/state/popup/search-dropdown">> class="tc-popup-handle"/>
<$reveal state="$:/temp/search" type="nomatch" text="">
<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class="tc-btn-invisible">
<$action-setfield $tiddler="$:/temp/advancedsearch" text={{$:/temp/search}}/>
<$action-setfield $tiddler="$:/temp/search" text=""/>
<$action-navigate $to="$:/AdvancedSearch"/>
{{$:/core/images/advanced-search-button}}
</$button>
<$button class="tc-btn-invisible">
<$action-setfield $tiddler="$:/temp/search" text="" />
{{$:/core/images/close-button}}
</$button>
<$button popup=<<qualify "$:/state/popup/search-dropdown">> class="tc-btn-invisible">
{{$:/core/images/down-arrow}}
<$list filter="[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]" variable="listItem">
<$set name="searchTerm" value={{{ [<searchTiddler>get[text]] }}}>
<$set name="resultCount" value="""<$count filter="[!is[system]search<searchTerm>]"/>""">
{{$:/language/Search/Matches}}
</$set>
</$set>
</$list>
</$button>
</$reveal>
<$reveal state="$:/temp/search" type="match" text="">
<$button to="$:/AdvancedSearch" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class="tc-btn-invisible">
{{$:/core/images/advanced-search-button}}
</$button>
</$reveal>
</div>
<$reveal tag="div" class="tc-block-dropdown-wrapper" state="$:/temp/search" type="nomatch" text="">
<$reveal tag="div" class="tc-block-dropdown tc-search-drop-down tc-popup-handle" state=<<qualify "$:/state/popup/search-dropdown">> type="nomatch" text="" default="">
<$list filter="[{$:/temp/search}minlength{$:/config/Search/MinLength}limit[1]]" emptyMessage="""<div class="tc-search-results">{{$:/language/Search/Search/TooShort}}</div>""" variable="listItem">
{{$:/core/ui/SearchResults}}
</$list>
</$reveal>
</$reveal>
</$set>
</div>
Aiguillage, explications, recueil de ressources
L'environnement numérique du collège Léonard de Vinci - St Aubin de Médoc
$:/core/ui/AdvancedSearch/System
$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local
$:/core/ui/ControlPanel/Plugins/Add/Plugins
$:/core/ui/AdvancedSearch/System
$:/core/ui/TiddlerInfo/Fields
$:/core/ui/ControlPanel/StoryView
$:/core/ui/ControlPanel/Basics
$:/core/ui/ControlPanel/Plugins/Installed/Plugins
$:/core/ui/ControlPanel/EditorTypes
$:/core/ui/ControlPanel/Plugins
$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis
$:/plugins/tg/sro/hide-buttons-tabs
$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default
$:/core/ui/MoreSideBar/Explorer
$:/plugins/felixhayashi/tiddlymap/hook/editor
$:/core/ui/ControlPanel/Toolbars/ViewToolbar
$:/core/ui/ControlPanel/Toolbars/PageControls
$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description
{
"tiddlers": {
"$:/themes/tiddlywiki/snowwhite/base": {
"title": "$:/themes/tiddlywiki/snowwhite/base",
"tags": "[[$:/tags/Stylesheet]]",
"text": "\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\n\\end\n\n\\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: <<sidebarbreakpoint-minus-one>>) {\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 sidebarbreakpoint()\n<$text text={{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}/>\n\\end\n\n\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\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\\define set-type-selector-min-width()\n<$set name=\"typeLength\" value={{{ [all[shadows+tiddlers]prefix[$:/language/Docs/Types/]get[name]length[]maxall[]] }}}>\n\n\t.tc-type-selector-dropdown-wrapper {\n\t\tmin-width: calc(<<typeLength>>ch + 4em);\n\t}\n\n\t.tc-type-selector-dropdown-wrapper input.tc-edit-typeeditor {\n\t\tmin-width: <<typeLength>>ch;\n\t}\n\n</$set>\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\ninput[type=\"search\"] {\n outline-offset: initial;\n}\n\nhtml button {\n\tline-height: 1.2;\n\tcolor: <<colour button-foreground>>;\n\tfill: <<colour button-foreground>>;\n\tbackground: <<colour button-background>>;\n\tborder-color: <<colour button-border>>;\n}\n\n/*\n** Basic element styles\n*/\n\nhtml, body {\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\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n\tfont-size: 2em;\n}\n\nh1, h2, h3, h4, h5, h6 {\n\tline-height: 1.2;\n\tfont-weight: 300;\n}\n\npre {\n\tdisplay: block;\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 > div {\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\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\nbutton, textarea, input, select {\n\toutline-color: <<colour primary>>;\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\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n\t-webkit-appearance:none;\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::selection {\n\tbackground-color: Highlight;\n\tcolor: HighlightText;\n\tbackground-color: <<colour selection-background>>;\n\tcolor: <<colour selection-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\t/* next 2 elements needed, since normalize 8.0.1 */\n\tborder-collapse: collapse;\n\tborder-spacing: 0;\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.tc-drop-down a.tc-tiddlylink:hover {\n\tcolor: <<colour tiddler-link-background>>;\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-page-container > .tc-dropzone {\n\tmin-height: 100vh;\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.tc-sidebar-tab-open .tc-droppable-placeholder, .tc-tagged-draggable-list .tc-droppable-placeholder,\n.tc-links-draggable-list .tc-droppable-placeholder {\n\tline-height: 2em;\n\theight: 2em;\n}\n\n.tc-sidebar-tab-open-item {\n\tposition: relative;\n}\n\n.tc-sidebar-tab-open .tc-btn-invisible.tc-btn-mini svg {\n\tfont-size: 0.7em;\n\tfill: <<colour muted-foreground>>;\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\tcursor: pointer;\n\tcolor: <<colour foreground>>;\n\tfill: <<colour foreground>>;\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\tborder-radius: 2px;\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-primary-btn {\n \tbackground: <<colour primary>>;\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\n.tc-sidebar-lists button small {\n\tcolor: <<colour foreground>>;\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: <<sidebarbreakpoint-minus-one>>) {\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}\n\n.tc-tags-wrapper {\n\tmargin: 4px 0 14px 0;\n}\n\n.tc-tags-wrapper .tc-tag-list-item {\n\tmargin-right: 7px;\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\n.tc-block-tags-dropdown > .tc-btn-invisible:hover {\n\tbackground-color: <<colour primary>>;\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-sidebar-scrollable .tc-tag-label {\n\ttext-shadow: none;\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\tmargin-right: 3px; \n\tmargin-bottom: 1px;\n\tvertical-align: bottom;\n}\n\n.tc-edit-tags button.tc-remove-tag-button svg {\n\tfont-size: 0.7em;\n\tvertical-align: middle;\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\nbutton.tc-btn-invisible.tc-remove-tag-button {\n\toutline: none;\n}\n\n.tc-tag-button-selected,\n.tc-list-item-selected a.tc-tiddlylink, a.tc-list-item-selected {\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour tiddler-background>>;\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@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-topbar-right {\n\t\tright: 10px;\n\t}\n\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@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-show-sidebar-btn svg.tc-image-chevron-left, .tc-hide-sidebar-btn svg.tc-image-chevron-right {\n\t\ttransform: rotate(-90deg);\n\t}\n\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-sidebar-lists .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: <<sidebarbreakpoint-minus-one>>) {\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\ttransition: min-height {{$:/config/AnimationDuration}}ms ease-in-out, padding-top {{$:/config/AnimationDuration}}ms ease-in-out, padding-bottom {{$:/config/AnimationDuration}}ms ease-in-out;\n\t}\n\t\n\t<<if-no-sidebar \"\"\"\n\n\t\t.tc-sidebar-header {\n\t\t\tmin-height: 0;\n\t\t\tpadding-top: 0;\n\t\t\tpadding-bottom: 0;\n\t\t}\n\n\t\"\"\">>\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tpadding: 0;\n\t}\n}\n\n@media (min-width: <<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\t.tc-story-river.tc-static-story-river {\n\t\tmargin-right: 0;\n\t\tpadding-right: 42px;\n\t}\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\toverflow: hidden;\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@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-tiddler-info {\n\t\tpadding: 14px 14px 14px 14px;\n\t}\n\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: <<sidebarbreakpoint-minus-one>>) {\n\t.tc-tiddler-frame {\n\t\tpadding: 14px 14px 14px 14px;\n\t\tmargin-bottom: .5em;\n\t}\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -14px 0 -14px;\n\t}\n}\n\n@media (min-width: <<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.35em;\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\tmargin-right: .1em;\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-subtitle .tc-tiddlylink {\n\tmargin-right: .3em;\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\tline-height: 1.3em;\n\t-webkit-appearance: none;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-editor-background>>;\n}\n\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-background>>;\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\tcolor: <<colour tiddler-controls-foreground-selected>>;\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\tcolor: <<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: <<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-type-selector .tc-edit-typeeditor {\n\twidth: auto;\n}\n\n.tc-type-selector-dropdown-wrapper {\n\tdisplay: inline-block;\n}\n\n<<set-type-selector-min-width>>\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.tc-edit-fields.tc-edit-fields-small {\n\tmargin-top: 0;\n\tmargin-bottom: 0;\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-wrapper input.tc-edit-texteditor {\n\twidth: auto;\n}\n\n.tc-edit-field-add-name-wrapper {\n\tdisplay: inline-block;\n}\n\n.tc-edit-field-add-value {\n\tdisplay: inline-block;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-edit-field-add-value {\n\t\twidth: 35%;\n\t}\n\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-viewswitcher .tc-image-button {\n\tmargin-right: .3em;\n}\n\n.tc-storyview-zoomin-tiddler {\n\tposition: absolute;\n\tdisplay: block;\n\twidth: 100%;\n}\n\n@media (min-width: <<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 background>>;\n}\n\n.tc-drop-down .tc-drop-down-info {\n\tpadding-left: 14px;\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.tc-tiddlylink: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/*\n** Centered modals\n*/\n.tc-modal-centered .tc-modal {\n\twidth: auto;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%) !important;\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\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\toverflow: auto;\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** Import table\n*/\n\n.tc-import-table {\n\twidth: 100%;\n}\n\n.tc-import-table svg.tc-image-edit-button {\n\tmax-width: unset;\n}\n\n.tc-import-table th:first-of-type {\n\twidth: 10%;\n}\n\n.tc-import-table th:last-of-type {\n\twidth: 30%;\n}\n\n.tc-import-table .tc-row-disabled {\n\tbackground: <<colour very-muted-foreground>>10;\n\topacity: 0.8;\n}\n\n.tc-import-table .tc-row-warning {\n\tbackground: <<colour diff-delete-background>>50;\n}\n\n/*\n** Alerts\n*/\n\n.tc-alerts {\n\tposition: fixed;\n\ttop: 28px;\n\tleft: 0;\n\tright: 0;\n\tmax-width: 50%;\n\tz-index: 20000;\n}\n\n.tc-alert {\n\tposition: relative;\n\tmargin: 14px;\n\tpadding: 7px;\n\tborder: 1px solid <<colour alert-border>>;\n\tbackground-color: <<colour alert-background>>;\n}\n\n.tc-alert-toolbar {\n\tposition: absolute;\n\ttop: 7px;\n\tright: 7px;\n line-height: 0;\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 font-size: 0.8em;\n margin-bottom: 0.5em;\n}\n\n.tc-alert-body > p {\n\tmargin: 0;\n}\n\n.tc-alert-highlight {\n\tcolor: <<colour alert-highlight>>;\n}\n\n@media (min-width: <<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** Floating drafts list\n*/\n\n.tc-drafts-list {\n\tz-index: 2000;\n\tposition: fixed;\n\tfont-size: 0.8em;\n\tleft: 0;\n\tbottom: 0;\n}\n\n.tc-drafts-list a {\n\tmargin: 0 0.5em;\n\tpadding: 4px 4px;\n\tborder-top-left-radius: 4px;\n\tborder-top-right-radius: 4px;\n\tborder: 1px solid <<colour background>>;\n\tborder-bottom-none;\n\tbackground: <<colour dirty-indicator>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a:hover {\n\ttext-decoration: none;\n\tbackground: <<colour foreground>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a svg {\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: text-bottom;\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: flex;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tfill: <<colour muted-foreground>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.5em 0 0.5em 0;\n\tpadding: 4px;\n align-items: center;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info {\n margin: 0.5em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugin-indicator {\n\tmargin: -16px 1em 0 2em;\n}\n\n.tc-plugin-info-sub-plugin-indicator button {\n\tcolor: <<colour background>>;\n\tbackground: <<colour foreground>>;\n\tborder-radius: 8px;\n padding: 2px 7px;\n font-size: 0.75em;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info-dropdown {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\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-chunk > svg {\n\tfill: <<colour background>>;\n}\n\n.tc-plugin-info-chunk {\n margin: 2px;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description {\n\tflex-grow: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-buttons {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n text-align: right;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h1 {\n\tfont-size: 1em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h2 {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description div {\n\tfont-size: 0.7em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle img, .tc-plugin-info-chunk.tc-plugin-info-toggle svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon img, .tc-plugin-info-chunk.tc-plugin-info-icon svg {\n\twidth: 2em;\n\theight: 2em;\n}\n\n.tc-plugin-info-dropdown {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\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 0 1em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugins {\n\tpadding: 0.5em;\n margin: 0 1em 1em 1em;\n\tbackground: <<colour notification-background>>;\n}\n\n.tc-install-plugin {\n\tfont-weight: bold;\n\tbackground: green;\n\tcolor: white;\n\tfill: white;\n\tborder-radius: 4px;\n\tpadding: 3px;\n}\n\n.tc-install-plugin.tc-reinstall-downgrade {\n\tbackground: red;\n}\n\n.tc-install-plugin.tc-reinstall {\n\tbackground: blue;\n}\n\n.tc-install-plugin.tc-reinstall-upgrade {\n\tbackground: orange;\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\ninput.tc-palette-manager-colour-input {\n\twidth: 100%;\n\tpadding: 0;\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::-webkit-file-upload-button {\n\tcursor:pointer;\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\nselect {\n color: <<colour select-tag-foreground>>;\n background: <<colour select-tag-background>>;\n}\n\n/*\n** Utility classes for SVG icons\n*/\n\n.tc-fill-background {\n\tfill: <<colour background>>;\n}\n\n/*\n** Flexbox utility classes\n*/\n\n.tc-flex {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-flex-column {\n\tflex-direction: column;\n}\n\n.tc-flex-row {\n\tflex-direction: row;\n}\n\n.tc-flex-grow-1 {\n\tflex-grow: 1;\n}\n\n.tc-flex-grow-2 {\n\tflex-grow: 2;\n}\n\n/*\n** Other utility classes\n*/\n\n.tc-small-gap {\n\tmargin-left: .5em;\n\tmargin-right: .5em;\n}\n\n.tc-small-gap-left {\n\tmargin-left: .5em;\n}\n\n.tc-small-gap-right {\n\tmargin-right: .5em;\n}\n\n.tc-big-gap {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-big-gap-left {\n\tmargin-left: 1em;\n}\n\n.tc-big-gap-right {\n\tmargin-right: 1em;\n}\n\n.tc-word-break {\n\tword-break: break-all;\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": "/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\n:root {\n -moz-tab-size: 4;\n tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n font-family:\n system-ui,\n -apple-system, /* Firefox supports this but not yet `system-ui` */\n 'Segoe UI',\n Roboto,\n Helvetica,\n Arial,\n sans-serif,\n 'Apple Color Emoji',\n 'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n height: 0; /* 1 */\n color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n font-family:\n ui-monospace,\n SFMono-Regular,\n Consolas,\n 'Liberation Mono',\n Menlo,\n monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the 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\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n text-indent: 0; /* 1 */\n border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n display: list-item;\n}\n"
},
"$:/themes/tiddlywiki/vanilla/settings/fontfamily": {
"title": "$:/themes/tiddlywiki/vanilla/settings/fontfamily",
"text": "system-ui, -apple-system, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\""
},
"$:/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``\n<$list filter=\"[range[100]]\">\n`.tc-story-river .tc-tiddler-frame:nth-child(100n+`<$text text=<<currentTiddler>>/>`) {\nz-index: `<$text text={{{ [[200]subtract<currentTiddler>] }}}/>`;\n}\n`\n</$list>\n</$reveal>\n"
}
}
}
https://ldvnumerique.tiddlyhost.com
Bienvenue dans le joyeux petit [[cafoutch]] informatique du collège, on y farfouille pour y trouver réponses à des questions, on peut y découvrir des explications et des ressources Ceci devrait pouvoir être à la fois une doc centralisée, un glossaire, et un vivier de ressources… à voir :o)
Le but de cette documentation est d'aider -via un TiddlyWiki, donc une présentation non linèaire- à débroussailler tout ça, de dessiner un plan d'ensemble avec un point marqué “Vous êtes ici” pour que tout le monde puisse savoir où il est et comment trouver ce dont il peut avoir besoin.
(rq: cette page est une page temporaire de travail intégrée à l'index documentaire de l'environnement informatique du collège, voir ici l'[[Entrée en matière]])
! Notions de base
A la base, quelques notions nécessaires :
* Les pages Web: c'est pour les sans-papier ! Pour faire très simple, on peut résumer en disant que:
** l'''écriture ''a été mise au point et améliorée depuis 6 ou 7000 ans dans le but d'échanger des informations et de les rendre indépendantes de la capacité de mémorisation des hommes.
** vers l'an 1500 avec son système d'''imprimerie'', Gutenberg permet la diffusion rapide de l'information et du savoir. Le support principal est le papier.
** ''transition numérique'' au XXème siècle: les procédés d'imprimerie sont adaptés aux ordinateurs, on parle de PAO (Publication Assitée par Ordi) et de Traitement de Texte (Word, etc...). Les facilités de traitement et de mise en page sont orientées vers l'exploitation du cadre papier. Possibilité de travailler en mode WYSIWYG (What You See Is What You Get): on a directement à l'écran ce qui sera imprimé sur papier.
** ''dématérialisation ''(fin XXème, début du XXIème siècle): l'apparition de supports numériques de tous formats (moniteurs, tablettes, smartphones, montres, implants neuronaux cyber-bidulés, etc...) permet de s'affranchir du cadre imposé par le papier.
Constat de la dématérialisation:
* Avantage: énorme liberté créatrice dans les possibilités de présentation de l'information (hyper-liens, guidage, animations, etc...)
* Inconvénient: les personnes habituées à faire rentrer l'information dans un cadre rigide (ex: format A4) peuvent avoir du mal à s'adapter à un cadre ''responsif ''(dynamique et adaptatif: la mise en page vit sa vie pour pouvoir s'adapter à la taille des différents affichages utilisés)
! Langage de mise en page: HTML
La mise en page est effectuée par le biais d'un ''langage'', constitué de commandes (de formatage).
Plusieurs solutions existent mais la plus courante (choisie ici) est le couple ''HTML/CSS''. Très sommairement, on peut dire que:
* HTML permet de définir les éléments, leur contenu et leur positionnement relatif
* CSS permet de gérer les styles appliqués aux éléments (couleurs, polices et tailles de caractères, etc...)
HTML et CSS (respectivement ''H''yper ''T''ext ''M''arkup ''L''angage et ''C''ascade ''S''tyle ''S''heet) sont techniquement des langages dits "de balisage". Exercice pratique pour vous en rendre compte: dans ce navigateur web, taper ''Ctrl-U'' au clavier pour voir apparaître le code source de la page affichée...
Maintenant: pas de panique ! l'intérêt de passer par un outil tel que WordPress est de pratiquement s'affranchir de la partie technique, vous allez donc être les Mr Jourdain du HTML... tout va se passer par de simples clics sur des icônes pour gérer toute la mise en page, mais maintenant vous comprendrez les nuances de fonctionnement (et donc de résultats d'affichage) par rapport aux mêmes outils dans Word ou LibreOffice.
! Site dynamique (vs site statique)
Un site web est un ensemble de pages web.
Il est stocké dans un ordinateur chez un hébergeur (''hébergé'') et accessible via un serveur informatique.
Lorsque l'on demande l'accès à une page:
* dans le cas d'un site statique: le serveur enverra simplement le contenu la page telle qu'elle a été écrite
* dans le cas d'un site dynamique: le contenu de la page envoyée par le serveur est comportemental, il est en fait adapté à d'autres contenus distincts
Exemple: la page d'actualités du site
* si la page est statique, il faudra modifier (réécrire) son contenu à chaque fois qu'une modification est désirée: date d'un évènement, info sur la publication d'un article, etc...
* avec le fonctionnement dynamique, on peut définir que la page d'actualités sera automatiquement remplie et modifiée en fonction d'éléments tels que les évènements, la publication d'un nouvel article, etc...
Ce fonctionnement dynamique est assuré par des programmes exécutés sur le serveur, donc de manière complètement transparente pour l'utilisateur mais que l'administrateur se doit de comprendre. Ainsi WordPress est basé sur un code gérant les en-tête et pied de page, un autre gérant le contenu de la partie blog (les articles), un autre gérant l'affichage des pages individuelles, encore un autre pour l'affichage individuel des articles, etc...
Ce fonctionnement dynamique est basé sur l'utilisation de fichiers de codes (en plus des fichiers de contenus du site) et d'une base de données. Lors d'une sauvegarde (ou d'une migration), il est important de savoir cela et de bien penser à gérer fichiers ''et ''base de données.
! Plus spécifiques à WordPress maintenant:
* la structure des pages et les menus
* les thèmes WordPress: l'aspect cosmétique et les fonctionnalités/facilités offertes
* la gestion des comptes
* la gestion de l'hébergement
* les sauvegardes et restaurations
* la sécurité
(tout ça est en cours de rédaction...)
AAABAAEAAAAAAAEAGAAIIQMAFgAAACgAAAAAAQAAAAIAAAEAGAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIBAQEBAQEBAQEBAQEAAAABAQEBAQEBAQEBAQEAAAAAAAAAAAABAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEAAAACAgICAgICAgIDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEAAAACAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQECAgICAgICAgIDAwMDAwMDAwMDAwMCAgIBAQEAAAABAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQECAgICAgIBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMBAQEAAAAAAAABAQEBAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIAAAAAAAABAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQECAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAQEBAQEAAAAAAAABAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgIBAQEAAAABAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQEBAQEBAQEBAQEBAQCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIAAAAAAAABAQEBAQECAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIBAQEBAQEBAQECAgICAgICAgICAgIBAQEAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgIBAQEAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgIDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQEBAQECAgICAgIAAAAAAAAAAAAAAAAAAAABAQECAgICAgIDAwMDAwMEBAQDAwMCAgICAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAQEBAQEBAQECAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIBAQEBAQEBAQECAgICAgIAAAAAAAABAQECAgICAgIBAQECAgICAgIDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQEBAQECAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAACAgICAgIBAQEAAAABAQEBAQEBAQECAgIDAwMDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQECAgIBAQEAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAwMCAgIBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMCAgICAgIDAwMEBAQFBQUFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIBAQEAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgIBAQEAAAABAQEBAQEBAQEAAAAAAAAAAAAAAAABAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMEBAQFBQUFBQUEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgIDAwMCAgIBAQEAAAABAQEBAQECAgIBAQEBAQEBAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIEBAQFBQUGBgYGBgYFBQUEBAQCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgIDAwMCAgIBAQEAAAABAQEBAQEBAQEBAQEAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAABAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMCAgICAgIEBAQGBgYHBwcGBgYGBgYFBQUEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQECAgIDAwMDAwMDAwMCAgICAgICAgIBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMCAgIBAQEBAQEBAQECAgIBAQEAAAACAgICAgIDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIEBAQFBQUHBwcGBgYGBgYFBQUFBQUEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQECAgICAgICAgIBAQEBAQEAAAABAQEBAQEBAQEBAQEBAQECAgICAgIBAQEBAQEBAQECAgIBAQEBAQECAgICAgIDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIEBAQEBAQEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMCAgICAgIDAwMEBAQFBQUFBQUGBgYGBgYGBgYGBgYFBQUEBAQCAgICAgICAgIDAwMDAwMDAwMCAgIDAwMEBAQFBQUFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgIBAQEBAQEBAQEAAAAAAAAAAAAAAAABAQEBAQEBAQECAgICAgIDAwMDAwMCAgICAgIDAwMDAwMCAgICAgICAgICAgICAgICAgIBAQECAgIDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQEBAQEBAQEBAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMEBAQFBQUEBAQDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUFBQUFBQUGBgYGBgYGBgYGBgYFBQUFBQUCAgICAgICAgIDAwMDAwMDAwMEBAQEBAQFBQUFBQUFBQUDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMEBAQDAwMDAwMCAgICAgIBAQEAAAAAAAAAAAABAQEBAQEBAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIDAwMCAgICAgIDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAAABAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMEBAQFBQUGBgYFBQUEBAQDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMCAgICAgIDAwMEBAQEBAQFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYFBQUFBQUGBgYFBQUFBQUEBAQCAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMCAgIBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQECAgICAgIBAQECAgICAgIBAQEAAAABAQEBAQECAgIDAwMCAgICAgIBAQEBAQEBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMFBQUFBQUFBQUGBgYFBQUFBQUEBAQDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQEAAAABAQECAgICAgIBAQECAgICAgIBAQEBAQEBAQECAgICAgICAgICAgICAgIDAwMDAwMAAAAAAAABAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIAAAAAAAAAAAAAAAAAAAABAQECAgICAgICAgIDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQEBAQCAgICAgICAgICAgICAgICAgIFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUDAwMCAgIDAwMDAwMFBQUEBAQDAwMDAwMFBQUEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIEBAQFBQUEBAQGBgYFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYEBAQFBQUCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIBAQEAAAAAAAAAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQEBAQEBAQEBAQEBAQEBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUEBAQFBQUDAwMCAgIDAwMDAwMEBAQEBAQDAwMDAwMEBAQDAwMCAgIDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIEBAQGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYDAwMEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIAAAAAAAAAAAAAAAAAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMFBQUDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMFBQUFBQUGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYFBQUFBQUGBgYEBAQCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIEBAQFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUCAgIDAwMBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUEBAQDAwMDAwMDAwMDAwMEBAQDAwMEBAQEBAQFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYFBQUEBAQFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIEBAQDAwMFBQUGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYDAwMEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUFBQUEBAQCAgIDAwMEBAQFBQUGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUDAwMCAgIDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIFBQUFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMBAQEEBAQGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYEBAQFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQEBAQDAwMCAgICAgIDAwMDAwMEBAQEBAQEBAQDAwMEBAQEBAQFBQUGBgYEBAQDAwMEBAQEBAQFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMEBAQEBAQEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMEBAQEBAQEBAQDAwMEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYFBQUFBQUEBAQDAwMCAgIDAwMDAwMEBAQEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQGBgYEBAQBAQEFBQUBAQEDAwMDAwMFBQUCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIBAQEEBAQEBAQFBQUFBQUFBQUFBQUCAgIDAwMEBAQFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUFBQUFBQUDAwMCAgICAgICAgIDAwMCAgICAgICAgICAgICAgICAgICAgIBAQECAgICAgICAgIDAwMCAgICAgIDAwMEBAQFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQBAQECAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIHBwcUFBQSEhIHBwcCAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIEBAQEBAQGBgYGBgYGBgYGBgYFBQUEBAQDAwMEBAQFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIDAwMDAwMEBAQEBAQEBAQEBAQEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUEBAQEBAQCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIJCQldXV25ubmqqqpOTk4PDw8CAgIHBwcCAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgIEBAQEBAQGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYFBQUEBAQDAwMCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBAQEBAQGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQCAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgInJyfKysr4+Pj29vbj4+OYmJghISEHBwcEBAQDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQCAgIDAwMDAwMDAwMCAgIDAwMEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYFBQUEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBQUEBAQEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQEBAQEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgI3Nzfo6Oj5+fn9/f36+vr9/f3KyspVVVUkJCQFBQUFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIEBAQEBAQCAgIDAwMDAwMDAwMCAgIEBAQFBQUFBQUGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYGBgYFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYFBQUEBAQFBQUICAgHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUGBgYFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQDAwMDAwMCAgIyMjLh4eH39/f8/Pz9/f3+/v77+/vy8vK1tbU3NzcBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUFBQUGBgYFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcHBwcHBwcICAgHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUGBgYFBQUHBwcHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMCAgIDAwMDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMDAwMEBAQDAwMDAwMCAgIBAQEZGRmTk5Pj4+P5+fn6+vr8/Pz6+vr4+Pjk5ORISEgDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMCAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIEBAQFBQUFBQUHBwcFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUGBgYHBwcHBwcHBwcICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMCAgIBAQECAgIJCQk9PT2FhYWioqKcnJyYmJjh4eGFhYUQEBABAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIEBAQFBQUFBQUHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcHBwcHBwcGBgYHBwcHBwcGBgYHBwcHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMCAgICAgICAgIDAwMDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMCAgICAgIDAwMDAwMBAQEBAQECAgIFBQUHBwcQEBANDQ0QEBBAQEAXFxcFBQUGBgYDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIBAQEBAQEBAQEBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUFBQUFBQUHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYFBQUGBgYGBgYHBwcICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcICAgICAgHBwcHBwcGBgYGBgYFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgHBwcICAgICAgHBwcICAgICAgHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMCAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIDAwMEBAQCAgIDAwMHBwcEBAQEBAQCAgIEBAQBAQECAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIAAAAAAAAAAAABAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUEBAQGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUGBgYGBgYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgHBwcICAgICAgHBwcICAgICAgICAgHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQEBAQEBAQDAwMCAgICAgIEBAQDAwMCAgICAgIEBAQDAwMEBAQEBAQCAgIDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEBAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYFBQUGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYICAgICAgJCQkICAgICAgJCQkJCQkICAgHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgIDAwMEBAQFBQUFBQUFBQUCAgIDAwMFBQUEBAQCAgIDAwMDAwMCAgIFBQUEBAQDAwMDAwMEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIBAQEAAAABAQECAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYFBQUFBQUGBgYFBQUFBQUGBgYHBwcFBQUFBQUGBgYGBgYFBQUEBAQHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUHBwcHBwcHBwcHBwcGBgYHBwcFBQUFBQUGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYFBQUFBQUGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgIDAwMCAgICAgIDAwMEBAQGBgYGBgYGBgYGBgYGBgYFBQUEBAQCAgIEBAQFBQUpKSlSUlI3NzcNDQ0EBAQEBAQDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUGBgYHBwcGBgYFBQUGBgYHBwcGBgYFBQUHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcHBwcHBwcFBQUFBQUHBwcGBgYFBQUGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYGBgYFBQUGBgYGBgYGBgYFBQUGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMCAgICAgIDAwMDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQDAwMCAgICAgIDAwMDAwMDAwMDAwMDAwMEBAQGBgYGBgYGBgYGBgYGBgYFBQUEBAQEBAQDAwMPDw+enp7o6Ojc3NyqqqpXV1cTExMFBQUCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYFBQUGBgYHBwcHBwcHBwcHBwcICAgICAgHBwcICAgICAgICAgHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYFBQUFBQUGBgYHBwcICAgHBwcFBQUFBQUHBwcGBgYFBQUGBgYGBgYGBgYFBQUFBQUGBgYGBgYHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYFBQUGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMBAQECAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgICAgICAgICAgIDAwMCAgIDAwMEBAQGBgYGBgYFBQUFBQUFBQUGBgYHBwcGBgYGBgYGBgYGBgYFBQUEBAQCAgIGBgYiIiLNzc36+vr7+/v9/f3u7u5PT08DAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYFBQUFBQUGBgYHBwcHBwcHBwcICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYHBwcHBwcICAgHBwcFBQUFBQUFBQUGBgYICAgHBwcFBQUGBgYICAgHBwcGBgYHBwcHBwcHBwcGBgYGBgYGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYHBwcHBwcGBgYGBgYGBgYFBQUGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEBAQFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQCAgIFBQVCQkLh4eH+/v78/Pz9/f37+/uUlJQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYFBQUFBQUHBwcHBwcICAgICAgICAgICAgHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgICAgHBwcGBgYFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYHBwcHBwcICAgICAgHBwcGBgYFBQUFBQUFBQUHBwcICAgGBgYHBwcICAgHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcFBQUFBQUHBwcHBwcFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUEBAQDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCAgICAgICAgIGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYFBQUEBAQDAwMFBQUYGBivr6/7+/v9/f37+/v8/PzGxsYCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYGBgYGBgYHBwcICAgJCQkJCQkJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgICAgJCQkJCQkJCQkJCQkICAgHBwcICAgICAgHBwcHBwcICAgICAgHBwcHBwcGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYHBwcHBwcICAgICAgICAgHBwcGBgYGBgYGBgYGBgYHBwcICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcGBgYFBQUGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUEBAQDAwMDAwMCAgIDAwMDAwMDAwMDAwMCAgIDAwMDAwMDAwMEBAQEBAQFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQEBAQEBASAgID6+vr7+/v9/f37+/vX19cCAgIEBAQEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUFBQUFBQUFBQUFBQUGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgHBwcGBgYICAgICAgICAgICAgHBwcHBwcICAgICAgICAgICAgICAgICAgHBwcICAgJCQkKCgoKCgoKCgoKCgoICAgGBgYICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYHBwcHBwcICAgICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQCAgIDAwMDAwMDAwMDAwMCAgIDAwMCAgIDAwMFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcGBgYFBQUGBgZeXl78/Pz6+vr9/f37+/vz8/M5OTkGBgYEBAQDAwMGBgYCAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgJCQkJCQkICAgJCQkICAgHBwcHBwcICAgJCQkHBwcICAgICAgICAgICAgICAgJCQkJCQkKCgoLCwsLCwsLCwsLCwsKCgoICAgJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgICAgICAgHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMDAwMCAgICAgIDAwMEBAQEBAQDAwMCAgIEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUaGhrs7Oz+/v79/f37+/v7+/ulpaUPDw8CAgICAgIDAwMCAgIFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUFBQUFBQUFBQUFBQUGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcKCgoKCgoKCgoJCQkHBwcHBwcICAgJCQkLCwsHBwcHBwcHBwcHBwcHBwcICAgKCgoLCwsLCwsLCwsLCwsLCwsMDAwLCwsLCwsLCwsLCwsICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUDAwMCAgICAgIDAwMFBQUFBQUDAwMCAgIFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYICAgEBAQGBgYDAwO6urr6+vr9/f3+/v7+/v7U1NQxMTEFBQUDAwMCAgICAgIFBQUBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkJCQkKCgoKCgoKCgoJCQkICAgICAgICAgJCQkLCwsKCgoJCQkJCQkJCQkICAgICAgKCgoLCwsLCwsLCwsLCwsLCwsKCgoKCgoLCwsKCgoKCgoICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUGBgYHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcFBQUFBQUFBQUGBgYGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQEBAQCAgICAgIEBAQGBgYEBAQDAwMGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcFBQUHBwcDAwOBgYH9/f39/f37+/v6+vrq6upXV1cEBAQBAQEEBAQBAQECAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkJCQkLCwsKCgoKCgoICAgHBwcICAgJCQkLCwsLCwsLCwsLCwsKCgoJCQkHBwcHBwcKCgoKCgoLCwsMDAwMDAwMDAwKCgoLCwsMDAwKCgoLCwsICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcFBQUFBQUFBQUGBgYHBwcHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMBAQEDAwMFBQUEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUHBwcCAgJqamr9/f39/f39/f3+/v739/e3t7cgICAEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkJCQkICAgICAgJCQkICAgICAgICAgJCQkKCgoKCgoKCgoKCgoKCgoKCgoKCgoJCQkKCgoLCwsLCwsLCwsLCwsLCwsLCwsKCgoJCQkJCQkLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoKCgoJCQkICAgHBwcICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYFBQUFBQUGBgYHBwcHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcGBgYFBQUCAgJcXFz19fX9/f39/f39/f38/Pz39/epqakjIyMLCwsCAgICAgIDAwMDAwMEBAQDAwMCAgIFBQUDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcKCgoKCgoJCQkJCQkKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsKCgoJCQkHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgGBgYFBQUHBwcGBgYGBgYFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYFBQUGBgYHBwcHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUHBwcHBwcGBgYGBgYWFhaNjY3x8fH7+/v6+vr9/f39/f35+fm+vr5FRUUICAgFBQUCAgIDAwMDAwMCAgIDAwMCAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMHBwcHBwcICAgICAgICAgHBwcHBwcICAgICAgICAgHBwcICAgICAgHBwcICAgJCQkKCgoLCwsKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsKCgoJCQkHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgICAgHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYGBgYHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUHBwcGBgYVFRV9fX23t7fHx8fx8fH+/v78/Pz5+fnc3NyBgYEwMDAEBAQFBQUDAwMDAwMCAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMICAgICAgICAgICAgHBwcHBwcICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcJCQkKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoJCQkHBwcICAgICAgICAgICAgICAgICAgICAgICAgJCQkICAgICAgJCQkICAgICAgICAgICAgJCQkICAgICAgICAgICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUHBwcGBgYEBAQEBAQGBgYHBwcICAgKCgorKyt/f3/b29v7+/v5+fn5+fnX19dMTEwaGhoFBQUDAwMDAwMDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMJCQkKCgoJCQkJCQkHBwcHBwcJCQkICAgHBwcICAgJCQkKCgoKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcICAgICAgHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgKCgoJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYJCQkDAwMGBgYHBwcGBgYDAwMDAwMEBARAQEC3t7f19fX4+Pj9/f3t7e2bm5saGhoGBgYDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMKCgoLCwsKCgoJCQkHBwcHBwcKCgoICAgHBwcICAgKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsKCgoKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgICAgICAgICAgICAgJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkKCgoJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcHBwcFBQUGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYICAgFBQUHBwcFBQUFBQUEBAQHBwcDAwMDAwMDAwMDAwMHBwcaGhp0dHTo6Oj5+fn8/Pz09PSnp6cZGRkHBwcBAQECAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMLCwsMDAwKCgoKCgoLCwsKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsMDAwNDQ0NDQ0NDQ0NDQ0NDQ0LCwsKCgoKCgoKCgoLCwsMDAwMDAwMDAwMDAwLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsMDAwMDAwMDAwLCwsKCgoLCwsLCwsLCwsLCwsLCwsKCgoHBwcHBwcLCwsJCQkHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkICAgICAgICAgHBwcJCQkICAgICAgHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYEBAQDAwMCAgIDAwMDAwMFBQU7OzuxsbH4+Pj6+vr7+/u+vr5UVFQGBgYDAwMDAwMCAgICAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMLCwsMDAwKCgoKCgoLCwsKCgoLCwsKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsMDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0MDAwLCwsLCwsLCwsLCwsMDAwNDQ0NDQ0MDAwMDAwMDAwMDAwLCwsLCwsLCwsLCwsLCwsLCwsMDAwMDAwMDAwLCwsKCgoLCwsLCwsLCwsLCwsLCwsKCgoHBwcHBwcLCwsJCQkICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgICAgHBwcICAgICAgICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMBAQEFBQUFBQUHBwchISGhoaH6+vr8/Pz4+Pjn5+dSUlIDAwMDAwMEBAQCAgIEBAQDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0ODg4NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwLCwsMDAwLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsJCQkGBgYHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgICAgHBwcHBwcICAgICAgICAgICAgICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQFBQUCAgIDAwMBAQEHBwcNDQ1sbGzi4uL6+vr7+/vr6+uKiooYGBgCAgICAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMLCwsLCwsLCwsLCwsLCwsLCwsKCgoLCwsLCwsLCwsKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsMDAwMDAwMDAwNDQ0ODg4NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwMDAwLCwsLCwsKCgoLCwsLCwsMDAwLCwsLCwsJCQkICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgICAgJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQDAwMEBAQDAwMEBAQFBQULCwtkZGTy8vL8/Pz5+fn39/d9fX0HBwcEBAQFBQUCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMLCwsKCgoMDAwMDAwLCwsLCwsKCgoLCwsMDAwLCwsKCgoLCwsNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwNDQ0MDAwMDAwKCgoKCgoLCwsMDAwLCwsLCwsLCwsLCwsLCwsJCQkHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkKCgoHBwcGBgYJCQkJCQkKCgoJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYGBgYFBQUHBwcEBAQCAgIFBQUDAwMBAQEMDAxPT0/CwsL5+fn6+vrt7e2MjIwhISECAgIEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMMDAwLCwsNDQ0MDAwMDAwMDAwLCwsMDAwMDAwMDAwLCwsMDAwMDAwMDAwMDAwMDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ODg4NDQ0NDQ0NDQ0ODg4NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ODg4ODg4ODg4ODg4ODg4ODg4NDQ0NDQ0MDAwNDQ0NDQ0MDAwMDAwLCwsLCwsKCgoLCwsLCwsLCwsLCwsLCwsJCQkJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkKCgoICAgICAgKCgoKCgoKCgoKCgoICAgICAgHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYGBgYEBAQEBAQEBAQCAgIEBAQCAgIDAwMDAwMEBAQhISG0tLT9/f319fX7+/u8vLwxMTECAgIEBAQEBAQDAwMEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwODg4MDAwNDQ0KCgoKCgoLCwsLCwsLCwsKCgoHBwcICAgLCwsJCQkHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgJCQkJCQkICAgICAgICAgICAgHBwcHBwcHBwcJCQkKCgoKCgoKCgoKCgoKCgoKCgoKCgoICAgICAgICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcFBQUFBQUHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcFBQUICAgICAgEBAQFBQUICAgFBQUFBQUDAwMCAgIEBAQDAwMDAwMBAQECAgIDAwM2NjbDw8P6+vr7+/v9/f3ExMQ+Pj4EBAQFBQUCAgICAgIFBQUCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ODg4NDQ0NDQ0NDQ0ODg4ODg4MDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0KCgoLCwsKCgoLCwsLCwsLCwsLCwsJCQkHBwcICAgLCwsJCQkHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgJCQkICAgICAgICAgICAgHBwcHBwcICAgJCQkKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoICAgHBwcJCQkHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcGBgYGBgYHBwcGBgYFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQDAwMDAwMEBAQEBAQEBAQFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcGBgYGBgYFBQUEBAQGBgYGBgYFBQUFBQUFBQUDAwMCAgIDAwMDAwMDAwMEBAQDAwMDAwMDAwMPDw9/f3/m5ub7+/v6+vrt7e16enoXFxcEBAQEBAQCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0PDw8PDw8MDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0LCwsLCwsJCQkLCwsJCQkLCwsLCwsLCwsKCgoJCQkHBwcICAgLCwsJCQkHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcHBwcICAgKCgoLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoICAgHBwcJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcJCQkHBwcHBwcJCQkHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUDAwMBAQEBAQEBAQEBAQEBAQEDAwMFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYFBQUFBQUDAwMGBgYHBwcFBQUGBgYGBgYFBQUEBAQDAwMDAwMDAwMDAwMDAwMCAgIBAQEEBAQEBAQKCgpra2vj4+P7+/v7+/vw8PCfn58iIiIICAgDAwMBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwNDQ0ODg4NDQ0MDAwMDAwMDAwODg4ODg4NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ODg4PDw8QEBANDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0LCwsMDAwKCgoLCwsLCwsLCwsLCwsKCgoJCQkJCQkLCwsJCQkHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgJCQkICAgJCQkJCQkKCgoLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoHBwcHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgGBgYGBgYICAgHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUEBAQEBAQEBAQEBAQDAwMDAwMEBAQFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcHBwcGBgYEBAQFBQUHBwcKCgoHBwcEBAQHBwcGBgYGBgYFBQUFBQUEBAQCAgIDAwMFBQUFBQUDAwMEBAQDAwMCAgIHBwcICAhQUFDg4OD7+/v7+/v29vaYmJgVFRUFBQUGBgYDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwODg4PDw8MDAwMDAwMDAwNDQ0ODg4PDw8NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwMDAwODg4PDw8QEBAQEBAODg4ODg4ODg4NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0MDAwNDQ0MDAwNDQ0KCgoKCgoLCwsLCwsLCwsLCwsKCgoKCgoLCwsJCQkHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcICAgLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoHBwcHBwcJCQkJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYHBwcHBwcFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYFBQUEBAQEBAQDAwMDAwMDAwMFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUEBAQICAgrKysjIyMFBQUFBQUGBgYFBQUGBgYFBQUGBgYFBQUCAgIDAwMCAgIEBAQDAwMDAwMCAgIDAwMBAQEGBgYHBwdERETIyMj5+fn6+vr6+vqhoaErKysDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0NDQ0NDQ0NDQ0NDQ0NDQ0ODg4NDQ0MDAwNDQ0ODg4PDw8PDw8PDw8PDw8PDw8QEBAPDw8PDw8PDw8PDw8QEBAQEBAPDw8PDw8PDw8PDw8PDw8PDw8ODg4NDQ0NDQ0NDQ0NDQ0NDQ0ODg4PDw8PDw8QEBAQEBAQEBAPDw8ODg4NDQ0NDQ0NDQ0MDAwMDAwMDAwNDQ0NDQ0NDQ0NDQ0NDQ0MDAwLCwsLCwsLCwsLCwsKCgoLCwsLCwsLCwsKCgoKCgoJCQkICAgHBwcICAgICAgICAgICAgICAgICAgICAgJCQkICAgICAgHBwcICAgKCgoKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoGBgYHBwcKCgoJCQkHBwcICAgHBwcICAgKCgoJCQkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgHBwcGBgYGBgYFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFBQUFBQUGBgYGBgYGBgYFBQUFBQUFBQUFBQUFBQUFBQUGBgYGBgYFBQUEBAQDAwMCAgIDAwMCAgIEBAQDAwMFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYHBwcEBAQICAgXFxejo6PFxcVcXFwMDAwICAgFBQUHBwcFBQUGBgYFBQUHBwcCAgIDAwMEBAQEBAQDAwMCAgICAgICAgIEBAQEBAQHBwcuLi6qqqr7+/v7+/v29va7u7snJycEBAQEBAQDAwMCAgIFBQUDAwMCAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMNDQ0ODg4ODg4ODg4ODg4ODg4NDQ0MDAwMDAwNDQ0PDw8QEBAQEBAQEBAQEBAQ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BgYFBQUHBwcbGxt1dXXe3t77+/v8/Pz7+/v5+fny8vLe3t6+vr5eXl4SEhIDAwMEBAQEBAQCAgICAgIDAwMDAwMCAgIEBAQEBAQGBgYCAgIDAwMEBAQoKCjFxcX8/Pz9/f3v7+99fX0NDQ0CAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAPDw8QEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAPDw8PDw8QEBAPDw8PDw8PDw8PDw8MDAwMDAwMDAwNDQ0NDQ0MDAwMDAwLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoJCQkICAgICAgJCQkKCgoLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsKCgoKCgoLCwsLCwsKCgoLCwsLCwsKCgoLCwsLCwsKCgoMDAwLCwsKCgoLCwsLCwsJCQkICAgHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJCQkHBwcICAgHBwcEBAQGBgYGBgYGBgYICAgFBQUGBgYGBgYEBAQEBAQEBAQCAgICAgIDAwMBAQEDAwMDAwMCAgIEBAQEBAQDAwMCAgICAgIDAwMCAgICAgICAgICAgICAgICAgIDAwMCAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMFBQUFBQUHBwcGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYDAwMjIyOYmJjn5+f4+Pj8/Pz6+vr9/f39/f36+vrIyMhWVlYcHBwMDAwICAgEBAQDAwMDAwMBAQEDAwMCAgICAgIDAwMCAgIGBgYFBQUvLy/b29v7+/v8/Pzw8PA6OjoDAwMCAgIEBAQDAwMCAgIDAwMDAwMDAwMD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xcXw8PDw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/w8PDw8PDv7+/t7e3u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozt7e3t7e3t7e3s7Ozr6+vr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fm5ubm5ubn5+fn5+fn5+fm5ubn5+fn5+fn5+fl5eXk5OTk5OTn5+fl5eXj4+Pl5eXm5ubm5ubm5ubo6Ojp6enp6enp6enr6+vr6+vq6urs7Ozb29vBwcG5ubm2tra4uLi7u7u8vLy/v7/ExMTJycnNzc3Pz8/R0dHU1NTX19fZ2dne3dze3dzh39/m5OPp5uXMy8umpqZzdXdSVlg/RUo2PUgxOUolL0YhKkcdKUkaKUwYKU8YKlUdMV0nPWg3TXRLYYFmepGClKOgr7m1vsLGycnQ0tLN0NC9wcK3vrzEy8bHzMjHycXJx8bHxcjEw8bDw8TDw8PExMTDw8PCwsLExMTExMTFxcXHx8fMzMzQ0NDT09PT09PPz8+mpqZxcXFwcHB0dHR3d3d6enp+fn6JiYmhoaGysrK9vb3FxcXKysrLy8vLy8vLy8vNzc3Ozs7Ozs7Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDR0dHS0tLQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Pz8/Nzc3Nzc3Ozs7Ozs7Nzc3MzMzLy8vLy8vLy8vLy8vLy8vKysrKysrKysrKysrIyMjJycnKysrKysrJycnJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjJycnIyMjIyMjIyMjGxsbHx8fIyMjIyMjIyMjHx8fFxcXFxcXGxsbGxsbGxsbGxsbGxsbGxsbGxsbw8PDv7+/t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6eno6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fm5ubm5ubn5+fn5+fn5+fn5+fo6Ojn5+fm5ubl5eXk5OTl5eXn5+fn5+fm5ubn5+fn5+fm5ubm5ubo6Ojp6enp6enp6enr6+vr6+vt7e3t7e3l5eXNzc2+vr62tra3t7e4uLi8vLy/v7/Dw8PHx8fLy8vOzs7R0dHT09PW1tba2trZ2dnZ2dne3t7h4eHl5OTl5eXb29u3t7eVlpd5entiZGdaXGBYWl5YW2NRWWZQW2tQW2xWYHFfaXlweomCipiTm6Wkq7OutLm8wMPHycvQ0NDMzMy/wMDCw8POz8/P0dDMzczKy8rKysrJycrIx8jHx8fHx8fHx8fHx8fHx8fIyMjJycnJycnLy8vOzs7R0dHT09PS0tLDw8OKiopycnJ3d3d4eHh7e3t8fHyDg4OUlJStra27u7vExMTHx8fLy8vNzc3Nzc3Nzc3Nzc3Nzc3Ozs7Ozs7Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDOzs7Q0NDS0tLT09PT09PT09PS0tLR0dHQ0NDQ0NDPz8/Ozs7Ozs7Ozs7Ozs7Nzc3MzMzKysrLy8vKysrLy8vLy8vLy8vLy8vLy8vLy8vJycnJycnJycnIyMjIyMjIyMjKysrJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjHx8fFxcXGxsbGxsbGxsbGxsbFxcXFxcXw8PDw8PDu7u7u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubl5eXl5eXn5+fm5ubl5eXm5ubn5+fm5ubm5ubo6Ojo6Ojp6enp6ens7Ozr6+vs7Ozt7e3r6+va2trGxsa5ubm2tra0tLS5ubm+vr7BwcHFxcXJycnMzMzPz8/Pz8/T09PY2NjZ2dnZ2dnc3Nzf39/f39/i4uLm5ubh4eHR0dG4uLienp6NjY1/f397fH12fIN2fod5gYmDiZCKkJaXm6Gfo6ioq6+6vL7HyMnOzs/MzMzGxsbFxcXNzc3Y2NjU1NTT09PR0dHOzs7Nzc3MzMzLy8vLy8vKysrKysrKysrKysrMzMzNzc3Nzc3Pz8/S0tLU1NTS0tLNzc2rq6t8fHx1dXV5eXl7e3t9fX2BgYGPj4+ioqK4uLjBwcHIyMjJycnNzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDPz8/R0dHS0tLS0tLS0tLS0tLS0tLQ0NDPz8/Q0NDPz8/Ozs7Ozs7Ozs7Ozs7Ozs7MzMzLy8vMzMzKysrLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrJycnJycnJycnKysrJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjIyMjHx8fGxsbGxsbGxsbGxsbGxsbGxsbGxsbFxcXx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urp6eno6Ojp6enp6enp6enp6enp6enq6urp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubn5+fn5+fm5ubm5ubm5ubl5eXj4+Pl5eXm5ubm5ubn5+fn5+fo6Ojo6Ojp6enr6+vr6+vr6+vq6urs7Ozk5OTR0dG/v7+5ubm2tra3t7e7u7u+vr7CwsLGxsbKysrOzs7Ozs7R0dHW1tbY2NjZ2dnb29ve3t7e3t7c3Nzg4ODj4+Pm5ubj4+PZ2dnNzc28vLy0tbWprK6lqKyjpqqrrbCvsrW6vL3ExcbJy8vPzs7NzMzKycnLysrS0tLa2tra2trZ2dnZ2dnY2NjV1dXS0tLR0dHQ0NDPz8/Ozs7Nzc3MzMzNzc3Ozs7Pz8/R0dHS0tLT09PV1dXT09PT09O7u7uMjIx5eXl5eXl5eXl/f3+BgYGNjY2goKCysrLBwcHFxcXJycnJycnMzMzNzc3MzMzNzc3Ozs7Pz8/Q0NDQ0NDR0dHQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Q0NDR0dHQ0NDPz8/Q0NDR0dHR0dHQ0NDQ0NDQ0NDPz8/Ozs7Ozs7Ozs7Ozs7Ozs7Nzc3Nzc3KysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fGxsbFxcXFxcXGxsbGxsbGxsbFxcXExMTDw8PCwsLw8PDx8fHw8PDv7+/u7u7u7u7v7+/u7u7u7u7u7u7t7e3v7+/v7+/u7u7u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vp6eno6Ojp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fm5ubm5ubl5eXk5OTl5eXm5ubn5+fn5+fn5+fn5+fo6Ojo6Ojq6urq6urs7Ozr6+vu7u7r6+vf39/IyMi7u7u5ubm5ubm5ubm8vLy/v7/Dw8PIyMjLy8vPz8/Q0NDU1NTW1tbY2Njb29vd3d3e3t7e3t7f39/g4ODi4uLk5OTl5eXk5OTd3d3a2trV1dbQ0dHMzc3Oz9DNzs7Q0NDNzMvLysnMysnRz87Z19bd3Nzg4ODg4ODf39/d3d3b29va2trX19fV1dXU1NTT09PR0dHR0dHR0dHQ0NDQ0NDR0dHS0tLU1NTV1dXW1tbY2NjT09PPz8+jo6N+fn5+fn59fX19fX2AgICJiYmZmZmtra26urrGxsbIyMjKysrLy8vMzMzOzs7Ozs7Ozs7Pz8/Pz8/Pz8/Pz8/R0dHQ0NDQ0NDQ0NDQ0NDR0dHR0dHR0dHQ0NDR0dHS0tLQ0NDQ0NDR0dHQ0NDQ0NDPz8/Q0NDQ0NDQ0NDPz8/Ozs7Nzc3Ozs7Ozs7Nzc3Nzc3KysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrIyMjJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fGxsbGxsbGxsbGxsbGxsbGxsbFxcXFxcXExMTx8fHy8vLy8vLx8fHx8fHw8PDv7+/v7+/u7u7t7e3s7Ozv7+/w8PDu7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozr6+vp6enn5+fq6urq6uro6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fm5ubm5ubn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fo6Ojn5+fo6Ojr6+vr6+vt7e3t7e3q6urV1dXBwcG8vLy7u7u5ubm7u7u+vr7BwcHFxcXJycnMzMzNzc3Q0NDT09PV1dXY2NjZ2dnY2Nja2trd3d3e3t7f39/h4eHi4uLj4+Pj4+Pj4+Pj4uHi4eDg397h397d29rd29rd29rd3Nvh4N/j4+Pi4uLf39/e3t7d3d3d3d3e3t7g4ODe3t7b29vZ2dnZ2dnX19fV1dXT09PU1NTT09PT09PU1NTU1NTX19fX19fW1tbX19fPz8+4uLiJiYl+fn5/f3+AgICEhISKioqYmJiqqqq5ubnAwMDKysrMzMzMzMzNzc3Ozs7Pz8/Q0NDQ0NDPz8/Pz8/Pz8/Pz8/Q0NDPz8/Pz8/Q0NDS0tLT09PT09PT09PS0tLT09PT09PS0tLS0tLQ0NDPz8/Pz8/Pz8/Q0NDQ0NDQ0NDPz8/Ozs7Nzc3Pz8/Ozs7Nzc3Nzc3KysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrHx8fIyMjJycnJycnJycnIyMjIyMjIyMjIyMjIyMjIyMjJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fGxsbGxsbGxsbGxsbGxsbGxsbGxsbw8PDw8PDw8PDw8PDw8PDw8PDw8PDv7+/v7+/u7u7u7u7w8PDw8PDv7+/u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozr6+vq6urp6enq6urp6enp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enn5+fn5+fn5+fm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fo6Ojp6eno6Ojp6enr6+vr6+vs7Ozs7Ozt7e3k5OTOzs7BwcG8vLy6urq6urq8vLy/v7/BwcHFxcXJycnLy8vPz8/S0tLU1NTW1tbW1tbV1dXZ2dnc3Nzc3Nzd3d3d3d3f39/g4ODi4uLi4uLk4+Pl5OTl5OTn5uXl5OTm5OTi4uHi4eHg4eHe3+De3t/f4ODf39/g4ODg4ODf39/e3t7e3t7d3d3c3Nzb29va2trY2NjY2NjY2NjY2NjX19fX19fX19fZ2dnY2NjW1tbU1NTBwcGbm5uBgYGEhISCgoKEhISMjIyZmZmnp6e4uLjCwsLHx8fMzMzPz8/Ozs7Ozs7Pz8/Pz8/Q0NDPz8/Pz8/Pz8/Q0NDR0dHR0dHQ0NDQ0NDR0dHS0tLT09PS0tLS0tLS0tLS0tLS0tLS0tLR0dHR0dHQ0NDR0dHR0dHQ0NDQ0NDQ0NDPz8/Pz8/Ozs7Ozs7Nzc3MzMzLy8vKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fGxsbGxsbGxsbGxsbGxsbGxsbGxsbFxcXFxcXx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHx8fHx8fHx8fHx8fHw8PDw8PDv7+/u7u7u7u7t7e3t7e3u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozr6+vr6+vs7Ozt7e3s7Ozr6+vr6+vs7Ozs7Ozr6+vr6+vq6urp6eno6Ojq6urq6uro6Ojo6Ojp6enp6enp6eno6Ojo6Ojp6enp6enq6urq6urq6urp6enn5+fm5ubm5ubm5ubm5ubm5ubn5+fm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fo6Ojp6enp6eno6Ojq6urq6urr6+vr6+vs7Ozt7e3r6+vb29vJycm/v7+7u7u6urq8vLy/v7/AwMDExMTFxcXJycnNzc3Q0NDR0dHS0tLU1NTT09PW1tbZ2dnb29ve3t7d3d3f39/f39/g4ODg4ODg4ODh4eHi4uLj4+Pi4+Pi4uPf4OHd3+Df4eLd3+Db3d7f4ODg4ODg4ODg4ODf39/f39/f39/e3t7d3d3c3Nzb29vb29vZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnY2NjZ2dnW1tbKysqlpaWJiYmIiIiIiIiKioqNjY2bm5uoqKizs7O+vr7Hx8fMzMzOzs7Pz8/Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Q0NDS0tLS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PS0tLS0tLS0tLS0tLS0tLQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Nzc3Ly8vKysrKysrKysrKysrKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fFxcXGxsbHx8fGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDu7u7v7+/w8PDx8fHw8PDx8fHx8fHw8PDw8PDv7+/v7+/v7+/v7+/v7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozt7e3t7e3t7e3s7Ozs7Ozr6+vr6+vr6+vr6+vr6+vr6+vq6urs7Ozs7Ozq6urq6urp6enp6enp6eno6Ojq6urp6eno6Ojp6enq6urq6urp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fo6Ojo6Ojo6Ojo6Ojo6Ojn5+fm5ubm5ubn5+fn5+fo6Ojo6Ojo6Ojp6enp6enr6+vr6+vr6+vt7e3n5+fc3NzLy8vAwMC7u7u7u7u9vb28vLy/v7/Dw8PHx8fLy8vOzs7Q0NDR0dHT09PS0tLU1NTX19fb29ve3t7d3d3d3d3c3Nzd3d3e3t7c3d7c3t/c3t/d3+Df4eLg4uPd3+Dd3+De4OHc3t/b3eDe3+Dg4ODg4ODf39/f39/f39/f39/e3t7e3t7e3t7f39/f39/b29vc3Nzc3Nzc3Nzc3Nza2trc3NzX19fS0tKwsLCKioqKioqNjY2NjY2Tk5OcnJyqqqq2tra/v7/Hx8fLy8vOzs7Q0NDR0dHR0dHR0dHQ0NDPz8/Q0NDR0dHR0dHR0dHS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PT09PS0tLS0tLS0tLS0tLPz8/Q0NDQ0NDQ0NDPz8/Pz8/Nzc3Nzc3Nzc3Nzc3Nzc3Ly8vKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fFxcXGxsbHx8fGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDt7e3v7+/w8PDx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDx8fHx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3s7Ozs7Ozr6+vr6+vs7Ozs7Ozr6+vq6urs7Ozs7Ozq6urr6+vo6Ojp6enp6enp6enr6+vq6uro6Ojp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fm5ubm5ubn5+fn5+fm5ubm5ubm5ubm5ubm5ubn5+fm5ubm5ubm5ubn5+fn5+fo6Ojo6Ojo6Ojo6Ojq6urr6+vr6+vr6+vs7Ozm5ubY2NjJycm/v7+7u7u6urq7u7u9vb3AwMDExMTIyMjLy8vOzs7R0dHS0tLS0tLU1NTV1dXZ2dnb29va2trc3Nzb29vd3d3e3t7d3t/c3t/c3t/e39/g4OHg4eHd3t7d3t7f3+De39/d3t/f39/e3t7f39/f39/f39/f39/e3t7e3t7e3t7e3t7e3t7f39/e3t7e3t7c3Nzc3Nzc3Nzb29vX19fT09O6urqVlZWMjIyPj4+SkpKVlZWfn5+qqqq2tra8vLzFxcXMzMzPz8/R0dHR0dHS0tLT09PS0tLR0dHPz8/R0dHT09PT09PT09PT09PT09PS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PT09PT09PS0tLS0tLS0tLPz8/Pz8/Q0NDQ0NDPz8/Pz8/Nzc3Nzc3Nzc3Nzc3Nzc3Ly8vKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fFxcXGxsbHx8fGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDu7u7u7u7v7+/v7+/w8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7t7e3s7Ozs7Ozr6+vr6+vs7Ozs7Ozr6+vs7Ozs7Ozr6+vs7Ozq6urq6urp6enp6enq6urr6+vq6urr6+vq6urq6urp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fm5ubn5+fn5+fo6Ojo6Ojo6Ojp6enq6urr6+vs7Ozs7Ozs7Ozs7Ozm5ubY2NjJycm/v7++vr69vb3AwMC/v7/AwMDDw8PHx8fLy8vOzs7Pz8/R0dHT09PT09PV1dXY2NjY2Nja2trb29vd3d3f39/c3t7c3d7b3d3e3d3f397f39/f39/f39/g397f3t3f3d3e3d3e3t7e3t7f39/f39/f39/g4ODf39/f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3c3NzU1NS6urqXl5eMjIyQkJCRkZGbm5uioqKurq64uLjBwcHHx8fMzMzOzs7Q0NDS0tLS0tLS0tLS0tLT09PS0tLR0dHS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PT09PT09PT09PS0tLS0tLPz8/Pz8/Q0NDQ0NDQ0NDPz8/Ozs7Ozs7Ozs7Ozs7Ozs7MzMzKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fFxcXGxsbHx8fGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3t7e3u7u7w8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHy8vLy8vLx8fHw8PDw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7u7u7v7+/u7u7t7e3s7Ozr6+vr6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozt7e3r6+vq6urp6enp6enq6urs7Ozs7Ozr6+vr6+vp6enp6enp6enp6enp6enp6enp6enp6enq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fo6Ojo6Ojo6Ojp6enq6urr6+vr6+vt7e3r6+vr6+vt7e3m5ubX19fJycnExMTAwMDAwMDAwMDAwMDBwcHExMTIyMjMzMzLy8vOzs7Q0NDQ0NDS0tLW1tbV1dXX19fY2Nja2trb29vb29vc3Nzc3Nze3Nzg3t3g3t3h397g393g39vg3tvg3dve3Nzd3d3e3t7f39/f39/f39/f39/f39/f39/f39/g4ODg4ODf39/g4ODg4ODe3t7b29vV1dXBwcGampqQkJCRkZGVlZWdnZ2oqKivr6+5ubnBwcHIyMjMzMzR0dHS0tLS0tLS0tLS0tLT09PS0tLS0tLT09PT09PS0tLS0tLT09PT09PS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0tLPz8/Pz8/Q0NDQ0NDQ0NDQ0NDPz8/Ozs7Nzc3Nzc3Ozs7MzMzKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnJycnJycnIyMjHx8fFxcXGxsbHx8fGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDv7+/v7+/v7+/v7+/v7+/w8PDw8PDw8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3u7u7s7Ozr6+vs7Ozs7Ozs7Ozt7e3s7Ozs7Ozr6+vr6+vr6+vr6+vp6enq6urr6+vq6urp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6eno6Ojq6urr6+vr6+vs7Ozr6+vj4+PV1dXMzMzGxsbCwsK/v7++vr6/v7/Dw8PExMTHx8fJycnMzMzPz8/Q0NDR0dHS0tLT09PU1NTV1dXW1tbY2NjZ2dna2tra2trc29vd3Nzd3d3d3d3e3d3g4N7f3t3e3Nvc3Nzd3d3e3t7f39/f39/e3t7e3t7e3t7e3t7f39/f39/f39/f39/e3t7f39/e3t7U1NS+vr6goKCQkJCTk5OYmJiioqKsrKy0tLS6urrBwcHGxsbLy8vQ0NDT09PU1NTV1dXV1dXU1NTU1NTT09PT09PT09PU1NTU1NTU1NTU1NTU1NTU1NTU1NTT09PU1NTU1NTU1NTU1NTT09PU1NTU1NTU1NTT09PS0tLS0tLS0tLT09PT09PT09PS0tLS0tLR0dHQ0NDPz8/Q0NDQ0NDPz8/Pz8/Nzc3Nzc3Nzc3Ly8vLy8vLy8vLy8vKysrLy8vKysrKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vMzMzNzc3Ly8vLy8vKysrLy8vKysrKysrKysrJycnJycnIyMjKysrKysrJycnJycnKysrJycnIyMjHx8fFxcXFxcXFxcXGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHw8PDu7u7u7u7u7u7u7u7u7u7v7+/w8PDw8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vr6+vq6urr6+vs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozr6+vp6enq6urs7Ozq6urp6enp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enq6urr6+vr6+vs7Ozt7e3o6Oja2trOzs7JycnExMTBwcHAwMC/v7/AwMDExMTFxcXIyMjLy8vNzc3Ozs7Q0NDR0dHS0tLT09PV1dXV1dXV1dXW1tbX19fZ2dnb29vd3d3d3d3c3Nze3t7d3d3d3d3d3d3c3Nzd3d3d3d3e3t7f39/f39/f39/f39/e3t7f39/f39/e3t7d3d3W1tbQ0NC4uLicnJyWlpabm5uioqKpqamysrK5ubm+vr7Dw8PJycnNzc3S0tLT09PU1NTU1NTV1dXV1dXU1NTU1NTV1dXV1dXV1dXU1NTV1dXV1dXV1dXU1NTU1NTU1NTV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXU1NTT09PS0tLT09PT09PT09PT09PT09PS0tLS0tLR0dHQ0NDQ0NDQ0NDQ0NDOzs7Pz8/Nzc3Nzc3MzMzKysrKysrLy8vLy8vLy8vMzMzLy8vKysrKysrKysrLy8vLy8vKysrKysrKysrKysrKysrLy8vNzc3Ly8vKysrKysrLy8vLy8vLy8vKysrJycnJycnIyMjJycnIyMjIyMjIyMjIyMjIyMjHx8fGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDw8PDw8PDw8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vq6uro6Ojp6enq6urq6urs7Ozq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enq6urr6+vt7e3v7+/t7e3n5+fb29vR0dHLy8vHx8fExMTCwsLBwcHCwsLExMTGxsbJycnKysrLy8vOzs7R0dHR0dHS0tLT09PU1NTU1NTV1dXW1tbY2NjZ2dna2trb29vb29vd3d3d3d3e3t7e3t7e3t7d3d3c3Nzc3Nzc3Nzc3Nzd3d3f39/e3t7d3d3c3Nzb29va2trOzs62trafn5+ZmZmenp6oqKitra2ysrK6urrAwMDFxcXKysrOzs7R0dHU1NTU1NTV1dXW1tbW1tbW1tbW1tbX19fX19fY2NjX19fX19fX19fX19fW1tbW1tbW1tbW1tbW1tbV1dXU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTT09PT09PS0tLT09PS0tLS0tLQ0NDQ0NDPz8/Pz8/Q0NDPz8/Ozs7Nzc3MzMzMzMzLy8vLy8vLy8vLy8vKysrLy8vLy8vMzMzNzc3Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3Ozs7Ozs7Nzc3MzMzMzMzMzMzLy8vKysrLy8vLy8vKysrKysrKysrKysrJycnJycnKysrKysrJycnHx8fGxsbGxsbFxcXGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDw8PDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozr6+vr6+vr6+vs7Ozs7Ozr6+vq6uro6Ojp6enr6+vr6+vs7Ozq6uro6Ojp6enp6enp6enp6enp6enq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojq6urr6+vt7e3t7e3t7e3v7+/t7e3j4+PW1tbOzs7IyMjGxsbFxcXExMTGxsbGxsbHx8fIyMjJycnLy8vMzMzNzc3Ozs7Pz8/Q0NDS0tLU1NTW1tbX19fW1tbU1NTX19fZ2dnb29vd3d3e3t7e3t7e3t7d3d3c3Nzb29vb29vc3Nzb29vc3Nzd3d3b29vZ2dnX19fJycmsrKyfn5+jo6OoqKitra20tLS3t7e/v7/FxcXHx8fMzMzPz8/Q0NDR0dHT09PV1dXW1tbX19fY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjX19fW1tbV1dXU1NTV1dXV1dXU1NTU1NTU1NTV1dXV1dXV1dXV1dXV1dXU1NTT09PT09PT09PT09PT09PS0tLQ0NDPz8/Q0NDQ0NDPz8/Ozs7Ozs7Ozs7Nzc3Ly8vLy8vLy8vLy8vLy8vLy8vLy8vMzMzNzc3Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3Ozs7Pz8/Ozs7Ozs7Ozs7Ozs7Ly8vLy8vLy8vLy8vLy8vKysrJycnJycnIyMjIyMjIyMjJycnJycnJycnIyMjGxsbFxcXGxsbGxsbGxsbGxsbGxsbGxsbx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3t7e3t7e3s7Ozs7Ozr6+vs7Ozr6+vr6+vs7Ozq6uro6Ojq6urq6urp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enq6urr6+vq6urs7Ozt7e3t7e3u7u7t7e3j4+Pb29vR0dHMzMzLy8vJycnIyMjHx8fHx8fIyMjKysrLy8vLy8vMzMzNzc3Pz8/Q0NDQ0NDS0tLU1NTV1dXU1NTU1NTW1tbY2NjZ2dnb29vc3Nzb29vc3Nzc3Nzd3d3d3d3e3t7c3Nza2trb29ve3t7b29vU1NTBwcGurq6srKyvr6+wsLC1tbW5ubm+vr7CwsLGxsbKysrOzs7R0dHT09PU1NTU1NTV1dXW1tbX19fZ2dna2trZ2dnZ2dnZ2dnY2NjY2NjY2NjZ2dnY2NjY2NjX19fX19fY2NjY2NjY2NjY2NjX19fX19fY2NjX19fX19fW1tbV1dXU1NTU1NTV1dXV1dXV1dXV1dXU1NTU1NTS0tLS0tLS0tLT09PS0tLR0dHOzs7Ozs7Pz8/Ozs7Nzc3Nzc3MzMzKysrLy8vNzc3Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3Ly8vLy8vJycnLy8vLy8vKysrKysrKysrJycnIyMjIyMjJycnIyMjIyMjGxsbFxcXFxcXFxcXFxcXFxcXx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3u7u7u7u7u7u7t7e3s7Ozr6+vr6+vs7Ozs7Ozr6+vs7Ozp6eno6Ojq6urq6urp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojq6urr6+vp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enq6urq6urr6+vt7e3s7Ozs7Ozt7e3s7Ozt7e3r6+vi4uLX19fS0tLPz8/Nzc3MzMzKysrJycnKysrKysrKysrLy8vNzc3Pz8/Q0NDS0tLT09PT09PU1NTU1NTV1dXY2NjY2NjW1tbY2Njb29va2trc3Nzd3d3e3t7e3t7e3t7e3t7d3d3d3d3Z2dnKysq6urqysrKzs7O5ubm6urq8vLzAwMDDw8PHx8fKysrMzMzR0dHT09PU1NTW1tbW1tbX19fZ2dnY2NjY2Nja2tra2trZ2dnZ2dna2tra2tra2tra2tra2trZ2dnZ2dnZ2dnY2NjY2NjY2NjX19fY2NjY2NjY2NjY2NjY2NjX19fW1tbV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXU1NTT09PT09PT09PS0tLS0tLR0dHOzs7Ozs7Q0NDOzs7Nzc3Ozs7MzMzKysrLy8vNzc3Nzc3Nzc3Nzc3Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Pz8/Pz8/Ozs7Ozs7Nzc3Nzc3Nzc3MzMzLy8vKysrLy8vLy8vKysrKysrKysrJycnIyMjJycnJycnIyMjIyMjGxsbFxcXFxcXFxcXFxcXFxcXx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDw8PDx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozp6eno6Ojo6Ojo6Ojo6Ojo6Ojr6+vq6urp6eno6Ojo6Ojo6Ojr6+vr6+vr6+vr6+vr6+vp6enp6enp6enp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojq6urs7Ozr6+vr6+vr6+vt7e3s7Ozu7u7u7u7q6urk5OTe3t7W1tbT09PT09POzs7MzMzNzc3Ly8vKysrNzc3Q0NDQ0NDQ0NDT09PU1NTU1NTU1NTV1dXX19fX19fX19fY2NjZ2dnZ2dna2trb29vc3Nzd3d3b29vb29vW1tbLy8u+vr65ubm7u7u9vb2+vr7CwsLExMTFxcXHx8fKysrPz8/R0dHU1NTU1NTW1tbW1tbX19fX19fY2NjY2NjZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dna2tra2tra2trZ2dnZ2dnZ2dnZ2dnZ2dnY2NjY2NjY2NjX19fX19fX19fX19fX19fW1tbV1dXU1NTV1dXV1dXV1dXU1NTU1NTT09PT09PS0tLS0tLR0dHOzs7Pz8/Pz8/Pz8/Pz8/Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3Ozs7Ozs7Ozs7Nzc3Ozs7Pz8/Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Pz8/Pz8/Pz8/Pz8/Pz8/Nzc3Nzc3Nzc3Nzc3Nzc3MzMzKysrKysrLy8vLy8vKysrKysrJycnIyMjIyMjIyMjJycnJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozp6eno6Ojo6Ojo6Ojo6Ojo6Ojr6+vq6urq6urp6eno6Ojp6enr6+vr6+vs7Ozr6+vr6+vp6enp6enq6urq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojp6enq6urr6+vr6+vs7Ozs7Ozs7Ozt7e3u7u7u7u7t7e3r6+vk5OTd3d3a2trX19fU1NTS0tLPz8/Nzc3Ozs7Pz8/Pz8/R0dHT09PU1NTU1NTU1NTV1dXW1tbW1tbX19fY2Nja2tra2trb29vc3Nzb29vX19fS0tLMzMzExMS/v7/CwsLDw8PCwsLFxcXGxsbKysrLy8vMzMzPz8/R0dHU1NTU1NTV1dXV1dXX19fY2NjZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dna2tra2trZ2dnZ2dnZ2dnZ2dnY2NjY2NjY2NjY2NjY2NjX19fX19fX19fX19fV1dXU1NTV1dXV1dXV1dXV1dXV1dXU1NTT09PS0tLS0tLR0dHPz8/Pz8/Pz8/Pz8/Pz8/Ozs7Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Nzc3Nzc3Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDOzs7Nzc3Nzc3Nzc3Nzc3Nzc3Ly8vLy8vLy8vLy8vLy8vKysrKysrJycnIyMjIyMjJycnJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/t7e3s7Ozw8PDw8PDw8PDx8fHx8fHx8fHx8fHw8PDw8PDw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vr6+vs7Ozs7Ozs7Ozr6+vp6eno6Ojo6Ojp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojp6enq6urr6+vs7Ozs7Ozu7u7t7e3t7e3t7e3t7e3t7e3r6+vp6enn5+fi4uLc3Nza2trY2NjW1tbW1tbV1dXT09PU1NTU1NTV1dXW1tbX19fZ2dna2tra2tra2tra2trb29vb29vZ2dnV1dXR0dHMzMzIyMjIyMjJycnKysrKysrKysrLy8vOzs7Ozs7R0dHS0tLT09PU1NTW1tbX19fX19fY2NjZ2dnZ2dnZ2dna2trb29vc3Nzc3Nzd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a2trZ2dnZ2dna2trZ2dnZ2dna2tra2tra2tra2tra2trZ2dnZ2dnY2NjX19fX19fX19fY2NjY2NjX19fW1tbV1dXU1NTV1dXV1dXU1NTT09PS0tLR0dHS0tLR0dHQ0NDQ0NDQ0NDPz8/Pz8/Pz8/Ozs7Nzc3Nzc3Nzc3Ozs7Ozs7Ozs7Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Ozs7Nzc3Nzc3Nzc3Ozs7MzMzMzMzLy8vLy8vLy8vLy8vKysrJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/t7e3w8PDw8PDw8PDw8PDx8fHx8fHx8fHw8PDw8PDw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozq6urp6enq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojp6enq6urq6urr6+vt7e3t7e3t7e3t7e3t7e3t7e3s7Ozt7e3t7e3r6+vp6enm5ubh4eHe3t7c3NzZ2dnY2NjX19fV1dXV1dXV1dXW1tbW1tbW1tbW1tbW1tbW1tbW1tbU1NTS0tLR0dHQ0NDQ0NDPz8/Pz8/Pz8/Q0NDPz8/Pz8/Q0NDT09PT09PW1tbW1tbW1tbX19fY2NjZ2dnY2Nja2trb29va2trb29vb29vc3Nzc3Nzd3d3c3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nza2tra2trZ2dnZ2dnZ2dna2tra2tra2tra2tra2tra2tra2trZ2dnY2NjY2NjY2NjY2NjX19fX19fX19fW1tbV1dXV1dXV1dXV1dXV1dXU1NTT09PS0tLS0tLR0dHQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Pz8/Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Pz8/Pz8/Q0NDQ0NDQ0NDPz8/Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3Ly8vLy8vLy8vLy8vKysrKysrJycnJycnIyMjJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDw8PDx8fHx8fHw8PDw8PDw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojp6enp6enq6urs7Ozs7Ozs7Ozr6+vr6+vq6urr6+vr6+vs7Ozt7e3t7e3t7e3s7Ozr6+vp6enn5+fn5+fj4+Pg4ODf39/e3t7d3d3b29vb29vb29vb29va2trZ2dnY2NjX19fX19fX19fW1tbV1dXX19fV1dXU1NTV1dXX19fX19fW1tbW1tbY2NjY2NjY2NjZ2dna2tra2trZ2dna2trc3Nzc3Nzc3Nzc3Nzc3Nzd3d3d3d3c3Nzc3Nzc3Nzc3Nzc3Nzc3Nzd3d3d3d3d3d3d3d3d3d3c3Nzb29va2trZ2dnZ2dna2trb29vb29vb29vb29vb29va2trZ2dnZ2dnZ2dnY2NjY2NjY2NjY2NjY2NjY2NjX19fX19fU1NTV1dXV1dXV1dXU1NTT09PS0tLT09PT09PT09PS0tLQ0NDPz8/Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDR0dHR0dHR0dHQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Pz8/Ozs7Nzc3Nzc3Nzc3Nzc3Nzc3MzMzLy8vKysrKysrKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDw8PDw8PDx8fHw8PDw8PDv7+/v7+/v7+/v7+/w8PDv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6enq6urr6+vs7Ozs7Ozs7Ozs7Ozr6+vq6urr6+vp6eno6Ojq6urq6urq6urq6urr6+vs7Ozr6+vp6enp6eno6Ojm5ubj4+Pi4uLh4eHf39/f39/f39/f39/c3Nza2tra2tra2tra2trc3Nzc3Nza2trZ2dna2tra2tra2trc3Nzc3Nzc3Nzc3Nza2trb29vb29vd3d3e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7d3d3d3d3d3d3d3d3d3d3d3d3c3Nzb29va2tra2trb29vZ2dnZ2dnZ2dnZ2dnZ2dnZ2dna2tra2tra2trY2NjX19fY2NjY2NjY2NjX19fW1tbW1tbU1NTU1NTW1tbV1dXU1NTU1NTS0tLS0tLS0tLR0dHR0dHQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Q0NDPz8/Pz8/Q0NDR0dHR0dHQ0NDQ0NDQ0NDQ0NDQ0NDPz8/Pz8/Q0NDQ0NDQ0NDQ0NDPz8/Pz8/Pz8/Pz8/Pz8/Ozs7Nzc3Ozs7Nzc3MzMzLy8vKysrKysrKysrKysrJycnIyMjJycnJycnJycnJycnJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7t7e3u7u7w8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozr6+vr6+vs7Ozq6uro6Ojp6enp6enp6enp6enp6enq6urp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojp6enq6urr6+vr6+vr6+vq6urp6enp6eno6Ojo6Ojq6urr6+vr6+vr6+vr6+vr6+vr6+vq6uro6Ojo6Ojn5+fn5+fm5ubk5OTj4+Pi4uLj4+Pi4uLh4eHg4ODe3t7e3t7e3t7d3d3c3Nzc3Nzb29vb29vb29vb29vc3Nzc3Nzc3Nzd3d3c3Nzc3Nzd3d3d3d3e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3d3d3d3d3d3d3d3d3c3Nzc3Nzc3Nzc3Nza2tra2tra2tra2tra2tra2trb29vb29va2trY2NjX19fY2NjZ2dnY2NjX19fW1tbX19fU1NTU1NTV1dXU1NTT09PU1NTS0tLR0dHS0tLQ0NDPz8/Pz8/Pz8/Q0NDPz8/Pz8/Pz8/Q0NDQ0NDPz8/Q0NDR0dHS0tLQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDR0dHR0dHS0tLR0dHPz8/Pz8/Pz8/Pz8/Pz8/Ozs7MzMzNzc3Nzc3MzMzMzMzLy8vLy8vLy8vLy8vKysrKysrJycnIyMjIyMjIyMjIyMjIyMjx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7u7u7u7u7x8fHw8PDv7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozr6+vr6+vr6+vq6uro6Ojo6Ojp6enp6eno6Ojp6enp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enq6urq6urq6urq6urp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enq6urq6urp6eno6Ojo6Ojo6Ojp6enn5+fn5+fm5ubm5ubl5eXk5OTj4+Pi4uLh4eHg4ODd3d3d3d3d3d3e3t7e3t7e3t7f39/f39/e3t7e3t7d3d3d3d3d3d3e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3c3Nzc3Nzd3d3d3d3c3Nzc3Nzc3NzZ2dna2tra2tra2tra2trZ2dna2tra2tra2trZ2dnY2NjY2NjY2NjY2NjX19fX19fX19fW1tbU1NTV1dXV1dXU1NTU1NTT09PS0tLS0tLS0tLR0dHS0tLR0dHPz8/Q0NDR0dHR0dHS0tLS0tLR0dHS0tLT09PT09PR0dHR0dHR0dHR0dHR0dHR0dHR0dHS0tLS0tLS0tLS0tLS0tLR0dHR0dHQ0NDQ0NDPz8/Nzc3Nzc3Nzc3MzMzLy8vLy8vLy8vLy8vKysrKysrJycnKysrJycnHx8fIyMjJycnJycnx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7u7u7v7+/x8fHw8PDw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vt7e3t7e3r6+vs7Ozs7Ozs7Ozr6+vr6+vq6urp6eno6Ojo6Ojp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6eno6Ojn5+fm5ubm5ubm5ubk5OTi4uLj4+Pj4+Pi4uLg4ODe3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3Z2dna2tra2tra2tra2trZ2dna2tra2tra2tra2tra2trY2NjY2NjY2NjX19fX19fX19fY2NjV1dXU1NTV1dXU1NTU1NTT09PS0tLS0tLS0tLS0tLT09PS0tLPz8/Q0NDS0tLR0dHS0tLS0tLS0tLS0tLT09PT09PS0tLS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PS0tLS0tLR0dHQ0NDPz8/Pz8/Ozs7Nzc3Ly8vKysrKysrKysrKysrJycnJycnJycnKysrKysrIyMjJycnKysrKysrx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7u7u7u7u7w8PDw8PDw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7t7e3r6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozr6+vq6urp6enp6eno6Ojo6Ojq6urq6uro6Ojn5+fo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fm5ubm5ubl5eXj4+Pk5OTj4+Pi4uLh4eHh4eHh4eHh4eHh4eHg4ODg4ODh4eHh4eHh4eHg4ODg4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7e3t7d3d3d3d3d3d3c3Nzc3NzZ2dnZ2dna2tra2trZ2dna2trc3Nzb29va2trZ2dnZ2dnY2NjX19fY2NjY2NjY2NjX19fY2NjW1tbW1tbW1tbU1NTV1dXU1NTT09PU1NTT09PS0tLT09PS0tLQ0NDR0dHS0tLS0tLT09PT09PT09PT09PT09PT09PS0tLS0tLS0tLS0tLS0tLS0tLT09PT09PT09PT09PT09PU1NTT09PS0tLR0dHR0dHR0dHPz8/Ozs7Nzc3Nzc3Nzc3Nzc3MzMzLy8vKysrKysrKysrLy8vLy8vJycnKysrLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7t7e3u7u7w8PDv7+/w8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozr6+vq6uro6Ojo6Ojp6enp6ens7Ozq6uro6Ojn5+fo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6eno6Ojp6eno6Ojo6Ojm5ubl5eXn5+fn5+fn5+fm5ubm5ubl5eXk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLg4ODe3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7d3d3d3d3c3Nzc3NzZ2dnZ2dna2tra2trZ2dna2trc3Nzb29va2trZ2dnZ2dnX19fX19fX19fY2NjY2NjX19fX19fX19fY2NjV1dXU1NTV1dXV1dXV1dXV1dXU1NTS0tLT09PT09PT09PT09PS0tLT09PT09PT09PU1NTU1NTT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0tLU1NTU1NTT09PS0tLS0tLS0tLPz8/Pz8/Nzc3Nzc3Nzc3Ozs7Nzc3Ly8vKysrKysrKysrLy8vLy8vKysrLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/v7+/u7u7u7u7t7e3v7+/v7+/u7u7t7e3t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozt7e3s7Ozr6+vr6+vs7Ozq6urq6urp6eno6Ojq6urq6urp6eno6Ojo6Ojp6enp6enq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fm5ubm5ubj4+Pk5OTk5OTj4+Pj4+Pi4uLi4uLh4eHh4eHi4uLi4uLi4uLi4uLh4eHh4eHi4uLi4uLi4uLh4eHg4ODg4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3c3Nzb29vb29vb29vb29vb29vb29vb29vc3Nzb29va2tra2tra2trZ2dnY2NjZ2dnY2NjX19fY2NjY2NjY2NjZ2dnX19fW1tbW1tbW1tbV1dXU1NTT09PU1NTU1NTT09PT09PS0tLS0tLT09PT09PT09PT09PT09PT09PT09PS0tLT09PT09PU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTV1dXU1NTT09PS0tLT09PS0tLPz8/Pz8/Pz8/Ozs7Nzc3Nzc3MzMzLy8vLy8vKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDv7+/t7e3t7e3t7e3u7u7w8PDu7u7t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozr6+vr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3t7e3s7Ozs7Ozr6+vs7Ozr6+vs7Ozp6enn5+fr6+vr6+vo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fm5ubm5ubm5ubm5ubm5ubn5+fo6Ojn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXm5ubj4+Pk5OTk5OTk5OTj4+Pi4uLi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7d3d3c3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzb29vZ2dnZ2dnZ2dnZ2dna2trZ2dnX19fX19fX19fX19fY2NjY2NjY2NjX19fY2NjX19fV1dXU1NTU1NTU1NTU1NTT09PS0tLS0tLS0tLT09PT09PT09PT09PT09PT09PT09PT09PT09PU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTT09PT09PS0tLR0dHS0tLQ0NDQ0NDQ0NDOzs7Nzc3Nzc3Nzc3MzMzLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDv7+/v7+/t7e3u7u7u7u7v7+/v7+/u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3t7e3u7u7t7e3t7e3s7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozs7Ozt7e3t7e3s7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojr6+vr6+vo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fo6Ojn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubk5OTl5eXj4+Pk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7e3t7d3d3c3Nzc3Nzc3Nzc3Nzd3d3d3d3d3d3c3Nza2trZ2dnY2NjZ2dnY2NjY2NjY2NjY2NjY2NjY2NjX19fX19fY2NjY2NjY2NjY2NjX19fX19fW1tbV1dXU1NTU1NTV1dXU1NTT09PU1NTU1NTV1dXV1dXV1dXV1dXV1dXU1NTS0tLT09PU1NTV1dXV1dXV1dXV1dXU1NTU1NTU1NTU1NTV1dXV1dXU1NTT09PT09PS0tLPz8/Pz8/Pz8/Pz8/Ozs7Ozs7Nzc3MzMzKysrKysrLy8vLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3t7e3t7e3v7+/w8PDu7u7u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3u7u7u7u7t7e3s7Ozr6+vr6+vr6+vr6+vr6+vr6+vq6urr6+vt7e3t7e3t7e3s7Ozs7Ozr6+vr6+vq6urp6enq6urr6+vo6Ojo6Ojp6enp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXj4+Pk5OTj4+Pl5eXk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3c3Nzc3Nzd3d3d3d3d3d3d3d3c3Nzb29vZ2dnZ2dnZ2dnX19fX19fY2NjY2NjY2NjZ2dnX19fX19fY2NjY2NjY2NjY2NjX19fY2NjY2NjW1tbV1dXV1dXV1dXV1dXV1dXV1dXV1dXU1NTT09PT09PT09PT09PT09PS0tLT09PU1NTV1dXW1tbV1dXV1dXV1dXV1dXV1dXV1dXV1dXU1NTU1NTT09PS0tLR0dHPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Nzc3MzMzLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/t7e3u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3u7u7u7u7u7u7t7e3t7e3t7e3s7Ozs7Ozs7Ozt7e3t7e3s7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urq6urp6eno6Ojp6enq6urq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXj4+Pk5OTj4+Pl5eXk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7d3d3c3Nzc3Nzd3d3d3d3d3d3d3d3c3Nzc3Nzb29va2trZ2dnY2NjY2NjY2NjX19fX19fY2NjX19fY2NjY2NjY2NjY2NjY2NjX19fY2NjY2NjX19fW1tbV1dXU1NTU1NTU1NTU1NTU1NTV1dXV1dXV1dXV1dXV1dXV1dXU1NTU1NTV1dXV1dXV1dXU1NTV1dXV1dXV1dXV1dXW1tbV1dXV1dXV1dXV1dXU1NTT09PR0dHR0dHPz8/Pz8/Ozs7Ozs7Nzc3Nzc3MzMzLy8vKysrLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3u7u7u7u7t7e3t7e3u7u7v7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozr6+vs7Ozu7u7t7e3s7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozp6eno6Ojo6Ojp6enr6+vs7Ozr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojn5+fm5ubm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTl5eXk5OTl5eXk5OTk5OTk5OTk5OTk5OTi4uLi4uLi4uLi4uLi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7c3Nzc3Nzd3d3d3d3e3t7d3d3c3Nzd3d3c3Nza2trZ2dnX19fX19fY2NjX19fX19fY2NjY2NjY2NjZ2dnY2NjX19fX19fY2NjY2NjY2NjY2NjY2NjW1tbU1NTV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXU1NTV1dXV1dXV1dXV1dXV1dXU1NTV1dXV1dXW1tbX19fU1NTU1NTV1dXV1dXU1NTT09PS0tLR0dHPz8/Pz8/Pz8/Ozs7Nzc3Ozs7Nzc3Ly8vKysrLy8vLy8vLy8vLy8vLy8vLy8vx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/t7e3t7e3u7u7u7u7t7e3t7e3t7e3v7+/w8PDu7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vr6+vr6+vq6uro6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fl5eXk5OTk5OTk5OTl5eXl5eXk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLg4ODf39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3c3Nzc3Nzd3d3d3d3c3Nzb29vZ2dnZ2dna2trZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnY2NjY2NjY2NjX19fX19fX19fX19fW1tbV1dXU1NTU1NTU1NTV1dXV1dXV1dXV1dXW1tbV1dXU1NTU1NTV1dXV1dXW1tbW1tbX19fV1dXU1NTW1tbX19fV1dXU1NTU1NTV1dXV1dXU1NTS0tLS0tLR0dHR0dHQ0NDPz8/Q0NDNzc3Nzc3Ozs7Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/u7u7t7e3t7e3u7u7u7u7t7e3t7e3u7u7v7+/u7u7u7u7u7u7t7e3u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vr6+vr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fo6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTk5OTk5OTl5eXk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/f39/e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7f39/f39/f39/f39/e3t7f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3d3d3d3d3c3Nzb29vZ2dnZ2dna2trZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dna2tra2trZ2dnZ2dnX19fY2NjZ2dnY2NjY2NjX19fW1tbV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXW1tbW1tbU1NTV1dXV1dXW1tbW1tbX19fX19fW1tbW1tbX19fY2NjW1tbV1dXV1dXV1dXU1NTU1NTS0tLS0tLS0tLR0dHQ0NDPz8/Pz8/Ozs7Ozs7Ozs7Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHy8vLx8fHw8PDv7+/t7e3u7u7u7u7u7u7t7e3u7u7u7u7w8PDw8PDu7u7t7e3s7Ozt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fl5eXk5OTk5OTk5OTk5OTl5eXl5eXk5OTi4uLh4eHg4ODi4uLj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHi4uLh4eHg4ODf39/f39/f39/e3t7f39/g4ODh4eHi4uLh4eHh4eHh4eHg4ODf39/f39/e3t7f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3c3Nzc3Nzb29vZ2dnZ2dna2trZ2dna2tra2tra2tra2tra2tra2tra2trZ2dnY2NjX19fX19fZ2dna2tra2trY2NjX19fY2NjY2NjX19fV1dXU1NTU1NTW1tbX19fX19fX19fY2NjY2NjX19fX19fX19fY2NjY2NjX19fY2NjY2NjX19fY2NjY2NjY2NjY2NjX19fW1tbV1dXU1NTU1NTU1NTT09PT09PS0tLR0dHPz8/Ozs7Pz8/Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDw8PDv7+/t7e3u7u7u7u7u7u7u7u7t7e3u7u7w8PDv7+/u7u7t7e3u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fk5OTk5OTj4+Pk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHg4ODf39/e3t7e3t7f39/f39/f39/g4ODh4eHh4eHh4eHh4eHh4eHg4ODf39/f39/e3t7e3t7f39/f39/f39/f39/e3t7e3t7e3t7d3d3c3Nzc3Nzd3d3b29vZ2dnZ2dnZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2trZ2dnY2NjY2Nja2trZ2dnZ2dnY2NjY2NjY2NjY2NjX19fX19fW1tbV1dXX19fX19fW1tbX19fX19fX19fX19fX19fX19fX19fX19fX19fY2NjY2NjX19fZ2dnZ2dnY2NjX19fX19fV1dXU1NTT09PT09PT09PS0tLS0tLR0dHR0dHPz8/Pz8/Pz8/Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHy8vLy8vLx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3v7+/x8fHu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fm5ubm5ubm5ubm5ubm5ubj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/e3t7e3t7e3t7e3t7f39/h4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/e3t7c3Nzc3Nzd3d3b29vZ2dnZ2dnZ2dnZ2dna2tra2tra2tra2tra2tra2tra2trb29vb29va2trZ2dnY2NjY2NjX19fY2NjZ2dnY2NjX19fX19fY2NjY2NjX19fY2NjY2NjY2NjY2NjY2NjZ2dnZ2dnZ2dnY2NjY2NjY2NjX19fY2NjZ2dnY2NjZ2dnZ2dnY2NjY2NjY2NjX19fV1dXV1dXU1NTU1NTT09PT09PT09PS0tLR0dHQ0NDOzs7Nzc3Nzc3Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHx8fHy8vLw8PDw8PDx8fHx8fHw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/w8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozr6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fm5ubm5ubm5ubm5ubk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/f39/f39/f39/f39/f39/g4ODh4eHh4eHi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3c3NzZ2dnZ2dnZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dna2trZ2dnY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjX19fX19fX19fY2NjY2NjY2NjY2NjY2NjY2NjX19fY2NjY2NjX19fY2NjY2NjY2NjZ2dnY2NjY2NjX19fW1tbW1tbV1dXU1NTU1NTT09PS0tLS0tLS0tLS0tLS0tLR0dHOzs7Nzc3Ozs7Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHz8/Pw8PDw8PDu7u7x8fHu7u7x8fHy8vLy8vLv7+/z8/Pw8PDw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7s7Ozu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vp6enq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pk5OTi4uLh4eHi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHf39/f39/g4ODh4eHh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/d3d3e3t7f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7d3d3d3d3c3Nza2tra2trZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnY2NjY2NjY2NjY2NjY2NjY2NjX19fX19fY2NjY2NjY2NjY2NjX19fX19fX19fY2NjY2NjY2NjX19fX19fX19fX19fX19fZ2dnY2NjW1tbW1tbV1dXT09PV1dXT09PS0tLS0tLT09PT09PT09PS0tLPz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7v7+/U1NTS0tLs7Ozw8PDv7+/v7+/x8fHx8fHx8fHw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt7e3s7Ozr6+vs7Ozr6+vp6enp6enq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pk5OTi4uLh4eHi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODg4ODg4ODg4ODf39/f39/g4ODi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3b29vb29vb29va2tra2tra2tra2trb29va2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnY2NjX19fY2NjY2NjY2NjX19fY2NjY2NjZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dna2trZ2dnY2NjY2NjY2NjY2NjY2NjY2NjY2NjX19fX19fW1tbV1dXV1dXU1NTT09PT09PS0tLS0tLT09PS0tLPz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PD09PS2trYpKSkiIiKBgYHp6enw8PDx8fHw8PDx8fHw8PDx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozu7u7s7Ozs7Ozt7e3t7e3s7Ozs7Ozr6+vp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pk5OTi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7f39/e3t7f39/g4ODh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODe3t7e3t7f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3d3d3d3d3d3d3c3Nzb29vZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnY2NjX19fY2NjY2NjY2NjX19fY2NjZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnX19fX19fX19fY2NjY2NjY2NjX19fW1tbU1NTV1dXU1NTT09PS0tLS0tLT09PS0tLPz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/39/dwcHAFBQUEBAQcHByqqqrv7+/u7u7y8vLt7e3y8vLx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozt7e3t7e3v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozs7Ozt7e3s7Ozs7Ozr6+vr6+vr6+vr6+vr6+vs7Ozs7Ozr6+vq6urr6+vr6+vs7Ozr6+vp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fm5ubn5+fm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pk5OTi4uLh4eHj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLg4ODg4ODf39/f39/f39/g4ODh4eHi4uLj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHe3t7e3t7f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3c3Nzd3d3c3Nza2tra2tra2tra2trb29va2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnY2NjY2NjY2NjY2NjY2NjY2NjZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnZ2dnY2NjY2NjX19fY2NjY2NjY2NjX19fX19fU1NTV1dXV1dXU1NTT09PT09PT09PS0tLPz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PD09PSDg4MGBgYEBAQCAgI6OjrX19fx8fHy8vLu7u7x8fHx8fHx8fHw8PDv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7v7+/v7+/t7e3v7+/w8PDx8fHx8fHu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozt7e3t7e3t7e3s7Ozr6+vr6+vr6+vr6+vr6+vq6uru7u7v7+/r6+vq6urr6+vr6+vr6+vo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojm5ubm5ubm5ubm5ubm5ubl5eXj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLh4eHj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/g4ODh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHe3t7e3t7f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3c3Nzd3d3d3d3c3Nzc3Nza2trZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnZ2dnZ2dnY2NjX19fY2NjZ2dna2trb29vb29vb29vb29vb29va2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dnY2NjY2NjY2NjX19fW1tbX19fU1NTU1NTV1dXU1NTU1NTT09PT09PS0tLPz8/Q0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHe3t46OjoEBAQCAgIFBQVra2vw8PDr6+vz8/Pw8PDx8fHx8fHy8vLw8PDv7+/v7+/u7u7u7u7u7u7t7e3t7e3u7u7x8fHs7Ozu7u709PTa2trLy8u1tbW7u7vp6enx8fHt7e3t7e3u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/t7e3u7u7s7Ozu7u7t7e3t7e3v7+/u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7t7e3t7e3s7Ozr6+vs7Ozs7Ozr6+vt7e3Z2dnf39/t7e3w8PDp6enr6+vp6ens7Ozq6urs7Ozq6urq6urp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enr6+vq6uro6Ojo6Ojo6Ojq6urp6enp6enp6enq6urq6urp6enn5+fo6Ojo6Ojm5ubm5ubm5ubm5ubm5ubl5eXj4+Pk5OTk5OTk5OTj4+Pj4+Pk5OTj4+Pj4+Pj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLj4+Pf39/h4eHg4ODe3t7g4ODg4ODg4ODi4uLg4ODi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/d3d3c3Nzd3d3d3d3c3Nzb29vb29va2trZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dna2tra2trZ2dnZ2dnZ2dna2trZ2dnZ2dnZ2dna2tra2tra2tra2tra2trZ2dnZ2dnY2Nja2trb29vY2Nja2trY2NjY2NjX19fZ2dna2trY2NjX19fX19fU1NTU1NTV1dXV1dXV1dXU1NTS0tLR0dHR0dHQ0NDPz8/Q0NDR0dHR0dHR0dHR0dHR0dHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7s7Oy/v78oKCgFBQUEBAQXFxfLy8v09PTv7+/w8PDw8PDw8PDw8PDv7+/x8fHt7e3t7e3t7e3t7e3u7u7v7+/t7e3s7Ozu7u7k5OSIiIgmJiYSEhIKCgoMDAxSUlLU1NTu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozw8PDs7Ozr6+vw8PDu7u7u7u7w8PDs7Ozv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozr6+vr6+vp6enX19dFRUU2NjY7Ozuamprt7e3r6+vr6+vs7Ozr6+vr6+vr6+vp6enp6eno6Ojo6Ojp6enq6urp6enp6eno6Ojo6Ojp6eno6Ojn5+fs7Ozr6+vp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fp6enq6urr6+vm5ubm5ubn5+fn5+fm5ubl5eXk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLh4eHg4ODg4ODb29vi4uLj4+Pe3t7c3Nzf39/k5OTi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHf39/e3t7e3t7f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3e3t7b29vd3d3b29vZ2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trZ2dna2tra2tra2tra2tra2tra2tra2tra2trZ2dnZ2dna2tra2tra2trX19fc3Nza2trZ2dnZ2dnW1tbc3NzY2NjZ2dnb29vX19fX19fX19fY2NjY2NjY2NjV1dXV1dXV1dXU1NTU1NTT09PS0tLR0dHS0tLQ0NDPz8/Pz8/Q0NDQ0NDQ0NDQ0NDQ0NDx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDx8fHs7OypqakUFBQDAwMICAhmZmbl5eXt7e3y8vLx8fHy8vLz8/Px8fHw8PDw8PDw8PDu7u7t7e3t7e3u7u7u7u7s7Ozr6+uHh4cJCQkDAwMBAQEDAwMFBQUKCgqHh4ft7e3u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3x8fHr6+vw8PD09PTx8fHx8fHs7Ozs7Ozs7Ozu7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozq6urp6enNzc0oKCgDAwMCAgIWFhbm5ubr6+vt7e3q6urt7e3r6+vt7e3s7Ozr6+vr6+vp6enp6enp6eno6Ojo6Ojp6enq6urr6+vp6enp6ens7Ozq6uro6Ojp6enp6eno6Ojo6Ojp6eno6Ojq6uro6Ojs7Ozn5+fp6enn5+fm5ubm5ubn5+fn5+fn5+fm5ubk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLj4+Pi4uLh4eHh4eHg4ODg4ODl5eXk5OTk5OTh4eHg4ODh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7f39/d3d3b29ve3t7c3Nzd3d3c3Nzc3Nzc3NzY2NjZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trY2Njb29va2trb29vX19fb29vX19fZ2dnZ2dnY2NjY2NjW1tbY2NjZ2dnX19fX19fY2NjU1NTV1dXV1dXU1NTV1dXW1tbT09PS0tLT09PS0tLR0dHS0tLS0tLS0tLS0tLS0tLS0tLx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/y8vLv7+/w8PDy8vJ5eXkGBgYDAwMUFBSioqLy8vLv7+/x8fHw8PDx8fHy8vLw8PDw8PDv7+/u7u7t7e3u7u7u7u7t7e3t7e3Dw8MrKysCAgIBAQEEBAQODg4NDQ0SEhJ+fn7s7Ozv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vu7u7V1dWbm5t+fn7BwcHt7e3t7e3u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozr6+vs7Ozs7Ozr6+vp6enf399HR0cCAgIEBAQFBQXExMTu7u7r6+vr6+vt7e3s7Ozs7Ozs7Ozs7Ozr6+vp6eno6Ojp6eno6Ojn5+fo6Ojq6urr6+vn5+fp6enr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6enn5+fp6eno6Ojr6+vn5+fn5+fm5ubm5ubn5+fm5ubm5ubm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLg4ODj4+Pk5OTg4ODg4ODc3NylpaV9fX2VlZXe3t7g4ODh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7e3t7e3t7f39/f39/f39/f39/e3t7g4ODe3t7c3Nzd3d3b29vd3d3c3Nzd3d3d3d3Z2dnZ2dna2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2tra2trb29va2tra2tra2tra2tra2trb29va2tra2trf39/X19fS0tLMzMzMzMzY2NjX19fX19fY2NjZ2dnY2NjX19fX19fW1tbU1NTW1tbW1tbU1NTU1NTU1NTU1NTT09PT09PT09PS0tLS0tLS0tLS0tLS0tLS0tLS0tLx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHu7u7w8PDx8fHv7+/Y2NhHR0cHBwcGBgYnJyfOzs7y8vLw8PDw8PDv7+/x8fHx8fHx8fHx8fHw8PDv7+/u7u7u7u7s7Ozv7+91dXUCAgIHBwcEBAQ/Pz+4uLi2tra3t7fS0tLt7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vk5ORLS0sCAgIFBQU6Ojro6Ojr6+vw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozq6urp6eno6OhaWloFBQUBAQEDAwOEhITs7Ozq6urs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5ubo6Ojo6Ojo6Ojn5+fm5ubm5ubm5ubn5+fp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTk5OTk5OTm5ubm5ubm5ubm5ubl5eXi4uLj4+Pp6eni4uLW1ta6urqKiopUVFQ7Ozs5OTkzMzMwMDAzMzM5OTlHR0dnZ2e5ubnh4eHj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pi4uLh4eHg4ODg4ODg4ODh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7c3Nzc3Nzd3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7u7u7t7e3u7u7v7+/t7e3t7e3s7Ozs7Ozu7u7t7e3t7e3v7+/u7u7t7e3u7u7u7u7s7Ozx8fHt7e3v7+/i4uLc3Nzb29vX19fW1tbZ2dne3t7k5OTu7u7v7+/t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozq6urq6urn5+fo6Ojp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6eno6Ojn5+fn5+fm5ubn5+fo6Ojm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXl5eXl5eXm5ubn5+fn5+fm5ubm5ubm5ubm5ubi4uLl5eXj4+Pk5OTm5uba2trU1NTT09PQ0NDNzc3Ozs7U1NTb29vg4ODj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLh4eHh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHu7u7t7e3t7e3t7e3u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7v7+/u7u7t7e3u7u7t7e3t7e3t7e3v7+/q6urq6urq6urr6+vr6+vq6urq6urq6urs7Ozt7e3r6+vt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vq6uro6Ojp6enr6+vr6+vq6urp6enp6eno6Ojp6enp6enp6enp6enp6enq6urq6urp6enp6enp6enp6eno6Ojn5+fm5ubm5ubn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fm5ubl5eXm5ubn5+fn5+fi4uLk5OTi4uLi4uLh4eHg4ODg4ODh4eHi4uLg4ODh4eHj4+Pl5eXl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTl5eXk5OTj4+Pi4uLi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3c3Nzd3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHu7u7t7e3t7e3u7u7u7u7u7u7v7+/u7u7v7+/u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7v7+/u7u7r6+vw8PDt7e3u7u7t7e3u7u7v7+/v7+/t7e3s7Ozt7e3v7+/w8PDs7Ozt7e3u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6enn5+fp6enq6urq6urq6urp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubn5+fl5eXn5+fi4uLl5eXj4+Pl5eXj4+Pl5eXl5eXk5OTl5eXk5OTk5OTl5eXl5eXj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7t7e3v7+/u7u7u7u7u7u7u7u7u7u7s7Ozw8PDw8PDs7Ozt7e3u7u7v7+/u7u7t7e3u7u7v7+/v7+/u7u7t7e3s7Ozv7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6uro6Ojp6enn5+fo6Ojo6Ojp6enq6urq6urp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojp6enp6eno6Ojo6Ojm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubm5ubm5ubk5OTk5OTl5eXk5OTk5OTj4+Pk5OTk5OTj4+Pj4+Pk5OTn5+fj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7d3d3d3d3c3Nzx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7s7Ozu7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vq6urq6uro6Ojo6Ojo6Ojp6enq6urq6urq6urp6eno6Ojp6enp6enp6enp6enp6enp6eno6Ojp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXl5eXk5OTl5eXj4+Pl5eXj4+Pk5OTk5OTl5eXl5eXk5OTk5OTk5OTk5OTj4+Pk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLh4eHg4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3c3Nzx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3w8PDx8fHu7u7u7u7t7e3t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozr6+vs7Ozr6+vs7Ozs7Ozr6+vr6+vr6+vs7Ozt7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vs7Ozq6uro6Ojo6Ojp6enp6eno6Ojq6urr6+vp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojp6enp6enp6eno6Ojo6Ojo6Ojo6Ojp6enn5+fn5+fn5+fn5+fm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fm5ubl5eXj4+Pj4+Pj4+Pk5OTk5OTk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLh4eHh4eHi4uLj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHj4+Pi4uLg4ODg4ODe3t7e3t7f39/f39/g4ODf39/f39/f39/f39/f39/f39/f39/e3t7g4ODf39/e3t7f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/u7u7t7e3v7+/v7+/v7+/v7+/v7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vr6+vt7e3s7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6eno6Ojo6Ojp6enp6eno6Ojq6urr6+vr6+vq6urq6urr6+vr6+vr6+vq6urq6urp6enp6enp6enp6eno6Ojo6Ojo6Ojp6eno6Ojn5+fo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fm5ubl5eXl5eXl5eXk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLh4eHf39/f39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7g4ODf39/e3t7f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3v7+/v7+/v7+/v7+/v7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vs7Ozt7e3t7e3t7e3t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6uro6Ojo6Ojp6enp6enp6enp6enp6enq6urr6+vs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubk5OTk5OTk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLf39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/g4ODf39/e3t7f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3v7+/v7+/w8PDw8PDw8PDw8PDw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozu7u7t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urr6+vr6+vr6+vr6+vq6urp6enp6enp6enr6+vs7Ozr6+vr6+vr6+vr6+vq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6eno6Ojp6enp6enp6enp6eno6Ojo6Ojo6Ojm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fl5eXk5OTj4+Pj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHg4ODe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7g4ODf39/e3t7f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/t7e3t7e3w8PDw8PDx8fHx8fHx8fHx8fHx8fHw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7t7e3t7e3u7u7t7e3u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vs7Ozs7Ozr6+vr6+vr6+vq6urp6eno6Ojo6Ojq6urr6+vs7Ozs7Ozs7Ozq6urq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6eno6Ojp6enq6urp6enp6enp6eno6Ojo6Ojm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fm5ubj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7f39/f39/e3t7f39/f39/f39/f39/f39/f39/e3t7e3t7d3d3d3d3d3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3w8PDw8PDw8PDx8fHx8fHw8PDw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enn5+fr6+vs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urq6urp6enp6eno6Ojp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTl5eXm5ubl5eXm5ubj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHi4uLi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODg4ODe3t7e3t7f39/f39/g4ODh4eHh4eHf39/e3t7f39/f39/f39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3c3Nzd3d3d3d3x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDv7+/u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/w8PDx8fHx8fHw8PDw8PDu7u7t7e3u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urp6ens7Ozs7Ozr6+vr6+vs7Ozs7Ozr6+vr6+vr6+vq6urp6enp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fo6Ojn5+fn5+fn5+fn5+fn5+fm5ubk5OTj4+Pl5eXm5ubl5eXl5eXj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLh4eHh4eHi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/f39/f39/g4ODh4eHh4eHh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7d3d3d3d3c3Nzc3Nzc3Nzx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHw8PDu7u7v7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/v7+/u7u7t7e3t7e3u7u7u7u7v7+/w8PDx8fHx8fHx8fHw8PDv7+/u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozt7e3u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozr6+vq6urs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6enp6eno6Ojq6urp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojm5ubm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fm5ubk5OTj4+Pl5eXm5ubk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHh4eHh4eHi4uLi4uLi4uLh4eHg4ODf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/d3d3d3d3d3d3e3t7e3t7e3t7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHy8vLw8PDu7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7w8PDv7+/u7u7t7e3t7e3u7u7t7e3u7u7v7+/w8PDx8fHx8fHx8fHv7+/u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozt7e3u7u7t7e3r6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vr6+vs7Ozt7e3r6+vq6urp6enp6eno6Ojq6urq6urp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojm5ubm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTm5ubn5+fk5OTj4+Pl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/d3d3d3d3e3t7f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7w8PDw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7v7+/u7u7u7u7u7u7v7+/w8PDw8PDx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozt7e3t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vp6enp6enp6enp6enq6urr6+vr6+vq6urp6enp6eno6Ojq6urq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fm5ubm5ubm5ubn5+fm5ubk5OTj4+Pm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pj4+Pi4uLh4eHj4+Pi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7f39/f39/f39/e3t7x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3t7e3v7+/w8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7t7e3u7u7v7+/w8PDx8fHw8PDv7+/u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojo6Ojp6enq6urr6+vr6+vq6urp6enq6uro6Ojq6urq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojo6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubm5ubm5ubm5ubj4+Pj4+Pm5ubl5eXk5OTj4+Pk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHj4+Pj4+Ph4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHe3t7e3t7f39/f39/f39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/e3t7e3t7e3t7f39/g4ODx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDt7e3t7e3v7+/v7+/u7u7t7e3u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3v7+/w8PDw8PDu7u7t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozt7e3u7u7t7e3s7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojp6enq6urq6urr6+vs7Ozs7Ozs7Ozq6uro6Ojp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fm5ubm5ubk5OTk5OTl5eXm5ubm5ubm5ubi4uLj4+Pk5OTk5OTk5OTk5OTk5OTl5eXj4+Pk5OTk5OTl5eXn5+fl5eXk5OTm5ubn5+fm5ubl5eXk5OTj4+Pk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pk5OTj4+Ph4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLi4uLh4eHg4ODf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDw8PDu7u7u7u7v7+/v7+/t7e3t7e3v7+/v7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3u7u7v7+/v7+/u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojp6enp6enp6enq6urs7Ozr6+vr6+vq6uro6Ojp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fm5ubm5ubk5OTl5eXl5eXk5OTl5eXl5eXj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTj4+Pk5OTl5eXk5OTl5eXj4+Pi4uLl5eXl5eXl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHg4ODg4ODg4ODe3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/v7+/u7u7t7e3u7u7w8PDw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7t7e3u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozs7Ozr6+vr6+vr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojo6Ojo6Ojo6Ojo6Ojr6+vp6enp6enp6enp6enp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fm5ubm5ubm5ubm5ubl5eXj4+Pj4+Pk5OTk5OTk5OTj4+Pk5OTk5OTk5OTk5OTj4+Pk5OTl5eXl5eXk5OTk5OTj4+Pj4+Pk5OTk5OTj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/e3t7e3t7e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHw8PDv7+/v7+/v7+/v7+/x8fHw8PDu7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozr6+vr6+vr6+vs7Ozs7Ozt7e3s7Ozs7Ozs7Ozr6+vr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojo6Ojo6Ojo6Ojo6Ojp6enp6eno6Ojp6enq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTj4+Pk5OTk5OTk5OTj4+Pj4+Pk5OTk5OTj4+Pk5OTl5eXk5OTl5eXk5OTk5OTk5OTk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Ph4eHh4eHi4uLj4+Pi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODf39/f39/f39/e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDx8fHx8fHw8PDx8fHx8fHw8PDx8fHv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozr6+vr6+vr6+vs7Ozt7e3t7e3t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6eno6Ojo6Ojp6enp6enp6eno6Ojp6eno6Ojq6urr6+vq6uro6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTk5OTm5ubk5OTj4+Pj4+Pk5OTk5OTj4+Pk5OTm5ubl5eXj4+Pk5OTl5eXl5eXk5OTm5ubl5eXl5eXl5eXk5OTj4+Pk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHg4ODg4ODg4ODf39/e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHy8vLx8fHx8fHx8fHw8PDx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3s7Ozt7e3t7e3u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vq6urq6urq6urq6urq6urq6uro6Ojp6eno6Ojq6urs7Ozq6urp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fl5eXl5eXl5eXl5eXj4+Pj4+Pl5eXk5OTj4+Pk5OTn5+fl5eXj4+Pk5OTk5OTk5OTk5OTl5eXm5ubl5eXl5eXk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pi4uLj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHg4ODe3t7e3t7g4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7r6+vr6+vs7Ozs7Ozs7Ozt7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozr6+vr6+vs7Ozr6+vp6eno6Ojo6Ojq6urr6+vs7Ozs7Ozp6eno6Ojo6Ojo6Ojp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubn5+fj4+Pk5OTn5+fl5eXj4+Pk5OTn5+fl5eXk5OTk5OTj4+Pj4+Pk5OTl5eXm5ubj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHh4eHe3t7e3t7g4ODh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozs7Ozt7e3t7e3t7e3t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6enr6+vq6urp6eno6Ojo6Ojp6enr6+vq6urs7Ozq6urq6urp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXl5eXm5ubm5ubj4+Pk5OTm5ubl5eXj4+Pk5OTl5eXk5OTj4+Pk5OTl5eXl5eXl5eXl5eXl5eXj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHh4eHg4ODg4ODh4eHh4eHe3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6enr6+vr6+vp6eno6Ojp6enp6enp6enq6urs7Ozr6+vr6+vq6uro6Ojp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTj4+Pm5ubl5eXj4+Pk5OTm5ubl5eXk5OTk5OTk5OTk5OTj4+Pl5eXm5ubm5ubl5eXk5OTj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHe3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozq6urq6urs7Ozr6+vo6Ojp6enp6enp6enp6enp6ens7Ozr6+vr6+vq6uro6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXk5OTj4+Pn5+fm5ubl5eXl5eXn5+fm5ubl5eXl5eXj4+Pk5OTk5OTl5eXm5ubl5eXk5OTk5OTk5OTj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLh4eHg4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDu7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vs7Ozr6+vq6urs7Ozr6+vo6Ojp6enp6eno6Ojo6Ojp6enr6+vq6urq6urp6eno6Ojp6enp6enp6enp6enp6enp6enp6enp6enp6eno6Ojo6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubl5eXk5OTm5ubn5+fn5+fn5+fn5+fm5ubm5ubl5eXj4+Pk5OTk5OTl5eXm5ubk5OTj4+Pj4+Pk5OTj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Pi4uLg4ODh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vo6Ojo6Ojo6Ojp6enp6enp6enr6+vq6urp6enp6enp6enp6enp6enp6enp6enp6eno6Ojp6eno6Ojo6Ojn5+fn5+fm5ubn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXj4+Pk5OTk5OTk5OTj4+Pl5eXn5+fm5ubm5ubm5ubl5eXj4+Pj4+Pj4+Pl5eXm5ubm5ubm5ubj4+Pk5OTl5eXl5eXk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLh4eHi4uLi4uLg4ODh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vp6enp6enp6enp6enp6enp6enq6urp6eno6Ojo6Ojp6eno6Ojo6Ojp6enp6enp6enp6enp6enp6eno6Ojn5+fm5ubm5ubn5+fn5+fn5+fn5+fn5+fm5ubm5ubk5OTj4+Pk5OTk5OTk5OTj4+Pl5eXm5ubl5eXl5eXl5eXl5eXk5OTj4+Pj4+Pl5eXl5eXm5ubm5ubk5OTk5OTl5eXk5OTk5OTk5OTk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Ph4eHi4uLh4eHg4ODg4ODf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7s7Ozt7e3r6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vq6urp6enp6enp6enr6+vq6urq6urq6urq6urp6eno6Ojp6enp6enp6enq6urp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXm5ubl5eXk5OTj4+Pm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTl5eXl5eXk5OTk5OTk5OTl5eXk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLh4eHh4eHi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Ph4eHi4uLh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/v7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3s7Ozr6+vt7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3r6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6enp6enr6+vr6+vr6+vs7Ozs7Ozq6urp6eno6Ojp6enp6enq6urp6enp6enp6enp6eno6Ojo6Ojn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubl5eXn5+fm5ubk5OTk5OTm5ubl5eXj4+Pj4+Pk5OTk5OTk5OTk5OTl5eXl5eXk5OTj4+Pj4+Pl5eXm5ubk5OTj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Pi4uLi4uLh4eHe3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHw8PDv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7v7+/u7u7u7u7u7u7t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozr6+vs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vq6urp6eno6Ojp6enq6urr6+vr6+vr6+vr6+vp6enp6eno6Ojp6enq6urp6enp6enp6enp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fm5ubm5ubk5OTj4+Pl5eXm5ubj4+Pl5eXn5+fl5eXj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pm5ubm5ubl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Ph4eHi4uLh4eHf39/e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/x8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHv7+/u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7t7e3r6+vs7Ozr6+vt7e3s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozr6+vr6+vr6+vq6urp6enp6eno6Ojq6urr6+vs7Ozs7Ozs7Ozq6urp6eno6Ojp6enp6eno6Ojo6Ojo6Ojp6enp6eno6Ojn5+fn5+fn5+fn5+fn5+fn5+fm5ubk5OTj4+Pm5ubn5+fj4+Pl5eXo6Ojm5ubj4+Pk5OTl5eXk5OTk5OTk5OTk5OTj4+Pl5eXk5OTk5OTm5ubm5ubm5ubl5eXk5OTj4+Pk5OTl5eXk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTj4+Pj4+Pi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLj4+Ph4eHi4uLh4eHf39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f39/f398AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Cafoutch (définition selon Erichk, évidemment): joyeux petit bazar qui s'auto-organise au fil du temps en fonction des besoins. Bien noter le caractère anarchique positif et ne pas oublier de penser à retourner gamberger sur “la cathédrale ou le bazar”…
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
[[E-Sidoc|https://0333093h.esidoc.fr]], c'est le portail documentaire du CDI, on y trouve des milliards d'informations1) et de liens
L'E.N.T. est l'Espace Numérique de Travail des collèges de l'académie. Il est également dénommé OSé (Offre de Services de l'Education), anciennement ARGOS.
Cet espace propose des outils de production et de partage au travers d’un accès sécurisé aux ressources numériques pédagogiques. Cette offre de service permet ainsi aux enseignants d’apprendre aux élèves à produire, à créer, à innover dans un environnement numérique adapté et sécurisé.
Découvrez tout cela sur [[le site dédié à OSé de la DANE|https://dane.ac-bordeaux.fr/ose/]]
Concrètement, une fois entré dans cet espace de travail, un clic suffit pour se connecter
* sans avoir à se ré-identifier, à:
** [[pronote]]
** [[Moodle]]
** [[PIX]]
** [[E-Sidoc]]
* via une identification propriétaire, à:
**[[Pearltrees]]
**[[GPO]] : Guide Pour l'Orientation, accessible depuis l'enceinte du collège sans identification, accessible avec identification depuis l'extérieur
! EDUCONNECT, c'est quoi ?
Brièvement, EduConnect permet la connexion à l'[[E.N.T.|E.N.T.]], donc directement ensuite (entre autres) à [[pronote|pronote]], à [[Moodle|Moodle]] et à [[PIX|PIX]] et [[E-Sidoc|E-Sidoc]] ''sans autre forme d'identification !''
Plus en détails maintenant:
Un compte unique tout au long de la scolarité
EduConnect fournit un compte unique pour les parents et les élèves pour tous les services numériques de l’école ou de l’établissement, même en cas de changement d’école ou établissement, de degré, d’académie.
*Les parents peuvent utiliser un autre compte d’un public (Impots.gouv.fr, Ameli.fr, MobileConnect et moi, MSA, IN La Poste).
*Le compte EduConnect est unique même si le parent a des enfants dans plusieurs académies.
! EDUCONNECT pour qui et pourquoi ?
EduConnect, dans son périmètre actuel, authentifie les élèves immatriculés et leurs représentants légaux, tout au long de la scolarité de l’élève.
Un compte unique pour chaque élève et chaque responsable :
* pour accéder aux services numériques des écoles et des établissements scolaires (consultation des livrets scolaires, ENT)
* pour réaliser des démarches en ligne liées à la scolarité (demandes de bourses, mise à jour des fiches de renseignements, paiement des factures, orientation et affectation, téléinscription, etc.).
! Parents
*Comment activer son compte ?
**[[Via son compte France connect|https://dane.ac-bordeaux.fr/educonnect/france-connect/]]
**[[Via son numéro de téléphone portable|https://dane.ac-bordeaux.fr/educonnect/via-son-numero-de-telephone-portable/]]
**[[Via les identifiants fournis par l’établissement|https://dane.ac-bordeaux.fr/educonnect/via-les-identifiants-fournis-par-letablissement/]]
*Comment gérer son compte ?
**[[Comment modifier son numéro de téléphone ?|https://dane.ac-bordeaux.fr/educonnect/comment-modifier-son-numero-de-telephone/]]
**[[Modifier son adresse mail|https://dane.ac-bordeaux.fr/educonnect/modifier-son-adresse-mail/]]
**[[Modifier son mot de passe|https://dane.ac-bordeaux.fr/educonnect/rattacher-un-enfant-2/]]
**[[Rattacher un enfant|https://dane.ac-bordeaux.fr/educonnect/rattacher-un-enfant/]]
*Comment s'autodépanner ?
**[[Comment retrouver son mot de passe Educonnect ?|https://dane.ac-bordeaux.fr/educonnect/comment-retrouver-son-mot-de-passe-educonnect/]]
**[[Comment retrouver son identifiant Educonnect ?|https://dane.ac-bordeaux.fr/educonnect/comment-retrouver-son-identifiant-educonnect/]]
*Comment se connecter à l'ENT ?
**[[Se connecter à l’ENT via Educonnect|https://dane.ac-bordeaux.fr/educonnect/se-connecter-a-lent-via-educonnect/]]
! Eleves
*Comment activer son compte ?
**[[Via les identifiants communiqués par l’établissement|https://dane.ac-bordeaux.fr/educonnect/actifidentifiant/]]
*Comment gérer son compte ?
**[[Comment modifier son adresse mail ?|https://dane.ac-bordeaux.fr/educonnect/modif-maileleve/]]
**[[Comment modifier son mot de passe ?|https://dane.ac-bordeaux.fr/educonnect/modifier-son-mot-de-passe/]]
*Comment s'autodépanner ?
**[[Comment retrouver son identifiant Educonnect ?|https://dane.ac-bordeaux.fr/educonnect/comment-retrouver-son-identifiant-educonnect-2/]]
**[[Comment retrouver son mot de passe Educonnect ?|https://dane.ac-bordeaux.fr/educonnect/comment-retrouver-son-mot-de-passe-educonnect-2/]]
! Etablissements
*[[Comprendre les différents parcours d’activation du compte Educonnect|https://dane.ac-bordeaux.fr/educonnect/parcoursactivation/]]
*[[D’où proviennent les données ?|https://dane.ac-bordeaux.fr/educonnect/dou-proviennent-les-donnees/]]
*[[omment administrer les comptes Educonnect ?|https://dane.ac-bordeaux.fr/educonnect/admineduconnect/]]
Toutes ces informations (et plus encore) sont disponibles sur [[le site de la DANE|https://dane.ac-bordeaux.fr/educonnect/]]
AAABAAEAAAAAAAEAGAAIIQMAFgAAACgAAAAAAQAAAAIAAAEAGAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//79//7+/////////v///////////v/+///9///+///+///////////////////////////+///+///+/////v///v///v///v/////////9///9///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///+///////////////9//38//79///9//39//z9//7+///9//79//79//79//79//79//79//7+//7+//7+///+///+///9///9///+///+//////7////+/v///v///v////////////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/v/8/v/+/v///v///v///v///////v///v////7///z///7//////v7///7//v/////9///9///+//////////7///7///7//v///////////v///v///////v///P///f///v/////+//7+//7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9//78//78//77//78//79//7+/v///f/+/v///v7//v/+/v/8/v7+/v///f///v/+/v/+/f///f///f/+/v/9///9/v/+/v///f///f///v///v/+/v79/v79//38//38//39//3//////v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///37//v6//v5/vz6/v77/vv7/fz9/f7//P7//P7+9f305vHl1eHcxtbRusrStsjLqb3Kp7zKqbzOsMLQusrWwdDhztvu3en77/f/+f3//P7+/f39/vz7/vv8/fv7/vv7//v8//z+/f7//f///v7+/v7+/v7////////////+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/v38//39/f3++v799P3v3uvixdm9mbWpfJ6SXIN4PGx8NnF+L3J+Km9/J219JW16JG16JW15JWx6Jm15JWp6Jmp+Km2AMm58O2iGS3Seao2xiaXRscfo0uT46fb/9//++v7+/v78/Pz9/f3+/v7+/v7+/v79/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7////////////+///7///9/////f///f///v/8//36/v79+v788Pvgw9S4jKaSXoN/PG95LGp5JnF9JHt/H4KBHIuAG5d/HaCAG6KDHaWFH6qDIKuAH6t/H6yCH6yEHqqFHaeFG6OIHZ2GHoqBHIJ9H3t9JXV5J2x5LGiGR3ejcJPJor3x3e79+P39/vz9//39/v7+/P///P7//P7+/P79/f3+/f3+/v7//v/+/v/+/v/+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7///7+//7+/////v/9/P3+/fv9/Pz9+v799v716vLVu8mldpZ/OG18J2Z7I294IH98IZR9Hp6BIKyDH7qEHMeDGdCBGNZ/F9mAFtqAFtyAFd6AFN9+FN58Fd19FN5/FN2BFduCFtiEF9eGGNWGGdKFG8qFHb2CGq2AGqF6GJB7H3l7JWt2K2WMVX+6la7p0uT+8v7++/7//fv+/f39+////P7+/f78/v/8/v/+/v/+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v////////7+//z9//37//38/f3+/fz9+Prm0t6zgaOJPnGAK2eBJXaEH4uDHJ19Ga57GsJ9GdB9FtV9Fdh9FNt9Et99EuJ+EuN9EuR+EuR+EuV9EeV9EeZ9EuV9EuR9EuV9EuR+EuN/E+J/EuJ/EuR+EuR+EuKAFN+BFduBFtd+GNB+GryDIK1/HJd+H4R8JHOBNW+XXojJqr/27PH9+/v5/f37/P78/f/9/v7+/v3+//3//v3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////+///+///+///+///+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9//79/vz+//z+/v37/f759/zVvs+ZZop9LmiDI3SGH4R+HaB+Hbh+Gcp8FdZ7Ed56D+V6EOV5EeN5EeN7E+R7E+N7E+N7E+J7FOF7FOF7FOB7FOF7FOB8FOF9FOF8FOF8FOF7FOF7FOF7FOF8FeB8E+J7E+J7E+N7E+F8FeB+Fdx+Ft18Fd5+GNmAHsh9ILB9IZF2Inl2KWeFRm+4kav05fH9+v/+/P7//v3+/vv+//38/v79/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////9///9///9///9///9///9///////////+/v7+/v7+/v7+/v7+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38/fv2/fv6+v398fzXts6WWYF6K2h/IXaBHYyBHq57Gsp7Ftl7FN94E+J3EeN5EeF8E997E+B5EuJ7EeN8EuN8EuR8EuR8EuV7E+R7E+R7E+R7E+R7E+N7E+N7E+N7E+N7E+N7E+N6E+R7E+R9E+J9E+N9E+J8E+J6FOB7FOGAEeR+EuN6E+F6E+B8E99/FN6CF9KBIb16H5t8IoN6JW9/Nmq2hqXx3O3++f76/f77/P3++v7//v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////9///9///9///9///9///9///////////+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/f3++/389PzlyeCbY49+Lmt5I3V8HpWCG7yCGtJ+F9l7FN99EuN+EuF9E+B7E+B7E956Fdx7Fdx8FN18E958FN97FOF7FOF7FOB6FN97FOF7FOF7FOF7FOF7E+N7EeZ7EuR7E+N7E+R7EuV8EuV7EuV8EuV9EuR8EuN6E+N6E+J8EuJ9EeN+EeN/EeGCEeKDEOSAEON8FNx8GNeBGMiCGah9G4R8I22CPHS/l7f46vf/+P7++v7//v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////////////////v///v///v7///7+//79//7+///////////////////+//7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v3///3+//79///+/v///v/////////////+//7//////v/9/v/9//3+//z+//39///9///////////+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+///+//7+//3+//3+//77/P/15POxf6B+MWh+JHZ+H416HLR8Gs55FNp5FN15FN57E+N6E+R6FOF7E958E996EuN5EeV7EeR8EeN7EeJ8EuN6E+J6FeB7FN98E+B7E+J7E+R7E+V7E+R7E+N7E+N7FON8FOF9FOB9FOB7FN95Ft16FeB7E+J6E+F6E+F6E+B4FN57EuF9EuF+EuB9EeJ9EeV+EOR9EeN9EOWAD+aCFd5/G8uFH6R+HYF/K2uMTXbTtsz59Pz+/f////79//3+//7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////////////v/++/37/P38/v79/fz9/vv8/vv+//7//v///v///v////7+//3////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//f7///39//79///+/v////7+//7+/f/9/f/8/vr8/fn+/f77/f/9//z+//r//v3////+//3+//7+///+/v7+/v7+/v7//v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///7//7+//////37/vb8/fn99v3Ss8uGTHd6KW1+IIeAHK2CGM99Fd97FOB7Fd97Fd97FOF7E+N5FOJ7E+J8EuF+E999EuB7EeN7EeR8EeJ+EeN+EOZ9EOd7EuJ9E95/E91+FN1+FOB/E+KAE+CBFN6AFOCAEuN/E+J/FN9/FeB+FOF7EuF6EOZ5D+h5EON8EeB+Ed9+E95/EON/EOR/EeJ+EuF9EuF+EOR+EOR+EOR/EeV/EuR/E+KEF9eEHMF+HJl4IHZ0KmaqdqHx3vD9+fz7//r9//z//v/+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/f///v///v///v/////+/v78/fz8/f79+f778fj/+v7++/38/v/9///+//7//////////v/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v78/f/+/v///f///v////7///z7/f/8/f/9/P/+/P3++vz/+v78/vz6/v/6/f/7/v/+//////3+//79///+/v7+/v7+/v7//v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9//////7+/v39+/v46PSnfpl6LmV6I3d/H6B/Gsd8Fdx+E+R8EeZ7EuV7E+N7FOJ7FOF7FeB4FOJ4FOJ4FOB6E999EuF/D+V8EeV6FOF+FN6DFN2GFtqFF9GGGsWEHLeBHLCAHK6CGa6FGa6GGqyFGquEGq2CHKyCHq6DH7SEHr+FGM6FFtSDFNd/E9h8Edx9EOGED+SBEOR9EeJ7E+B7EuJ8D+Z+EeJ+EuB+Et9/E+J/EuN/EeZ/EeWBEuOIGNeJG7aAHY11IXKBRnXYvtP+9/3//f7//f79///9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/f7+/f/9/v/7///8///+/////v/89PzXu9CNVXd3PF+2j6n15fT9/P/+/v7///3+//v+//78///////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79//38//r+//3//v/+//79//76/v77/f7+/vz/9P7buOaQXKmnc7vs1PH/9//8/v36//77///+/v79///9///+/v7//v7//v7+/v7+/v7+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////vz6//r7/f7ky9+NT32ALGp8HZGEGruDE9p8EuN4E+J8E+J9EuV9EuV8EuV7E+R7E+N6E+J9EuN9E+J6EuF5E+J7E999FNp/Gs+AHcOAHLSCHKWCHpSAH4J+IXp8JHR5KGp4KmZ4K2h4KWh5Kmh4KWh4Kml4Kmd5KWh4Jm96I3d9HnuCH4eEHZSDHKV/GLiBGMyDFNt/E999E+B8EuCAEOSCDul+EOR+EeJ+E+B/E+F/E+N/EeV+EOh7EuN+FOGHE92OHMmFH5+AJnR3LWm1iq/57/j9//n+//r///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v7//fv+/v78/P3++/7++v7o1OGkcJF8NmODK2KHK2OALmGMTHXOrsL88vr7+/34/fz8/vz+/fz////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////+/v7+/v7///7//v3+/f/+//76/vj5/vr5/f79+P3r0+6pcrt+KqJ+Hqh+HqR/NaC4icf25fj79/r5/Pv5/fv7//79/v///f///f///f///v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz6+PzPs8SDPGV/IHR/HqFzGMx5Fdp/EeCAE+B9FOB+E+J9FOF9E+J8EuR6EeR6EuR4E+J4E+F5E999E95+EtODGsCCH6F+H4d+IHt6JHR0Jm16NnGFTXmeaZKxgqbAn7XNr8LavdHkyNviyNrkyNvfxNfRtcbHqby3kq2qeqCOWYF/QG99M2l7Jml/Ind/HYR+HJiBGbOAFsuBFtx+E+B9EeJ+D+R+EOR+EeN/EuN/E+J/E+GAFN98E+N5EuZ+EuSCFNyDGNWCHrSBH4Z+K2aba4n05/H9+/z//v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////+//7+/vz//f7/+f/04vCziaCBPmGFLV+BK2CEK2OJKmOKKmGIK2B9L1yWYoXfxdv99v///f///vz////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////////////v///f/+/f/9//79/Pr/9/724fi6iMaCNZ9+HaaEG6mEHaWCHaSAHaZ8IqWGQqfOqdz97v7++f77/f78/f///f///f///f/+/v/+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/f788/y/l7d8L2mCIHeEHah6FdRyFOB3E+B+EeJ/EOV+EuV/E+F/FOB+E+J9EuR7EuN4FN54Ftp6GNd9HcZ6G6Z7G459In17KWl6NWWaYIi8ka7ZvNPw3e7+9/7/+v///P7+/P38/f76/P37/f38/v37/f76/P78/P79/f79/P7++v/++//98vzl0d/OqsCpdZaJR3Z2K2Z1I295H4N9Hp1+G7iBGs1/GNh+FNx/EuN/EeV/EuN/E+GAEuN9E+J7E+N+EeZ/D+l8EOh7FeCGIsCGIo2DJ3GPUYDn0eP++/7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v79/v7+/v7+/v79/v7+/v7+/v7//v7////////+///+/f747fXGpLiCRWaEMluLL16HLV6FLV6HLl6ILV2GLF6CK1+EKmWBKWF8MF+pd5jw3+75+vz9/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v///v////////7///z+//r9//79/P766/vOoNWHPpp9IZqCHqCGHKWGG6WAG6Z8G6iAGqZ/Gqd6Gap5JKqTVbThv+r89P7++//+/f7+/v7+/v///v///v///v///////////////v/////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///+//7//vz78/uvgaB4LWN+HYR/Grx7Fth+E+KAEeaBD+l/EOZ8FOB8Fd9/EeV+EuV+EuR9E+J6E955GNJ5G8J/G6R8HIR6Jm5/N2udZIvJpLzz5e/7+Pz+/P3+/f7+/f78/v38//v8//v9//z9/v7//f///v////3///3//v/+/v/9//z7//z8//z7/v35/f34/v37/vz8+vv68vnky9yyh6KITHR1KGV7HXaCHY1/HbSCHcyAFtyAEOWAEeV+E+J9EuR9FOB+Fd6AEeKAEeV8E+J9E+N4Fd97GcuFGqCFI3OIQ23hydj++/38/v7+//3////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v79/v77//77/v7+/v7+/v78/v/+///+/v79/v39/v7+/P7++PzZwcqTYHWFOVuIMFqKMV2JMV2KMF2JL12ILV2GLV6FLF6ELGCFK2SIKGWJKWSALGJ/QGzAmLf77vn++P78/Pz6/vz9/v3//f7//v39/v77/v/7/f/8/v/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v7+/v79/v79/v38/vv9/Pv98/3ewOOWW6V7JJODG56DHaCDHaGCHaGAHaN/HKR+HKR/G6aBGqeBGamBGqp8HKd+Jqeud8by2PX99/z8/vv7/f3+/f7//f7//f7////+/v/+/v///v7///7////////////////////////////////////////////////////////////////////////////////////////////////8//76//73/v/7/vr78vaofZ99K2p5Ioh9Hr58FN58EuN9FOF/E+CAEuR/EeV+E+N+E+F9E+J8EeR7E+J7F9h6GsR6H6R7IYR7JmmGQHG1i6rn1OL99/z//f7+/f3+/v7+/v7+/v7+/v7+/v7+//7////////////////////////////////////+/v7+/v7+/v7+/v7+/v79/v7+/v7+/v7//v7//Pv//P727PTQtcuVXIZ/Lmh/I3Z+G46HHLmFFdaAE+N5EuN4EuJ7Fd9/FN+AEeV/EOh8E+N6EuV6EuV8FOKCF9OGH6eAInKJQW/kzN/5+/z7/fz//v/+//7////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v79/v79/v7//v7//f7//f7//v7+/v77///6/v79+/7m0dundoaAQFSFOleKNVmLNFuIM1uHMluKMl6KMF2HL12GLl6GLV6ELF6ELWGHKmKKKGaIJmeEKGeAKmWPSnvTscz68vv3/fz4/vz8/f3//f///P///f/+/f/9/v78//3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v3///v+//37//37/v39/P//+P/p0+2qdbOCKpCGHpmCHp18H5yDHaCDHaCCHaGBHaKAHaN/HKR+G6WBGqeCGqeBGqh+G6h8HKl6Hap/MqTAkdD56Pr+/P36/fv8/fz9/f3+///+//7///3///3///7///////////////////////////////////////////////////////////////////////////////////////////////////z8//r6/f/99P6od515KGF6G4l/F8J9E997EuF8EuN8E+N+FN9+EuR+EeZ9E+N9E+J9EuWAEd6CGNJ9HLB7H4Z3KGiERHO9mrX36fX9+f77+/38/f7+/f7+/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/f77/f37/f3++/7/9v/jyt6haJV8K2qBIHWBH5WAH8B9FN18E998E+J8EeV8EeZ9EuR+EuR/EOh9FOB6Ftx5E95+GM98IKp1I3WHQHLlx9379//9/vz///r//v/////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v7+/v7//f7+/v78/v78/v79/v7//v7+/f7z6u62k6CIR1uPPFWQOliOOVqMN1qMOFuHNViINFmLM12JMl2IMV2IL1+HLl+HLl+FLV6GLGKIKWWKKGeMJ2iLJmeEKWd/MGSgZYzlyt789/34/f77/v79/v7//v3//v3+/v39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v37/v78/v/9//z+/Pr15fe8jsaCOZJ9J4+DH5iGHJ6EHKCCHKCDHaCCHqCCHaGBHaGAHaOAHaN/HaOAHKSBG6aAGqd+G6l9GqiBGayAF695G6iOSrDVtOD88vz+/P3+/P/8/P/7//79//v//f///f/////////////////////////////////////////////////////////////////////////////////////////////////+//78//n9+Pqziah5K2qFHo2FF8qAFNx6EuF7EeR9D+d8EeZ9EOh9EuN9FOB9FOF+FOB+Ftt/HL6CHpSEJXGGOW66jq/z4/D9+/35/v32/fv3//35/v39/P7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v77/f77/v37/vz6/vv6/vz5/fz88/rbvtmVXIiAMGSBInqFHaiDGc9/FN17E+R6FOF8E+J/D+iAD+h+FN97Ftx4E+N5E+R8Gdl6G6mAI3SNQnLr0ub6+/v9//v///7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//f7//v/6/v72/v76/v38/Pz++fvMr7WOWGSIQFOWPVaVOlePOliNOViLOVmLOVqMN1mLNVmJNFuJM1yJMl6JMV+JL1+JLV+IK1+HLGCGLGGGK2KILGGILGGHLGGKKWWJKGeDNWmpfJvy4e78+/38+/v9/fv9/vv//v3//f/+/v7+/v7////+/v7+/v7+/v7////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v78/v76+/79+vz/8v7Ur9iLSJd9J5CGIJeDIZeBIZiBIJmCHpyEHZ6DH6CCHqCCHqCCHaGBHaKBHaOAHaOAHaOAHKSAG6V/G6d/GqeBG6yDHaiDHap9G656KaagZ7fpy+//9P/9/Pz5/fj6/vz8/vv///7////////////////////////////////////////////////////////////////////////////////////////////+/v/7/P78+fvAnbSAMmSAIYSCHcSAEuB8Fdx6EuJ8Duh+EeR8EuV7EOh9E+J+FN6BFOCBGs56Hql8Inp4JWWhZI7q0OP/+f75+/38/f/8/v/7/v76//38/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v7+/v3//v3+/v79/v78/v76/v38+//98vvHo7aCP2p5I256G5iDHcCCF9x9EuJ8EeJ+EeN+EuN9E+J8EuB8E+B9EeJ9D+d/F9Z+HZ6FJ3GOTnbs3u34/P3+/v3////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v7//v/7///6/f3/+vzhyM6ZaXGHQk2OP02RPlGRPFOPPFSMO1SLOlWLOVaNOViNOFqMN1qKNVqKNFyKM12LMl+KMGCJLmCIK1+JLF+ILF+HLV+GLV+GLV+JLGCKKmSIKGiDKGZ+LGKEPGm9mLP45/b/+v79/f38/fz//v7+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////f//9f7myembXap9I5SBHpODIZCEIJeEIJiEIJmCH5iBIJmBIJqDH5+CHqCCHqCBHaCBHKGBHKJ/G6R/HKN/HKKAHKSAG6WAG6d/G6qAHaaEIKSEH6eAHKp8G6l6KaK3hMn04/T/+/n8/fv8/v3+//7////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/f799v7SrM17L2uCIn2BGbh4Fdt9E957EuJ6D+l9D+Z+E+B7E+N7E+N/FOOCFtyCGsV+Ipp2KG2EP2zIor768Pv5+vz6/Pz6/vr+/v3//f///f/+/f/+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v3+/v7+/v7//f///f///f79/vr//f7//f39/Prt3emWZY93KWp8IYSAGbKEFtV/E+B7E956FOF8E+J9EuF/Et9+Et9+EOR+FeF/GdN+G5x+J3KRXIn46/f++/7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v7+/v7//f79/Pzv5OaxiZCPS1aTQk+VQE6TQU+OQlGJPlGKPVKNPFKPOlOPOVSNOViLOFqKN1mJNViINFmHM1yIMl6IL1+ILl+JL2CLLmCLLWCKK2GIK2KHK2OGKmWGK2OHK2KHKmGHKWWFJ2d5KWKKT3vStM388/z9/f79/vz+/v7+/v7+//////7////+///////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v78/v3+/f7++v7y4fOxgbp/NZF+IZCFII6GH4+FHpWEHpeDH5eCIJaBH5eDHpuDHp2CIJ+CHqCCHqCBHZ+BHZ6BHZ+AG6N/G6N/HKGAHaOAHKSBHKWBHaWBHKiCG6uDHKyDHamDH6eDHap8H6eFQKvLpd367Pv++/7///7+//7+///////////////////////+///+//////////7////////////////////////////////////////////+/v7+/Pzq1OeENXqEIXuFH7B7E9t7EuJ9EOR7D+h8EeR/EuB/EeN7EuZ7EeaAE+KAGMN7II53KWeSU3njzeH++f79/fv6/fv7//7+/f3+/vz+//z+/v7+/v/9/v77/v79/v/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v7+/v78//77//79//3+//39/P77/v77/v7+/P7/+v768vjDjrCBNGp9IX+CG6uBFtN6EuJ5EuV9FOF+E99+EeJ7EeR5E+B6Fd19EOZ9FtJ8IJB7J2uqe5/99/3///7///7+/////////////////////////////////////////////////////////////////////////////////////////////v7+/v7+/v79/v7//f/+/f/9/v///f/+/f78/v77/f39/Pz58vTBo6aPV1yTRk+YQ0+XQ0+WQlCUQVCTQFGSP1KQPlKPPFOSOlSPOlaKOleMOFiRNlmOOVqBQV65jqa8jamDPmSIMV+OLmCPL2GKLV+ELV+DK2CGK2CHLGGHLGGIK2KGKWKEKWSDKWaBJ2KDKmd7KmafZZLjyd/9+f39+/78/v75/vz9/v39/v37///+/////v///f///f/+/v79//39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/f79/P38/vr8/fz67PvHnsmFPIl+IYaCIY2CH46EH4+DHpCDHpKDHpeDHpWDHpSEH5WFIJeFIJqDIJuCHaCAHp58JpKpX7iWTqZ/Ipp+H5uAHp6AHKOAG6aAG6eAHKeBHaaCHaiCHauBHat/H6iAHa2CG66AGax8IaeXVbLgvuf+9/37/Pv6/fz+/v7//f7+//7+//3+/v78/v/8/v/+//7///3///3////////////////////////+/v/8/////v39/fz8+vz46faYWYl/IHyBFqh6F9R0Ftx8EeN8EeN7E+B9EOR/D+R/E+B9EuN7FOF8G8B7IIp9LGikb5D16vT7/P////v7/vz+/P/8/vz5/fz+/f39//j8/v3++//+/vr6/vz7/f79/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v39/v38/vz6//v+/f3///v+/v79/v79//v6/fz7/v79/v7+//7+//7+/v/++/7Tt8yCPG+AJHmBHKJ/GNF7Eud9EuV9EeF9E958EeN7EeR6EeN8EeSAE+GEHMV5IIh2KmfRrcb/+/v8/vr5/v3+//v//v38/v/+/v7//////////////////////////////////////////////////////////////////////////v7+/v7+/v7+/v7+//3+//z//v3+/f38/f74/f38+PjYv8GeZWuXSFGZRk+TRk6WR1CZRVCXQ0+WQU+VQVGVQFKWPlORPFOJPVKLO1OQOlSPO1WIPlalc4Xo1d/8+P39+P7w2umseJODOmOFMV+HL2GGLWCFLF2HLVyKK2GIK2KGK2KEKmOEKmOEKWOAKmKCKGSCJ2d+LWh6OGqvgqfv4Oz9+f77+v79/P///v7+//z+//7+//79/v7+/v7+/v7+//3+/v7+/v7+/v7+/v7+/v7+/v79//z+//3//f///P/+/f/6//v4//f6/vb99Pzcvd+VWJx7JYCEIYmCIYqDIIuDII6DH4+DH5CEH5CGHZODHZWAHZeBHpeHH5WLIJSMIJqDI5iSTKHXuNr98Pz46Pu6i8h+NpeAIJ6GHaODHKGBHKOAHaV/HaeAHKuBG66EG62GHaqCG66BHKyDHayBGq9+Ha1+Jqexc8Tv1PL9+fz8/vv+/f7+/f///v3///v///v///v///3+/v/+/f/////////////////////////9//75/////v78/P7+9v6yhKR5KWx9GJmFFtJ8Ed95EeR6E996EeR+D+V+EON6E+B9FN+FFN6HHLt8HYp0Kmqrf6H88vr8+/38/f////v7/v3+/P/8/fz8+vz++f/7/vz7//z9/v////39//39//7+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz+/vz9//z7//z+/v7//v78//37//78/f/8+/76/f76/v/9//7///7////+/f39+f/jyN6JR3d+I3t9G5+EF9J/FOB6E999EuJ+Fdp6FN57EeN9E+B/FN+CF9mBHbN3Ind+Pmrp1OT8/P39/P7+//r9//r+/f7+/v7////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v78/v7+/v78/v74/vz9/fvv3N2vfoCRTlKZSU+fRk2dREuYRkyXRU2YRU6ZQ06YQk+XQU+WQVCVQFKSP1ORPVGRO0+NP1KPWGfSuMP79vj//f39/Pr9/fz6+/z6+f3bw9WUW32ENGGILmGHLV6GLlyNLGGJLGKELGSDK2OFK2OGKWF/KGGBJ2OHKGaEJ2eAJ2h7KGiFQnHHob788vv9/vz+/vz//v/+//79//78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v3+//3+/v39/v39//38/v38+vzt2OymcKeALYWDIoqJIYmKIoeFIouEIIuEH46FH4+FH4+FH4+HH46GHpGFHpSFHpWGH5WEIpGBOpDInM356/j+/Pf+/fn8+/3++Pzp0O2jZ7R8JZuAHKOCHaKCHaKCHqWAH6eAHqaDHqWHHqiGG7CDHayBHqiCHayEGrGFGLKCG6qHN6bCltH77Pv//fz+/v39/f/+/f///v7//v7//v/9/v/9/v/////////////////////////+///7///+//79/P7dv9d9LmZ+HYGCGcN/EeV/D+V+Dud5FN95EuOADud+EeJ2E999F9uIGsCDHYN8LG61jaj99Pr8/P79/fz9/f7///z7/v7+/P/8/v3f1N3Epr/Fq7/Erb7Eq7/GqsDFq7/FqsDFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcHFqcDFrL7Fqr/FqMHErL7FrL7Gqr/Cq7zx6fD8/v7+//7//////v/+//35/v78+/7p0OKDQnF7JHOEHKKDGdF5FN99EeOAEt96FN18E99+E998Fd99FOGDF9V7HJt9Im6ZYIj+9v3//P/+//r9//v+/v7+/v7////////////////////////////////////////////////////////////////////////////+/v7+/v7//v77/P74/P37/Pz16+rAl5SSU1CZTEucSUuaSUuZSUuYSEuZR0uYRkuYRUyaRU2ZRE6WQk6SQU6RQVCUQFGTP1CRTVu9nKT58PT++/3+/f3+//77//77//39//39//79/P3/8fzPqMKITHJ/MV2JMF2KLl6ILWCELGGDLGKGLGKHK2GDJ2ODKGSFKWSDKGSBJ2aAJ2eFJml9LGSOVnvavtD/+P74+/76/Pz+/f38/vz8/v79/v7//v7//v7+/v7+/v7////////+/v7+/P7//f75//r4/vn8+v3z4fO7jLx+L4CDJX2JIoCIIoeEIYuEIYuFIomFIYuFH46EHo6FH4+FII+DH46HHJOJHZSBH4qCNYi0gbny5vP9+v/6/P77/f/+/f///f79/f79/v3++P3avOGVVqp6Ipp/HKKEIKmBIKWAIqGBIaSCHayFG66EHK2BHKt+HKx/HK2BHKuDG69/Gq56HqSORarWreD+8/76/fz6/vz6/fr+/f7//P/+/v3///z////////////////////9///9/f///f/6/v356/SQUHqCI3eJHrJ+FNl6EuF/EOOAEeJ5EuN5EuJ+EeF+Ed98Ett9GcF5HYd9LGq0iKv++P7+/v3//f/+//z//v7+//z8//7//v/8/v62mq18Kl+CJ218I3J7InN/IXV/IXR+I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9I3J9InN9I3J/IXR9H3h6InF/I3ODKWdyMVfmzd3//v////7//v/8///9//7+//39//78+v/o0eWFRnN6JXN7Hp5+FtN+D+R/Duh7E+J9FN5/EuR7FOF7Fd+AFN6FHMyCG5R9KGjIprz/+f7//f39/fz7/v7+/v7//////////////////////////////////////////////////////////////////////////////v7//v7//////fv69fHRurWdYF2hUEyXT0eWTkebTEecSkicSkqbSkyZSU2YR0uZRkubRk2ZRU6URE2NQk2KQk2JR1KvgIns2t77+/z8/f3+/f7//v/////9///+//////////7//vz9/P37+f3z5PG3jqWCP16CM1qFMl2FLl+FLGGGLWGFLWCGKWOFKWSDKmSAKWOAKWOAKWOEKGaEJWaHKWqDMWmicpbo2ej++f7/+/79/P39/v/9///////////////////////////+/v7//f//+/7++f767PrRq8+HRoR8J3eFIn6MIoOKIoaEIoiBIomCIomFIomFIYuEH4yEHo2FH46DH46BHo5/H458KYqfZKbmzeb++Pr+/fz8/P77/f77//z8/v39/P/+/f/7/v/6//79/Pz66/rNpdaIRp93Jph/IqOCIKaCHqd/G66CHKuDHKqBGq1/Ga5+Gq59Gq5+Ga+AGq6BG6uDHq19JKOeYrblyOz+9f3+/vv+/vv9/P7//v7///3////////////////////9///9/v//+//9/P/BmbJ+JGyCHpmCGdF7E996EuF+EeN+E997EeR8EuF7Et6AE9qFGMR8HZJyLGenfKD88fr6/f79/f///v7+/v7//f79//39/////v78/v27l7B/JWeEH5GCHLB+HLGBHLGBG7KAHLOAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7OAG7SAHLGBHLJ/G7OAHbGEG6+EJX9+LWDqy9///v7+/////v/8///8//////7///75/f799//hx9p+QW55KHSDHa+CE9h7EON8EuJ9E+J+EuN+E+J+E+B/FeF+Fd+CG7x/IICFRHHy4fD9+/79/v39/f7+/v7////////////////////////////////////////////////////////////////+/////////////v7+/fz/+/nk0sOieGaVVEaaUUebUUegUUieT0ecTkecTEedS0mdSkufSUybSEyaR0ubR0yZRk2TR1CJRk+fbXTbxMj++fv9/P39/v/8/P37/v79//7+//7+///+///+///9///8/f79/P3+/vz9/Pv9+vzo2eKsd5KAN1yGMl+HLF6GLWCELmCGLWGEK2KCKmWCKGaDKGaGKGWFKGSBJ2aBJmmBJWmAK2iGPXK4lrD47vf++P39/f79///////////////////+///////+/v79/f7++P7bvdmYWpR+KXiBIXuCIH6DIYCFIoOCI4SAI4SEI4OHIoSFIYiEIImEHoqEHoyEHo2EHo2DJIuPS5bRstX88/37/f76/P76/P39/vv+/vz//f7+/f/+//z//v7///3+/vz+/f79/P38+/z35/i4i8V+MJqCIqGEIKKBH6F+HqV/HKiCG6mEG6iDHaiAG6uAG6t/G6x+Gq+BGbGEGrCDHqx/LKOwecP14Pj/+f78+/7+/f////////////////////////////3+//39/P/w3OyBPmuCHISGHL14E956FN59Duh8EOR8EuF9EuJ9EeJ3Et+AFtGIHJ58JmuRXYH48Pj+/f39/vj7/v37/P/+/f7//f78//39/v///v78/v6+lbF/JG2FHK9/E917FN97Fdx7FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN57FN97FN58FN57Ftt8FduFFdx+II58LGXozOH8/v78/////v/+///9///+//7///3+/v3+/f3+/PvVts18MWmBI4CBHLp6Fd59FOF8EuR9Fd9/E+GAEOl9EeR5FON+GdR9HKB6J2yxhKX49/76/vz//f3+/v7////////////////////////////////////////////////////////////////+/v///f/9///+/fru5Nu5i4GfXEqeVUGiVkSfU0OeUkSfUUWfUEefT0ihTUeiTUefTEqbTEyZSk2YR02ZSVCPRU6SXGTSt7389vj//v/////////////////+///////////////////////////+///+/v7+/v7+/v3+/v79/f78+PzcxdKVYnx/M1yELF+ILGOFLWGILGGHK2GDKmOCKWWEKGeDKGWCKGSBKGSBKGWBJ2eAJmh9KWmMTH3Hnr/15/T1/vr8/f3//P///f/9/v76/vv8/f3/9v/o0eakcqB/LHaGIn2EIXuAI3eAJHqBIX+EIoGEIoOCIoSCIYWEIYaEIIiAH4iAIomAI4h7I4SFO4+/mcP66fv/+v79/fv9/f3+/P/9/v7+/v3+/v7+/f7+/v7+/v7//v7+//z9//v8//39///+//7+/P7+9v7q0u6eZ7F7KJt/HaKBHKSCHKWEHaiDHKeCG6iCHKp+HKt9G61/Ga+CGq+DG66BG7CBHK59H6qEOqvBltL45/r++v7+/vz///////////////////////79/vz8+v2xeqGCJWuFHKeBFNl6E997E998Dul8EOR8E958EeN7E916FdqHHrSGJXiERnXt4+j+/v3////+//3+/v79/v7+/v7//v78//7////////9//+8lrKAI26FG7R8FN14E+J7EeR5EuJ5EuN6EuJ6EuN6EuJ6EuJ6EuN6EuN6EuJ6EuN6EuN6EuJ6EuN6EuN6EuJ6EuJ6EuN6EuJ6EuJ6EuN6EuJ6EuJ6EuN6EuN6EuJ6EuN6EuN4E+F8EeR5EuGAFtyAHJOAK2TpzOD////+//79///////////////////+/v7+/v7+/v79+/27k7F6LmiBIJWGF8x+Ftt8EuR/E+N/EuN/EeV+E+J8E+J/FOCDHcd/JHyFOnHs2Of8/fz//f///f///f///v/////////////////////////////////////////////////////+///9///////+//vQvbSRZFSdV0ShVD+hVUKhVUKiVUSgU0OfUUSkUEelT0ihT0edTkebTUqaTUubSk6XR06SUVe4lZjy6+z8/P3+/f7////////////////////////////////////////////////////////////////////////+/vz/+/347fbJp7yFSmt9M1uCLmGFLGKDKmOAKmSBKmSGKWOEJ2WCKGWDKWWBKGSAJ2aBJ2iCJ2mBKWiBKmuWXIj28fb9/fv+/v7//v7+/v78/v3++P63n7V8PHOCJnWDJXaAJXWAJnaFI3uHIH2EIX6DI36CJH9/I4B/IoGAIoN/H4WBHYiDIId/L4Gqfa3t2vD+9f7++v79/f38//39/v/9/f/+/v7+/v7+/v7+/v7+/v7+/v79/v79//7+/////v///f///f/+/P79/vz+/fr97v3NltaKJqOFG6WCHKSEHaeEHaiDG6iCG6mBG6uBGayBGa2BGq+AGrF/GbSCGbSEHLCCHq57JqaOXqXv4/P9/v7////////////////////+/v/9/fvv4eyANW2CH4CFGMR/E999EuF8E998EOV8EeR6E+B7EOZ9EuJ4GcZ+HYd9LWbWuND/+v7//v7////+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EOR5EuF/F9uAHJOBK2TpzOD//v/+//78///////////////////////////////9+/z67/mVXot8J3B+HaF+E9h/E+J/E+N/E+J/E+J/E+F9EuSAEuOCGNeBIpx6JW2tg6P++fv9+v///f///f///v/////////////////////////////////////////////////////////+//39//7+//i6kYGgWkGnWj+kWECjWEGhVUGhVUKiVUShU0SgUEWgUEafT0eeTkidTUqcTEyUT1KvgoXs3Nz7+/r6/v37/f3+/f7///////////////////////////////////////////////////////////////////////7+/fv7/fz6/v7++v715/C0jqCAOWF/LF2EKmOBKWV/KmSAKmODJ2WEJ2eEKGeDKGaBJ2aCJ2eDJ2iGJGmNInGLOHf46/f9/fv8//3+/v7+/v79/P3++/7w4O+ncp+CLnSFJHeHInqEInmEInuFIX2EIX6DI36CJH6CI4CDIYKDH4SAIYR4Kn2aYZzlx+T/+f79//v+/vv8/fz6/fz7/v/8/v/9/f/+/v7+/v7+/v7+/v7+/v7+/v78/v7+/f///v///v///v7+//7+/vz9/Pr78vvZt+OOQ6WFHp+FG6ODHKOEHaWEHaeDHKiDG6iEGqyEGq2AG6t/HK1/HK6CG66DG7CBGrF/IKiSS6vVs9/++P78//z////////////////////7/f76+vq1iqaBJm+CGKOAFNt9EuF/EeJ+E998EuJ6EuN6EuN8EOV/FNt4HZ95KWeygqH/+P7+/P7//v/////+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EOR5EuF/F9uAHJOBK2TpzOD//v/+//78/////////////////////////////////v38/P3s1uiAP2h4I3iAF8CBEt6AD+Z/EOV+E999EuB9EeR+EOR9E99/G8N6H351Mmby4+/9+////P7//f///v////////////////////////////////////////////////////////////78///9//rAkX+mWz6iWz2jWT+jWD+iVj+iVUGjVkOiVEOgU0OgUUWiT0icTEmTT06lcXDhyMf9+Pb8/vz8//7+///+/v///v/////////////////////////////////////////////////////////////////////////9///9//78/v7+/v7//f/++v7l0N6ZZ4KANF+ELGGGK2SEKWOGKWSFKGWFKGaFJ2eEJ2eDJ2aFJWmGJmqJJW6DO3H37ff9/v7+/v7//f///f/8//z8//z+/P789PzSttCRTIiCJneCIXqCI32BInyBIXuDI36DIoCDIIKCIIKAJH6PSYvOrM/68vv9/Pv//f3//f7//v7+/f/9/P/+/f/+/v7//vz+/v7+/v7+/v7+/v7+/v7+/v7///7//v/+//79//n7/vf8/f3++P/p0O6gZ7V6KJyAHqOCHaCDHaCDHKODHKODHKSDHKaCHKaBG6l/G6p+G6x9GbJ9GLOBHLB8IKWANaS8jND25vn+/fz+/v7////////////////////////8/v7w5e6DQW1+HnuEFsZ9E+B6EuB/EeJ+Et98E996EeJ7EeN9E9x8GLl8I3qBR3H46fX//P36/vv+///////+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EOR5EuF/F9uAHJOBK2TpzOD//v/+//78///////////////////////////////+//38/vz++v2+mLV6Km18HpWDF9GBDeh+Dep8Et98EuF+EeN/EeR7E99+FNx+HZp6J225kbH/+/7//f///f///v///////////////////////////////////////////////////////////v/9/v/9//u+kn2kXTygWz2kWz+jWT6iVz6iVj+iVkKiVUKiVEKfUUOXUEiXYF3LsK758vD8/fz//fz//f3///76///7///+///////////////////////////////////////////////////////////////////////////9/////v///v///v/+///7///3/f789vzQsMKMT2+AMFyJKl6JK2GIKmKHKWSGKGWFKGaFKGWFJ2iEKGeFKGmAPW727vf9/v79/v/+/f///f/8//z5//r7//v6//z9+/735/bEn8F/Qnl8KXd/JHp/JHiCIXuDI318J3l8Nn28i7v25fX+9/3+/P3//v3//v7+/f///f///P///P///f///v7///3+/v7+/v7+/v7+/v7+/v7+/v7///7+///8//39/fr/+P386f3AlMh/OJR+IZuHH5+FIJuBIJyDHaCEHaGDHaKDHKOCG6SCG6SAG6d+G6d+Gat7F7N3G7F1JqaeY7zpz/D9+Pz6/f76/v/+/v///f///////////////////////f7Hpb54KWZ9HJeBFdp9EuB5E+F+EuB9EuF6FN57EuR9EOCAGM1+HpF6K2THqL/9/P7//v77//z+///////+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EOR5EuF/F9uAHJOBK2TpzOD//v/+//78///////////////////////////////8//////z+/v/77vuLTIB4J3aBH7KBEN59DOd8Et98EeN+EON+EeJ+EeB/EuSDHr5/IICISHr37PT//P7//f///v////////////////////////////////////////////////////////////3+/v/+//q8k3ujXjmmWzymWz6lWz+lWj+jWD+jV0GjV0ObV0KSXku7nI/38Or++/v9/f78/f77/v37/v79///+///+/////////////////////////////////////////////////////////////////////////////////v7///79//79//79//7+///9/P3+/f38/Pz17fO9mq2GRWaGMF2ILV+HKmKGKGOGKGWFKGWCKmOFKWSOJWyLOXL47Pf9//36//39/v7//P///f/+/v7//f7+/f/9/v79/fz+/P366/m4irWEPH6AJ3WAI3V8KHShaZ3s1Ov9+f39/f79/v7+/f3//f3+/v77//79//z9//z9//z9//38/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+//z8///8/f/88fzcut6VT55/JYyCIZWDHZqEHpyDHp2EHqGEHaGEHaCDHaGDHKKDHKOCHKSEG6iFGqeCHKR6Ip+KTarTtuH89f37/Pz9/vz+/vz//v///v7//v3/////////////////////+P6RWYF3InF+Hbh8E999EeJ5E+B9E997EuJ7E998EeSAEt6CGrqDInaXWoT78fb8//7+/v3+/f7////////+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN7EuN6EuN6EuN7EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN7EuN6EuN5E+F8EeR5EuF/F9uAHJOBK2TpzOD////+//78/////////////////////////////////v/8/v/9//v++/fQsst3L2d6H4qCGMuAEuB9E919D+Z+D+V+EuGBD+Z/EeOBF9Z/G5V9K2nWtsz/+/7//f///v/////////////////////////////////////////////////////////8//3///7//vy8k3ynXTylXDulXTmkXTykXD+lWj6lWj6iWUGqgHHo29H+/Pb+/fv//////v/////+///9///+///////////////////////////////////////////+/v7+/v7+/v7+/v7////////////////////////////////////+///+///////////+/v/+/v78/f39/f3++vzv4uiddomFMFqJKWKKKGOEKmKGKGWFKWaJKmSLJ2iJO3D47ff+/v78/v7+/v7+/v7+/v7+/v7//f7+/v7+/v7+/v38/Pv+/f7/+v/v2O6lep+CWH3Rs8388fz9/P77/v3////+//7+/v7+/v7+/v79/v77//39//3+/v7//f/+/f/8/v7+/f7+/vz8//v6//39/v7//f35/P39+P/t1e6pbq6FLI2KIZSHHpSGH5WEHpiCHZ2CHp+EIZ6CH5+BHqCCH56FHp2EHp9/HqGCHaGBIJ+DOJ6+k8z15vf9+/38/v39/v3+//7///7///////7///7////+//7///78//77/P/mz999M2V3HIiAG9B5FN96EOV8EuB5E+F7EeOBEeF7EeN9F9SGHpJ/J2jVs8v7/Pr8//z//v7//v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ6EuN6EuN6EuN6EuJ6EuF6EuF8Et+EEOJ8EeJ9EeGCEOJ7EuF/EeF+Et9+Ed9/Ed9+Ed9+Et9/Ed9+Ed9+Et9/Ed9/Ed9+Et9/EeB/EeF/EeF/FNt9Et+BE9p9H5B8KmToy+D7/v78/////v////////////////////////////////z7/v/8/v3+/vn78fiYXYJ9J25+G7R+Fdl/FN1/D+V+EOR+EOSAEOOAEeN+E+CAHLaCJ3Gtbpn8+f7+/vr+/v7+//////7////////////////////////////////////////////+///8//7///7//v3FnIaoXT2nXjylXjikXTukXD6mWz2lWz2hWkDWt6z//Pj+/vz9/v7////////////////////////////////////////////////////////////+/v7+/v7////////////+/v7//////////////////////////////////////////////////////////////v7//v7+/f305O+KOmCKLGOKKWKFK2GHKWSGKWaKKmSJKWaGPW737vf+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7++/3+9/789Pv/+v7//f///v/////////+/v7+/v7+/v7+/v7+/v78//3+/v7//f///f/+/v78//39//v//P//+//9/fz8/vv9/P334/W4ir56MYt8IY6EIJCGH4+FHpWFH5aEH5iDHpuDHp2DIZ2GH52DIJ5+IZ6AIKGBH6F+HZ17K52pcr3v2fH/+vz+/P79/P7+/f7////////////////////////+///+//////79//78+P+6kqx7JWt+GqaCGN54FN56EuJ+E996EuJ8EuKBEeJ9E+B9Gr2BH3uTUX/66/n6/vv8/v3//f/9/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ6EuF6EuF6E9+AFtV9GsaAHMGFGcN+G8KCG8KBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGsSBGcWDGcWBG8GAG8ODG79+IYiDLmXrzOD9/v79/////v/9//7///////////////////////////38///9/v/+/vz+/P3RrcR5LGN7G5iBGdB+E91/EeJ+EeJ9EeJ+EuF/EeN9EeSDGtF/H4GGOXD26PP+/vv+/v7//v////3////////////////////////////////////////////+///9//7+//7+/v3Gn4erXjypXzunXzelXjqlXT2nXDymXD2iW0DUtaz//Pv8/v78///////////////////////////////////////////////////////////////////+/v739/f8/Pz9/f3+/v7////////////////////////////////////////////////////////////+/v7//v7//f7y5e2BNlqHK2GKK2OGLGGJK2OHKmWKKmOJKWWGPW337vf+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v77/vz4/fn6/fv9/v3+/v7//v///f7+/v7+/v7+/v7+/v7+/v7+/v7//v7//v7//v7+/v79//39//3//vz//P///f78+vr67vrSq9aMQpB9JYuAHpSEHZWFHpKFH5ODHZaDH5aFIpWEIJmCHpyDIJ2EH5+DIpuCIpuDIKN6I5uZW6vhxej88v77+vv6/fz6/f39/vr///z////////////////////////9///+//////79/v798vyTW4F/IXuFGcJ+EON6FN57E959E99+EuJ8EuF9EuJ+Fth7Hpt9J23Anrf++P76/v3+/f///f/7//39/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ7EuF7EuGAFdyGGLWDG4aFIXuBIHx9IX1/Inp+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXx+IXuBIHx/IH19InuAI3iEKGl3LVnoy97//v////7////8//7+///////////////////////9///9/////v/+//z9/f746/aIRnR+In6FG798E959EuB/EeJ9EuB+EeN+EuJ7EOV/EuCEH558K2nStcv//f3+/f7///////3//v/////////////////////////////////////////////9//7+//7+/vzIoYetYDusYDmqYDanXzqmXjyoXTqmXDyhXD/Rtq39/f37/v/8/////v/////+///////////////////////////////////////////////////////////6+vr9/f3+/v7+/v7////////////////////////////////////////////////////////+/v7////+/v7+/v7v3+h9NFeILWGKK2GGLV+JK2GHKmOKK2KJKmOGPWz37/f+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v78/f39/v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////v7//v7+/v7+/v3+/v39/v77/f39/P3+9v3gxuKaXp6BKIaCH5GEII6FIoyHIJCGHpWFHZaDHZeDIJWFIZSEIJaCIJmBIZmCIZyAIJ1+JZaORJnOo9T66vz++v79+/77/f/5/vz6//n8/v3+/f7///////////////////////79///+/v////79/v724fJ4MWCDIYeFGNB9EeN8FN58FN58EuJ/EeF8EuF8E+B+GMZ5I399Nmjw4+z8/P37/v7//P///f/7//39/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN5EuN6EuN6EuJ8EuF8EuGAE9+CHa2CJW6bVIGqfJ+nfKCofZ6pfJ+pfJ+pfKCpfJ+pfJ+pfKCpfKCpfJ+pfKCpfKCpfJ+pfJ+pfZ6qe5+pe6CofZ+pfp2re56ifpft3+r9/v7+//7///7///7////////////////////////8/////v///v/9//39/f7++v6yhaZ9J2uIHq17FNt8EeKAEOR9EuJ+EOV+EuJ6EeN9EeSDHq58KG6tgaH++f39/P7+//7+//3//v/////////////////////////////////////////////+//7+//7+//zIooatYTquYTesYTSoYDinXzqpXTmmXTqhXT3SuKv+/vr9//3+///////+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v7+/v7n1d5/NVeILV+LLGCHLl2KLF+HK2KKK2CJKmOGPWv37/b+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//f///P///P///f/9/v78//38//3+/v7+/v7+/v7+/v7////////////////////+/v7+/P7//P/7+f/t1e2pdKp8KoKBIoqII42DIY+CJIqDI4qGH5GHHZWHH5GDHpOEHpOFHpOEH5WAIZR/JZKAJpWDPJi7ksX67fn+/Pr+/f3//P//+////v/9//38//39/v///v////////////////////////7///7//v/+//79/f3Rr8p8KGWCIJeAF9Z5E999E999EuB7EuJ/Et99EuJ8Fdx/HbB2JG2fa4/++f38/P77/f7+/v7//v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN6EuN6EuJ8EuF9EuF+E95+Iad8Kme/l7H9/f39/P/+/f3//v3//v3//v3//v3//v3//v3//v3//v3//v3//v3//v3//vz+/vz//f3//vv+/v7+//z/+/7++f/8+//6/v/9//7///7////////////////////////////8/////v/+/v78/v7//f78/f7fx9x+MmeCHZF8GNJ9EOR/D+V8EeR/D+V/EeJ7EuJ7EeGEGsB9H3iTTnv78/r+/P78//78//3//v/////////////////////////////////////////////+//7+//7+//vJo4avYjqvYjatYTOqYDeoXzmpXjimXjmhXTzSuan//vj+//z////////+///+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7////+/v7+/v7p1t6BNFWLMGCNLV+IL12KLV+HLGGKLF+JKmKGPmv37/b+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v7+/v7+/v7+/v79/v79/v7+/v7+/v7+/v7+/v7////////9/v79/v79/v79+/3/+P/15/S9kLuCOYZ+IYWBH4qCIYuEIY2GIouFIIyDH42FII2GII+GH5KGH5KGHpKFHZOCHZR9Io+CM5Guebfw2vP++/39/vv9/f38/Pz+/v3+/vz///7//v///v////3///3///////////////////////7///7//f/+//79/f2ziqh/Im2BG6l7FNx3Ft58EuF+EuF6E999E95+EeN+F9eCIZ92J2vIpsH/+f/9/P/8/f78//z+//z//f7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN5EuN7EuJ8EuF+EuGDEt2GIKeEJm3AlLT5/vr9/v7//v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v39/v3//f7///n8/f/8/v7+/v79/fv8/f79/v7+//7+//7//v/////////////////////////+//////78//37/v///P/9/v769P2JSHZ+Hnt7G8N9EeN+EeN8EuKAEOOBEOJ8EOR8EuGGFtODHI1/L2Py5O/+/P/7//77//3//v/////////////////////////////////////////////+//7+///+//zKpYSvZDivYjauYjOrYDaqXzisXzepXjijXjvTuaj//vr9//7+//////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v7+/v7p1d+CNlaKL16NLV+HL16KLl6HLGGJLF+JK2KGPmv37/b+/v39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v79/v7+/v7+/v7+/v7+/f//+////f/9//z6//r7//3+/v/++/7+/P7+/P799P3Lp8mKSod9JXuBIoKCIYWBIYWDIoeFIouHIomEIIyCH46FH46GHo6GH5CGIY+EH4+EIJN8JY6iZ6/lxen+9v7//f/+/v3+/v3+/v7+/v79/v3+//3///////////////7///7//////////////////////v/+/v/+/v7///z++f6RW4F+I3h/H7x8FN96EuN7EuJ8E+B8FN59E+B/EeGCFtGAIIJ8NGnn1eb9/P79/f/9/v7+/v3//v3//v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN5EuN6EuN6EuJ8EuF+EuGBFN2FHKuDJXK/k7T5/f/4/v/+/f7//v///v///v///v///v///v///v///v///v///v///v/9/v75//78/v/+/v78/f/6/f3+//z///z+/vz///7///7+///+///////////////////////////////////9/v79/v7//v/+///8+v6qf6B9JG6CH7F/E+B+EON7EuN/EeN/EeN+D+V9EeGAFNp+Gp5+J2fZutT//f7+///+/v////7////////////////////////////////////////////+//7+/v/+//zKp4OwZTiwZTavZDSsYjWsYTiuYDarYDekXzvUuqj//vv9///+//////7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7p1N+DOFeKMF2NLl+IL12KLl2HLWCJLV6JK2GGPmr37/b+/v39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v78/v37//z+/f///f/+/v7+/v/+/f74/fz98/7bvNuTWZB8KniFIn+DIYGDI4GDIoGCIYKEIYaFIomFIIyDII2DII6HHo2JH4+GII+DIY9+J4ySVJ7cuuD98v7/+/7+/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//////////////////////////////////////////v/9/v/9/v7//v336PSHRHN/I4J/HsZ9FOB8EeN7EuF8EuF8E+B9EuF/Ed+DFsh/InSRUnz68Pv8/v79/v7+/v7+/v7+/v7//v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ8EuF+EuGCFNyHHKmEKWrAl6/9/f77//7+//z8/v78/v78/v78/v78/v78/v78/v78/v78/v78/v78/v78/v79/v3//v3//vz//vz+/vv+/fv+//3+//3///7////////////////////////////////////////////+/v7+/v7////+/v78/P3KrsN8KWeDHp+AFtl9EeF8EuN+EeN+EeN+D+R+EeN+Fdt/HamCJ23Ak7f//f3////+/f////3////////////////////////////////////////////+//7+/v/+//zKp4KvZjawZjWvZDOtYjSsYjeuYDasYDalXzrVuqj//fr9///+//////7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7p096EOFeMMV2OMF6JMV2LMF2JLl6LLlyKLF+HP2j37/b+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v38/v3//P/+/f/8/v/+/f/+9/7q1+qgbJ98LHt+IXyCIX6DIX2BIX+DI4GDI4GCIYKDIYSDIIaFIYmDIIqEH4uFHoqEIIp8I4eHP47Loc746/n6+/35/vz7/fr+/v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////8///9/v7+/v3p1+Z+MWqAH41/Gs99EuJ7EuF7E998EeN8EuJ9EuOAE9+BF7h+JG+pdJb++P/+///+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ8EuF+EuGAE9+CHat8Kme+k6388fz78vz89fr79fr79fr79Pr79fr79fr79fr79Pv79Pv79Pv79Pv79Pv79Pv88/v88/v89Pv89Pv78vv78/z+/f3+//3///7////////////////////////////////////////////+/v7+/v7+/v7+/v79/v3n1uR7LmR9GY2BGdF9E959EeJ+EeN+EeN+EOR+EeN9FN2CHrSCJHCteKD//f/+///8/v////3////////////////////////////////////////////+//7+/v/+//zKp4CwZzWxZzSxZzKuZTSvYzawYjWuYjWnYTnWuqj//vv9///+/v///v3//v7+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/q1N+FOVaNM1uPMVyKMluMMlyKL12NMFuML16JQWf38Pb+/v39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////+/v7+/P79/f75/v38/P705POyha19MXV8JHh/IH58IX18I3p/JHqCI36DI3+EJICDIoGDIYOEIIWHIYSEIYd/IIh5I4N5NIC1ibr15vT/+//9/P77/v77/v39/f7+/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////9///+/v/+/v7ewdV9J2iDH5x/Ftd9EuN8E+B7E+B8EOV8EeR8EuOBFN6CGqh8J2m/lrH++/3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ8EuF+EuGDEt6FGqyAJHCKO3KQToGOToKSUH6UToCUToCUTn+TTn6TTn6UTn6UTn+UToCUToCUToGUTYKSToGOT3+QTn+LUH+QUX+SUXuzhqb++/7+/v7////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v706PKKQnV+GoKDG8x9Et9+EOR/EeJ+EuJ+EeR8EeN8E9+DHL+DI3SVWob/+/79///7//////3////////////////////////////////////////////+///+/v/+//zKqH+waDSyaTKyaTKwZzSwZDWwYzSvYjSoYjjWu6f//vv9///9/v7//v3//v3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////q1N+HOVaONFqRM1qLNFqOMluMMVyPMVqOMVyLQ2f48fb+/v38/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////9//35/fv9+/346/jEoMCEPnuDJneAJHWAI3h8I3l7JHh/InqGIH+DIn6DI32DI36DIoCDIYKEIYSEIYV8I4N6NIWda6Po0uj++/z6/v77/v/+/v7//v7//f7+/f/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////+//79/////v/9/v7Sr8OBJGuDH6J/Fdp9EeN8E+B7EuJ8D+Z8EeN7EuN/FNyEHZp6KGXStsv9/f3////+/v7+/v7+/v7+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ8EuF+EuGCE9yBG7V7G41+Hod+HoZ/HYh+H4R9H4R9IIJ9IIJ9IYF9IYB9IYB9IIJ9IIJ9IIN9H4R9H4V8H4V8H4SBHYh5H4aCI3qLK2etcJH++//+/f///v/////////////////////////////////////////////+/v7+/v7+/v7+/v7+/P779PyTUYGBHXqCG8V9EeF/EOV/EeJ+EuJ+EeR8EeR8EuGEHMuDInmLTHz99fz9///7//////7////////////////////////////////////////////+///+/v/+//vKqX6waDOxaTCwaTCwZzOwZTWyZDSwZDSqYzjXu6j//vv9/v/9/v7//v3//v3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r1N+IOlaQN1uSNFmMNVmPM1uOMlyRM1mQMlyMRWb48vb+/v38/v/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////9/f788/zbuNWVToZ9KG2AI3ODI3h/JHWDI3iCI3iAI3eAInmDIHyCIXyCInyCInyCIn6DIYGDIYJ3JXmHS4rStdT98v3++vz6/P38/f7+/v7+/v39/f/9/f/+/v3+/v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////3///7//f/8//7Cn7KDI2uAHqR/Fdp9EeN8EuF7EeV8D+d8EeJ6EeN+E9qFHo97KmXnzuP9/f7////////+/v7+/v79/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuJ8EuF+EuF9EeJ7GdR8GsyBGc2DG8mCGsyAG8uAGs2AG8yAG8uAG8mAHMiAG8mAG8qAG8uAG8yAGs2AGc6AGs2BG8qHF89/HMmGH6mII3encJP++//+/f///v/////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v77+fyiaJCHI3aDHsB+EuGAEOaAEuJ/EuF9EeN8EOV6EuOBGtCCI36GQnb47fb9/v/8//////7//////////////////////////////////////////////////v/+//rOqHuvaC2xaSyuaS2uaC+wZzGzZi+xZTGrZDbXu6f//vv9/v79/v7//v3+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////q1t2HPFKQOFeSNliONlmQNliONVeQNFiNNFyJRmX38vb+/v79/v7+/v7+/v7+/v7+/v7+/v79/v79//3+/v7+/v78/v78/v78/v7+/f7+/v3+/vv//v7+9//kyuOkYZuAKnCJJHOHInKDJXOAJnSCI3eCIniBInmAI3iCI3iEInmBInmBInqEInyEIXyAJnmFN4C7mbv56/n++f7+/f38/f77/P/+/vz//v79/f/8/v/8/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////+//79/v66lK2BJWx/G6uAFdx9EeN8EeR7EeR8EeR8EeN7EOR+FNiCH4l8LWHz3+79/P7////////+/v7+/v79/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN7EuJ8EuJ8EeR6EeN6EeR8EOV9EeN7EeR7EeR+EeN+EeN+EeN+EeJ+EeF+EeJ+EeJ+EeN+EeN+EeN+EOR9EOR8EeR+D+Z+EuGBGLyDI3aobpb++v/+/f///v/////////////////////////////////////////////+/v7+/v7+/v7+/v79/f78+/6wf5+CI3CDHrl+FN+AEeV/EeN+EeJ+EeN8EeN7EuKAF9OAIIWHPnPy5e/+//7///////7///////////////////////////////////////////////7//v////rFnm+1bC2xaSmvaiuuai2vaS2yaCyyZS+rZDXXu6f//fv+/f79/v7//v39/v79/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r19yGPlCPOlSSNleNN1eQN1aNN1SPNlmMNVuQUGz58vj+/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//f/+/v79/v79/v38/fv9/P38+fzw4e+tgqR8NW6CJnCEI2+HInCGInCEJXKBJnN/JHWBI3eEI3eEIniBInqAInuBInqCInmDI3qCLXqpcaTr0On++P7+/P7+/f7+/f/9/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////+///+///9//z+/v6uhaOCKG+AG7GAFN99EuN8EOV7EeR8EeN8EeR9EOV+FdeAH4V7LV337Pf9/f/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN7EuN8EeN8EeN8EeN8EeN8EeN8EeN8EeN8EeN8EeN8EeN8EeN8EeN6EuN6EuN+E+B+GbuAJ3CpbZX++v/+/v////////7////////////////////////////////////////+/v7+/v7+/v7+/v7+/v/++/+whKCAI3CBHbd8E95/EeN+EeN+EeN+EeN8EeN8EuGBF9WBHYiGOW/t3ur+//3//v79//////////////////////////////////////////////////7//v////nHoG+0bCq0bCmxbCmwayqxaiuzaCyyZi+sZDXYu6f//fv+/f79/v7//v39/v79/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2N2IQFGQO1OTOFWOOFWQOFWNOFOPNleMNlmWV3H68/n+/f7+/v7+/v7+/v7+/v7+/v7+/v7+/f/+/f/9/f/+/v7+/v7//v78/v36+/z87/rDobp9Qmx6KGKGJmuEJG2FI26HI2+EI2+CJHCAJXGBJXKFJHWGIneEInmAInp/InuIJH98KnSRV4zhwN7+9P78/Pz9/f3+/f39/f3+/v7+/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////+///+///9//z9/f6thaKCJ26BG7CAFN99EuN8EOV7EeR8EeN8EeR+EeR/FdaBH4Z7LVz48Pj9/v/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN7EuN7EeN7EeN7EeN7EeN7EeN7EeN7EeN7EeN7EeN7EeN7EeN7EeN6EuN6EuN+E99+GbuAJ3CpbpT++v/+/v////////7////////////////////////////////////////+/v7+/v7+/v7+/v7+/f7/+//BlLKBI3KAHLZ8E91+EOJ+EeN+EeN+EeN8EeN8EuGCFtWDHIeDMmro2OX+//3//v/8//////////////////////////////////////////////////7//v////nHoG61bCm1bSizbiezbCmyaym2aSq0aC6uZjXZvKj//vv+/v79/v7//v39/v79/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2d6JQlKRPVOUO1WPO1WSOlWOOlOQN1aNN1mXWXD69fn+/f79/v7+/v7////+/v7+/v7+/v7//v7+/f76/v36/v37/v39/P789PzTu86OVn57LmGCKmWDJ2iFJWuGJWuHJGyGJG2EI26BI26BJG+FI3GDJHWBI3eAJHeBJXaAJXSMQoTLpcj58fn6/Pv8/P3/+/7+/vz+//z+/vz+/v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////+///+///9//z+/f+whaSDJm2CHLB/E959EeN8EOV7EeR8EeN8EeR/EeN/FdaDH4d8Ll748Pj9/v7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuJ6EuJ+E99+GrqAJ2+pbpT++v/+/v////////7////////////////////////////////////////+/v7+/v7+/v7+/v7+/P3/+/++kLCBI3R/GrZ7Etx+EOJ+EeN+EeR+EeR8EeN8EuGCFtSEHYiEM2rp2eb+//3//v/8//////////////////////////////////////////////////7//v////jIoG23bii3biazbSSzbCe1bSm4bCm2ai2vaDTavaj//vz+/v79/v7//v39/v79/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2d6JQlGRPlGVPFOQPFSSO1OPO1OQOVaNOViXWnD69fn//v79/v7+/v7///////////////////7+//39/v38/P3++P7q2eeidpN/M2SAKmZ/KGaAKWaDKGeGJmmHJmmHJWuFJWyEJG2CI22BJG9/JXKCJHOFJHN/KG96NG60hK/x4fD++f39/f3+/f7//P/+/f79//z+//z+//3+//3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////9///+///9//3+/P+yhaaEJW2CG65/E919EeN8EOV7EeR8EeN8EeR+EeR/FdiDHol9LF/46vX+/v/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuJ6EuJ6EuJ+E99+GrqAJ2+pbpP++v/+/v////////7////////////////////////////////////////+/v7+/v7+/v7+/v7//f7++v6wgKJ/IHN+G7d6E9x+EeJ+EeN/EuR/EeR9EuR9E+KCGNSBG4SIOW3x4e3+//3//v/8//////////////////////////////////////////////////7//v////jIoWy4bie4byS0bSS0bCa2bCi5bSi3bCuwajLavqf//vz+/v79/v7//v39/v79/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2d6KQ1GSP1GWPlKRPlOTPFOQPFSROlaNOlaXWm369fn//f79/v7+/v7////////////////+/v7+/v3/+/725vO8kK6DOWaELWSGKGaGJmeFKGeBKWWDKGeHJmiFJmiEJmiFJWuFJWyEI2yEJG6CJm+CKG9/L22mb5vq1ef8+Pz6/vv7/vz9/Pz/+////f/7//z8//39/v7+/v7+/v7//v7//v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////9///+//79//7//P/ClraFJmyEHK9/E919EeN8EOV7EeR8EeN8EeR8EeSAFtuEHox+K2Hu2+j//f/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuJ6EuJ6EuJ+E99+GrqAJ26pbpP++v/+/v////////7////////////////////////////////////////+/v7+/v7+/v7+/v7//v7++f+mdph/IHR+G7h6E91/EuN/EuR/EuR/EuR9EuR9E+KAGNN/HoOJPW7z5e/+//3//v/9//////////////////////////////////////////////////////7///rIoWy3cCG3cCC1biK2biS3bia6bia3bSmway/av6X//vr+/v79/v7//v7+/v7+/v/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2d2KQ1CSQE+WP1GRPlGTPVKQPVORO1SMO1WXWm769Pn//f79/v79/v7+//////79/v39/f7++/798/vTscORVHSBMF2KKmKKKmWEKmSIJ2WKJ2SIKGWFJ2eFJ2iEJ2iEJmeEJmmEJWuFI22GJG1/K2mYWIndvNn99P3+/f38/vz//v7+/v79/v3+/v7+/v79/v39/v79/v7+/v7+/v7//v7//v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////+///9//79/f/Hob2CJGyFHKt/EuB8EuB8EOV9EOR9EOV8EeN7EON/Ft6BII+CKGXjydr//P/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN5EuN5EuN7EuN7EuN8EeN7EuF6EeN5EOV7EOV9EOV8EOR7EeR6EuN6EuN6EuN6EeR6EeR6EeR5EeR5EeR5EeR5EeR5EeR6EeR7EuJ2Fd56E+F/Gbt9KG+qbpX++//+/v7////////////////////////////////////////////////+/v7+/v7+/v7+/v78/v7/+f6XY4mAIXB8Gb17E95+EuN/EeV/EeV/E+N9E+N9E+KCG8p9H4KMSHX68Pf///39//////////////////////////////////////////////////////////7///vIoWy2ch23cR64cSG4cCK2byK5byO3biewbC3av6T//vn+/v79/v7//v7//v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2d2KRE+SQE+WP0+RP1GSPVGQPlGQPFOMPFOYW2778/n//f/9//38/v79///+/vz9/Pr++f7n0d+hcImBNlmJMFyJLV6HLWCHLWCILGCHKmGGKmKGKWSEKGWFKGWEKGaAJ2mCJWuEJWl9KGaHRHjIo8H87Pv//P79//3+//7//v/////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////9///9///8/v/Utct+JWuBGp9+EuB7E998EOZ/EOR+D+d8EeN8EeN6E91+H5eEJWnOqsP//P7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN6EuN6EuN8EeN9EeN9EON9EOR9E+B+E91+E999FN19FN1/E91/E91/E95/E95/E99/E99/E95/E95/E95/E95/E95/EuCAEeJ5F9h+FdyEHLJ7K2urcJL/+//+/v7////////////////////////////////////////////////+/v7+/v7+/v7+/v77/v788vqNTn2DJHR/GMd/EuF9EuN+EeaAEOZ/E+F7E+R+FOGGH8B8HX2MUXn++v3///76/////v////////////////////////////////////////////////////7///vIoWu3cx24cx65ciG4cSG1byC5byG2byWwbSvawKT//vn+/v79/v7//v7+/v79/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2t2KRE+TQU+WQFCRQFCTP1CQP1CRPlGOPVKZW2379Pn//f/+//3+/v79///+/v378/eykKB/QF6GNVuNMV2NL12KL1+IL1+ILl6ILV6FLF6CLGCCKmKEKWOGKWSEKWWAKWp6J2eBOm63kK346vf9+v37+/z8/v39//7////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////9///9///9/v7jy9x9KmaBG5R+Fdx5EuJ7D+Z+EOV+EOV8EeR8EOV5EtyBHqt/JWq0iqv++v3////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN9EuF9Fcd9G6h/H6F+HaSAHaOBHqGCHKSCHKSCHKSCHKWCG6WCG6WCHKWCHKSCHKSCHKSCHKSDHKWCHaSAH6KFHaOIIoyBLGivcJT/+//+/v7////////////////////////////////////////////////+/v7+/v7+/v7+/v79/v7x4+6AOW6AIYKHGtF+EuF+EuF+EeR/EeR9EuF7EeR+FN6FHrh/IHmcZ4r//P7///77//////////////////////////////////////////////////////////7///rJomu3dB25dB65cyC3ch+2cR+5cCC2cCKwbinawKP//vn+/v79/v7+/v79/v79/v/+/v7+///+///+///+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2tyLRVCUQ0+XQU+SQU+UQE+RQFCSPlGQPlCaXGv79Pj//f///v7//v79///8/P3u3eV3OVSJNFqOMl6PMV+MMGCJMV+MMF6LLl2HLV6ELGCCK2KFK2OHKWKHKWR/KWJ8MGOda5Dm0OP++v/+//76//z7/v79/v7+/v/+//7+//3///7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////8///9/////v3u3umCN2mDIYl/GdN6EeR5EOV9EOV9EeR8EOV7DuR5E96DG797I3GZZJD/+f3////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v78//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ6EeN8EeN6EuN6EuN6EuN6EuN+FN1/Gqx9IHN8J2Z4LGl8K2t9LGd3LGl4LWp4LWl3LGl3LWl4LGl5LGl5LGp5LGp5LGl5LGl5LGh3Lmd4LGt7K2t+LGl5MGKmcZP+/P7+/v7////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v/izNx1Kmd8IJeDFtZ6EeF+EeB+EeN/EeN9EeJ8EeR/FdmFHq6BInGzg6L//P7////9//////////////////////////////////////////////////////////7///rKpG25dh26dh65dB+4cx+4cyC6cx+3ciGxcCfawaL///r9//78///+///+///9///9///9///9///8/v78/v79/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s2duMRlCURFCYQ1CTQ0+VQk6TQVCVQFCTQFCdXWr89Pj//f/+/v7//v7+///8/v/w3eaBOleQNFyMNF2LMV2KMV2JMV2NL1yML1yILV+HLGGHK2KDKmGCK2B+Kl6OTHjWuM//+v///f39/v78///+/f/+/f///P///f/9//39//v+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////78//78/v///v378fiKTHZ/I3uBHMZ8EON7EeR9EOV9EeJ7EOV7EOV6E+GEGMx8IX+LRHz45/T////////////////////////////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN7EuN6EuN6EuN6EuN6EuN+EeCEGqmAI2qvdp3dxdfcxNjdxdbbxtbcxtbcxtbcx9bcx9XcxtbcxdfcxdfcxdfdxdfdxdfcxdfbxdfcxNjdxtfdxtbbydfj19/+/f7+/v7////+/v7+/v7+/v7+/v7////////////////////////////////////////+/v7+/P7An7Z3J2x6HKx9FN16EuR8EuB+EeN/EeJ8EeJ9EeSCGNWAHJ+BJWnFpbr//v7//v///v/+//////////////////////////////////////////////////////7///rMpW26eB67dx67dh+6dR+3cx65cxy3ch+wcSTZwaH///r9//78///////9///8///9///9///9///8/v78/v79/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r2duNR1GVRVCZRFCURU+WQ0+UQlCXQVGVQVCfX2v89fj+/f/9/v7//f/+///7/v3y4emAOleONFmMNViNM1qMMlyJMl2MMVyNMFyLLl2MLV+FK157L155Pma/lrL46fX9+//7/v7///7//v/+/////v/+/v7+/v7+/v7+/v7//v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////37//37/////v7/+/6aaIx+JXKBG7d/EOF8E+J9EeR9EuJ6EeR7EeR6EuOGGNOAII+ALGrlzeD//v/////////////////////////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN6EuN6EuN7EeN8EeN8Ed+CHaeBJW7Akrb6+/v1/P77/f38/vz8/vv8/vv8/vr8/vn8/vv8/P38/f38/f37/P37/P37/P38/vv+/vj+/vn7/fn6/vr6/f3////+/v7+/v7+/v7+/v7+/v7+/v7//////////////////////////////////////////////P6kbox8I3B+GLt7EuJ+EON9EuJ+EOR/EeJ7EeN9EeSAGM56GpJ+KWTlzd39/v7//v///v/+//7//////////////////////////////////////////////v////7///rMpW26eB27eB27dyC7dx+5dR65dBu3cx6ycCPZwKH///j9/vv8//78/v79//79///+///+///9//78//39/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////+///+///9///9///9//////7////+/v78/v/9///r19mKSFGWRVCYRVCURk+XRU6VQ1CXQk+VQk6gYGr89fj+/v/8/v///v/////9/v347/WBPVeNNliONVeONFiNM1qLM1yLMlyNMlyNMFuJL1uANlyqepfq1eb8+f77/vz+/v79/f7+//////7///3///79//39//39/v7+/v7//f/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////7///7//v///v/+/v/+/v7+/v79//38//39/vv///z+/vz8//39//3+/////v///v////7///38//39/v///v79/P23ka59KW+AG6t/E+B+EuN9EeJ7E+B7EeR7EOR6EeWDF9mAHaJ7KGq7lrL+/v7//v7+/v7+///////+///////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN5EuN7EeN8EeN+EeN8Et9+G6p/JHG+k7b6/f36/f///f///v7+/v7+/v3//v3///3//v3+/f/+/f/+/f/+/P7+/P7+/P/+/f////v//f/9+/7+/vz+/f7///7////+/v7+/v7+/v7+/f/+/v7////////////////////////////////////+/f7+/v777vaEP2eAIXaDGcl7EeKAEON9EuJ9EOR/EeN+EON7EuOAGsp6HIeANWr26PP9/v3+/v///v////7//////////////////////////////////////////////v////////vLpW66eB27eRu6eB+8eB67eBy5dRu4cx23cSHWsH7+++b9//n4/f36/v39/v39//79///+///7//76//v8//3+/v7+/v7////////////////////////////////////////////////////////////////////////////+///+///9///+///+//////79/v76/v/8/v7++vjfwsOHR02WRk6VR06TR06XRU2XRE+ZQ0+XQ0+dXmj79Pb+/v79/v/+//////7//v/48PaHPVeOOVqNNlmLNFiMNFmMM1qLMlqOMFuIMVuaXXzkxtb/+P3+/P79/v7+//////////////////7+///////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7///////////////////7//v///f/9/f76/v36/v39/fv9+/399/7++vv9+/b8/fv7/f39/v7+/////v7///7///7//v7+//7//v///v/9//zYw9N1KmZ+H5d8GNd+DuR+EuB5E+B+EOR9EOV7EeV+FOF/G8NxI3eOU3/+9/3+/fv8//3+/v///v/9//7////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN5EuN7EeN8EeN+EeN+EtyDGqyBJHC+lbL4/f/3/v7//fz//v3///3//v3//v3//v3//v3//v7+/v7+/v3+/v3+/v3//f7//f3///j//f7/+/7///n///z9//79///+///+/v3//v7//f/+/v7//////////////////////v////////7+/v/+/f7+/f7Tusx6K2eDH5CAGNV8EuF9EuJ9EuF6EuJ9EeSBEOJ7E+B9Gb2AIXuZX4z99fv+//z+/v/8//////7//////////////////////////////////////////////v////////vNpm+8eh68ehy7eh68eR27eBu6dxu5dR25cx+2dCfAlV/u4cj9/fX+/fr8/v/6/v/8///9///8//37//r6//77/v/+/v7////////////////////////////////////////////////////////////////+///7//7+/////////v///v///v///f/+///7//38/v326+q6lpOQVVOTSUuYSEuVSEyTSE2XRk2YRU6aRFCYRFCUVV758/X+/v/9/v/+//////7+/v/48PaGPVaPOlmOOVmMNliNNViMNFiMM1mQMlqJM1qpc47r1OP++Pz9+/z+/f3///7+//79/v79///9/v/9/v/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////7/v/9/v////3+/vr8/vv8/f767/rQrtKXZZvTtdX88/v9+f3++v///f////7+//z9//79/v/+/v/+/////v///f/9//v47PV8OWt+IYF+GcZ+EeN8EuJ6EeR+EeN9EuJ7E+J8EuWCFtd9IZN6L2jm0d/8/P35//7//////v/9///////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN4EuN6EuN6EuN8EeN8EeN+E9uEGqyCInTCk7b9+v77/v7//vz9/v38/fz8/fz8/fz8/fz8/fz7/P37/f78/f79/f78/v79/f78/f78/fz7/P38/vn8//f8+/3+/P/7/v/6///9//3//v7//f/+/v7//////////////////////v////////79//7+/f7++f6oc5Z+JHWDGrSCFd6AEeN+EuB9EuF8E997EuN+EuF/Et6DHqp7JG62i67/+v7///z+/v/8//////7//////////////////////////////////////////////v////////vOqHC9eyC9ex27eh69ehy8eRu7eRu7eBy7dh63dCKycSKscyvMrHr48Nj+/vr9/v79/f/8/f////3///r//v3//v7+/v7////////////////////////////////////////////////////////////////+///8//7+/////v/+/v/9/v/6//79/v///v3++vXPuLSUYl+XT0mcTEidS0iaSUiWS0uVSkyYSEyYRk6aRE6YRE6UVV359PX+/f79/v/+/////////v/48PaHP1WPO1eOOleOOViON1iNNliNNViNNVaMNVaINFuEPWS1i6T05+79/fr+//77//36//37/v3+/v7//f79/v7+/v7+/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v79/v7+/v7////////////////////8//77/vz8//v+/f3/9f/iwuCXWph5K4B7JoR2LnyhcqDs2ev/+v7//v3+///8///8//////7//v79///+/v///f/9//z++PygapGBJXaEHbZ/FOF5EOV6EOV+EuF9EuJ8FOB7Eed/E+KAGqiAKG64haT7+P/3//7///79///+///////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ4EuN5EuN6EuN6EuN8EeN8EeN8Et9+Gq18I2yxeZ3dxtjbx9jcyNbcyNfcyNfcyNfcyNfcyNfcyNfcx9fcxtfcxtfcxdfcxdfcxtfcx9fcx9jcyNfcydPdyNbexNnbw9b57/j8/v79//7//v/+/f/+/v7+///+//7+//7+//7+//7+///////+//77//v+/f7x4e6CNmZ+HoKBFtCCEuODD+N+EeF/EOR/EeF6EeV7EeCEE9eAHI56L2fdwtn+/P7///7+///8//////7//////////////////////////////////////////////v////////vOqHC9eyC9ex29fB++ex69ex27eRu7eBy7eB27dx26dh23dB6vciOtf0HWwJv69+f8/fj3/fz3/fz8//v9//v9//7///////////////////////////////////////////////////////////////////////////7//v/+///7/v77//37//v7+/Xk1cykfHGPUUqZTkijT0ajTkafTEabTEeYTEmXSkqYSUuXRkyZREyXRE2TVFz59PX+/v/+///+///////+/v/48PaIQFWPPFWOO1WNOVaOOFaOOFeON1iMNliMNluRNFyRMlyKNVqLSGTHnrP37PT++/76+/v8/vz+/fv+/f38/v79///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///////////////////+/v7+/v7+/fn9/Pr99v3j0Oafb6F9LXeGJH6GJYSDJYWFIoiBJYR5Nny1kLf04/T++P79+/z+/v3//f3//P/9//79//7//f/8//z8/fvKpsF7KGyCHZ+CGNp6EOZ9EeN8E998E+N+E+F9EeZ9E+OEHMCBIoCIPXLy3vH5+vz9//z8/v7+/v/////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN7EuN7EuOCE+GFGrCAInN/K2d4LWp2K255LWl8LWp8LWp8LGl7LGl7LGl6LGl5LGl5LGl5LGl5LGl5LGl5LGl7LWd6K2p6LGh8LGiAK2mCLmR1Mlzozt/+/v79//7+/v/7//79//79//78//38//38//38//38//7//v/+/v76/vv/+v+4j6x/JmmAHJqAFdyCEeOBEON+EOR/EOSAD+V6D+Z6E96HGsV/IXiDSHD78Pv9/f7//v79///8/////////////////////////////////////////////////////v////////vPqXG+fCG+fB6/fiHAfSC+ex+9eh68eR27eBy+eBm5dx21dCG3chy3cx+nbym0jVrm17f9/u/7/vj9/vz7//37//7//////////////////////////////////////////////////////////////////////////v/+///9///8/fz//Pj17eW6mYmVX02XU0GdUEOhUEaiUEWfTkacTkeaTkeaTEmbS0mZS0qYSEyaRkyYRU2UVVz58/X+/v/+///+///////+/f/48PWHQVOPPVSOPFOOOlSPOlWPOleQOViOOFqMNluMN1iNN1aPNVmQMlyIMl6OVXjSs8n98/v//P79/fz9/v38/v79///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///////////////+/v7+/v79/f3/+v704/SyhK58OHt5JniCI3uGI32GJX+GJoGHI4eGIIiCI4N/KoGKRY3MpM377Pv++f7//f///P/9//38//3//f/8//36/vrw3+x9OWt+IoWCHMt9EeN/EuB5FN97FOGBEuKAEeV8FOOCGdZ/G555JGy+kbT99v76//39/v7+/v/////////////////////////////9//7///7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuOBE+KEFsSCGaqDHKWCH6GEHKiEG6iCHaeCHaeCHaeCHKeCHKeDHKeFHKaFHKaFHKaFHKaFHKaEHKaCHaWBHKeAHqWDHKiHHpyDI3p7KmLqzeL9/v79///+/f/7//79//78//38//38//38//38//37//7//v///v77/Pry5O+FRXJ+H3yBG7yAE96CD+R7EuN9EeN/Et9/Dud8EOR7FtaFH6d/Kmuyh6P9+f77/v7+/v39///8/////v///////////////////////////////////////////////v////////rKqXm5fSjAfh6/fiDCfyDCfiG9fCG7eiC8eRy6eB66dR2/dRy+dB27dCC4cyG2cCSnbC6+m3Py5dH//fb//v7+/v/////+/v/9/v/9///+///////////////9///9///+///////////////////////+///9///+/f/9/v/+//369O7NsqqWY1idWESjWEGkVkChVEOgU0WhUkabUEacT0aeTkedTUicTEmaS0qbSk2cR0yXRk2QV1348vP8/v78///+/////v/+/f/27PGCQVGPPVKQPVOPPlSRPVaSO1aQO1eROlePOVWMN1eLNlmKNlqJNluIM16KMGR7MVySYn3cxdP++P38/f77/v77/v39//7+///9///7///9///9///8///8///9///+///9///9///+///+///+///9//////////7+//7+//7/+//57PjDoMGBRXt/KnOFIXmFInyBI3p/JHyDIoGGIoKCJICCJn+KJYGNIIeLIot8J3+LUZHQtNT99vz///39//38//3//f/9/v35/vn++/2gb498Kmx+HLF/FN5/E996E+F7FOGBEuKBEuR8E+N/E+KCGsF9H3qIP3Tz4PD5/v79/f7+/v/+///+///////////////////////9//7//v7////9//+8lrKAI26FG7V7Fdx4E+F7EeR5EuJ6EuN6EuN6EuN6EuN6EuN6EuN6EeR7EuF7EOR6EeN7Ftl9E959EuF9E+B9E+B9E+B9E+B9E+B8E+B7FN97FN97FN97FN97FN98E998E+B7E998E95+E+CCGM99H5R6KWXozOL8/v78///+/v/9/v38//38//38//38//38//37//37//z+/f7//f79/f26l7B7KmZ+G5mAFtV/Et+BD+V6EuJ+EeN+FNx+D+Z+EuJ7Gsl/IIp9MGLkzNz8/v/8/v7//v7+///9/////////////////////////////////////////////////////////v////vr4cm2k1uyfSrBgSDCgSC+fiC7fCG8eyC/eh+9eR29dxzAdx68dh+5dR+5cx+6ch+6cyGycCeqeD7MtJD59OT//vn+/f7+/P79/v38//z9//7//v/////+///8///8///+/////v/////+///+//7+/v79/f78/f/7/P799/biz8Wfc2GYWEWkV0SlWEKjV0KhVkKgVEKiVEOjU0OfUUShT0WiT0acTEWbS0eeSkqdSU2VS0+daWzbx8f8+fn8/v78/v7+/v7//f/9/f778/ewi5aNSlmRQlOVQFSUPVSTPVWQPVaOPFiNOleMOVeMNleON1iKN1mGNVuJMV+KMV6HM1yCPl6pfpXu3On9+f38/Pz7/fz9//38//76///+///9///8///7///9///+///9///9///+///+///+//7+//39/vz9/fz9/P399fzXu9SUVouAK3OCJ3aCJHaFJHmEI3qFInyEInyEIn2EIn6CIn+DI3+FJICGJISFIoeFIoV8KX+IVIzu4e/8/Pz+/v////////7///38/fn9/fzYvc98MWB+H4+AGs98E959E999E+J9EuR/EuR/E+N/E+KCFtmGHJl+Imm1g6j9+P78/P7+/v79///9///////////////////////9/////v7////9//+8l7KAJG6FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EeR6E+J7FNeBHZSAKmPqzeH+/v/9//78/v/+/v78//77//38//38//37//36//37/vr+/P79+/zx4ex7OWiEI3yCGb5/FNx+E+B8EeN+EOR/EeN9EuF/EOSDEt1+IrV7IneZXYb78/r+/v7+/v7////////////////////////////////////////////////////////////////9/v/9/v7+/vf8+eLby6W1i0e4fyrAfiLDfSDBeiK+eCS6eh+6ehy7eR24eB64dh68cx+9ch+4cx+0dCCzciasby+vhU/ezKz+/PT8/vv9/vv//vz//v79/////v///v///v/////////+///7///+/v/+/v/9/f7+/v3//vrv49W7koGfWkWmV0CjWD6gWT+kWEGkWEGjV0GhVEGjVEKkU0OkUEacUEabUEefTUahTEmYTEmZXF/Jq63z8vH3/fv8/Pz//f3+/v7+/v7//f/5/P36/P3/+v7kzdWib3uNQFKTPlORPVSRPVWQPFaMO1aLO1eLOFeMN1iMN1mKNliHNVmKM1qLMl2JNV6AM1uKR2rBma/98Pr8+v77/v79//7+//7///7///7///7+///8///7///9/f/9/v/9///8///8//77//74/fz++P/t1Oqicpp5MGuFKHOFJ3aCJnWCJHaDI3iEI3qEInuDIXyCInyDI3qDI3qEIn2GIYGEIYWBJYp6LoCuf6715vP9/P36/f7+/v7///////7///39/vv+/v357viNUH6CJ3eEH7Z7FN57Fd59EuN9EuR/EeV/EuR/E+OAFOCGG8OBH39/MGnq0ub6/P79/P7+/v/////////////////////////9/////v7////9//+8l7KAJG6FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EeR5E+J7E9eBHZSAKmPqzeH+/v/9//78/v/+/v78//78//39//39//38//37//39/v36/P779v2veZt8J217HJ+CF9N/E91+EuF8EeN+EOR/EeN9EeSBEOKJGdJ+H5Z0KmvGqMH//f3+/v7+/v7//////////////////////////////////////////////////////////////v/9///8///7/f37/Pr9/vn89+bVuo68hTzAfia+fSK+eyDAex/Aeh6/eh64eR24eB69dR++dSG5dR66dR28cx27ciCycSSocC25lGbo3Mf+/Pn+/f7+/v78//39/////v///v///v/////9///+/v///f/+/v77//n27uLHpZOfZESkXTyrXDypWTuoWj2nWT6lWT+kWEGkWEGkVUCkVUKkVUKfVEGgU0KjUESfT0iTVlG2k5Dy6Oj+/f37/v77/v38/f36/v76//79/v7//v78/v74/v77/v78+/z89/rQt7+WYG2NPFCXPVOUPFORO1SRO1WNOlaJOVeLOVmMN1iJNViJNFqLMlyNMl+PMWCPMF+GMVmTV3bXucz88vv//P78/v76//77//78//79//78///6/v/4/v/7//79//78/v38/f76/P7z4/G4jLB8NHCBKHGFJHSII3SFJHWDJHWDJHWDI3aDIniDInmGInmGInqDInyCIn2CI3uDJHl9LXmdaKHjyOX+9v78/fn9//r+//7////////////+//7+//3+/v7++//Fo798KmODIpZ8F9Z7E+B9EuN9EuV/EeV/EeV/EuR/EuKAFNuBHqd+ImeaXIv57/f9/fz//v/////////////////////////9/////v7////9//+8l7KAJG6FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EeR5E+J7E9eBHZSAKmPqzeH+/v/9//78/v/+/v78//78//3+//3+//38//37//38/vz6+/zVt8+BLWOBH4x+Gcp+E95+E99+EuJ+EeR+EOR+EeN6EeSAEuKEHbeCI3t/RnT48vn8/Pr+/v7+/v7//////////////////////////////////////////////////////////////v////////7+//39//39//79/Pz//fj06dDIqXSxgDG7gCC/eyDEeSPEeSC/eR67eB68dh+5dx+6dh6/dB26dB60dCC0ciK2cSCxbiOucj/Co4Py79z6/PX+/fv9/vz9/v39/f7+/v/9//79/v39/P38/Pj8+Orav6moc1ahXz2rYDitYDmqXjmkXTukXD2mWT6lWj+lWj+lWUClWECjWEGhVkCfVz2iVkGZVkelenDk1dD++vn7///+/v///f///v/7///7//77//78/v7//v7//v7+/v7+/v78/f39/v7+/f726/C/mqWLTVyJPlCSPVOXPFSTPFaLO1aKOleNN1mNNFyMNFyMNVuMNVyMM1yOMVyPLVyIMVx/N1uebIbn0uD9+f76/f/6/v75/v37//79///+/f/9/f37/v31/fz5+/778vvMrcGKS3h/K2uHJHOHInWCJHOAJnGCJHODJHSDJHSCI3aBIneCIniAJHeEI3iKIH2GInt9KnWVWpDbvdn99Pr+/fv7/v79/v///v3///z///////////////////7///79/v778PaHR3V6I3iCH75+FN99E+J9EuR+EOR+EOR+EeN+EeN/EeCAHMqDI4x8KGnAl7f++fr+/f39/f39/f3////////////////9/////v7//v79//+8l7KAJG+FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EeR6E+J7E9eAHZSAKmPqzeH+/v/9//78/////v79///9/v7////////9/v78/v7//f3w4uyLRXh6InF/HrOBFN1+EuB+EuF+EeJ+EeN8EeN7EeN5FOF+F9V8H5V5Jma+mbb9/fz//f7+/v7////////////////////////////////////////////////////////////////////////+//7+//7///7///78/f/8/Pz8/Pr9/fTo3L3Bn2Csdyi4dyXDeyXDeh/AeR+9dx+7dx68dx6+dR66dB+2dCC0cyC5ciC5cCC1biKwbSiseEHVu5j89uP//fb//vr9/v39/v79/v3+/vn9/fLj0r60gmKsXzqyYjmoYTeqYzeuYDeuXjioXjukXTykXDymWz6nWz+mWj+jWT+fWD+eWkKWVkOcaFrUvbL7+fP8//z+/f3//v////7+/v79//78/v7//f7+/f/9/v79/v7//v7//v3//v3+/v3//f7//f78/f78/P7q3OGngYuERFSRPlSTPFWNPFaMOlePOFiONlqNNliNNliMNlmKNViJMlqMMFyMMFyNL1yJMl2CPWGyhKHy4u7/+P/8+/37///8/v///f/++/z+/P38+P7dxtmSXoR6LWKDKGuGJG+IJHKDJXB/Jm+AJm+CJHKCI3OCI3OCI3SAInaAIneAI3eDJXiCJ3OPRoHNpMf88Pz9/P79//r9/vn+/v3//v///v////7////////////////////////+/v78+/vDpL51LGOBIY+BGc59FOF9E+J+EeN+EeN+EeN+EuJ+EeF/E9+DHMB7H394Lm7bv9b+/P39/f39/f3////////+///////9/////v7//v79//+8l7KAJG+FG7V7Fdx4E+F7EeR5EuJ5EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN4E+F8EeR6E+J7E9eAHZSAKmPqzeH+/v/9//78/////v79///9/v7////////+///8/f788fudaY56IXF6G6F8FtN/EeF/EeJ+EeJ+EeN+EeN8EeN5EuN9E9p+HbJ7InWJSHX36fT//v3//f/////////////////////////////////////////////////////////////////////////9///8///7///9/////v///v3+/v78/f39/v3+/vn9+vDi0aS4j0m4eyzCeyPCeh/AeR7AeBy/eBu8dxy8dR6+dB66dRy3dR62cyK4ciK9ciC9cSSybyyxglLbyrX9+u39/vn9/vz//vjw5NS/l3qmZ0KrZjinZzWrZDa0YTivYzeuYTarXzenXjioXTmqXDqlXD2mWz6nWz+iWkCZWkGZY07Eopz47uv+/vz+/v79/f78/v7+//38//76//3+/v3//f7+/v7+/f/+/v79/v7+/v7+//39//39/v38/v76/v79/v79+/z+/f78+fvfxc6iZ3aJPVOLPFWOOVWQOVaNOleOOFWPN1WPNleMNFiJM1mHM1qKM12QMWCTLmCPK12HLluESGbEoLX36/T9/f78/v/9/f/6+f3s3Oimd5KANmN/KGSAJWyBJm6DJ26AJWuAKGuBJm2GJHCFI3KDI3KCI3ODInSCInaBInaGIniHMXqse6b04vP7+vz8/v38/v79/f///P///v7///z8//78/////////////////////v/////+/f37/P717/aQWHh+I2uBHrF+Ftx+E+F+EeJ9EeJ9EeN9EuF8EeOCDeqBEt5+H6x6JHuBQnLp1uP+/Pz8/fz+///8///+/////v/+/v/+/v////79/v68l7J/JW6EHLV8FN54E+F6EeR5EeR6EuN7EuN7EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN7EeN7EeN7EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN6EuN7EeR6EeN5EuF8EeR5E+J8E9iAHpN+K2PqzuH+/v/+//79/v/+/v79///9/v7+///+/vz9/fz69fmxjKl4KWh7II1+FdB9EOR/EeN/DuV+EOR9EeN+EeN9EeN8EeOFFtB/HI18KGfNp8T9+fj9/f37/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+//79/vj59N/UuouygDe6eyHBfB7BexvAeBi9eBq6dh25dR67dR27dB25cx+5cx+5cx+5ciG5cSS1biisbjK6kWLq2r/68uDMsI6pcz6paC+sZzKvaDavZjeuZDWuYjWuYTeuYTisYDmpXTmoXTqmXTujXDynXD2lWz+YWkWuiXvq3tb//Pr///7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/f79/P368PXHqLOGTF6KPFOROlWQOleNOVWNOlaNOFeNNliNNFmLNVqMNFyMMV6NLl2OLl2NL12ILV2BL1qNUHHWt8v98vz57/i1j62AQWt+Kl6IKGSGKGWAKGeAKGuCKGmEJ2qEJm6CJXCBJXCBJm+CJHCEI3OGIHOEJHR8J3GbXpbgv93/9P/9/f36/vv+/v7//f/////////////////////////////////////////////+//39//z8///6/f7YvMp+MGOBIYZ8GMaAEd9+EuJ5EuJ7EOZ/EeF+EOR/EeJ+EOSAF9V/IKJ8JW+SVHz15vL6/Pn7//z8/v/+/v/+/v///v/8/v/9//3+/vu7mLJ+JW6FGrWCEON9EuF+EOR9Duh9EOV9EOR8EOR7EeR6EeR5EeR4EeR5EeR6EeR8EOR9EOR+EOR+EOR+EOR9EOR7EeR6EeR5EeR4EeR5EeR5EeR7EeR9EOR+EOR9D+V8EOV/EeN7EOV3EuR+E9t/HpN5KmPpzeH9/v/9/////f/8//36//78//77//36/vr/+/3EpLt+M2h7IYV/G8J/EeJ+EOR+EeOAEOR+EOR6EuN7EuOBEeKIE9uGG6yCHniXWon17fn9/f7+/v78//7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/f76/fv8/vX38dPQsHi6fTC/eh+8eh22eB+5eBu+dxm7dRy4dB+5dB65dB65cyC5ciG5cSO6cSS9cSO4ayOwazGtbz6pajCybSquay2uaTCvaDOxZzavZDWsYzSqYTitYTmvYjutXzmqXjioXjitWzygW0CjdmLeyr7++/b8/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//f7//P37/P35+v305e66i5uPRVuOOVKNOlONO1WNOVeNN1mONVmNNVqMNFuMMl2MMF2MMF6NMV6RL1yQL1yLMFyBMl2cV4CPR3F9LGODK2aHJ2SJJmaGKWWBKmeDJ2uDJ2qCKGmAJ2yAJ2yAKGqEJm2FI3GBIXJ9JnCDRHnLq8f+8//9+f79/f78/vv+//7//v///v/////////////////////////////////////////////+//77/v39///+//799vyfcZF6KGx+Hp2CFtx7EuJ8EuF/EeGBEON+EuF+EeN8EuF9E96CGMuAG56BJ26VVof04/P+/P7//P/8//37//7///77///9//7//v27l7J9I3CJH6uJG8uHHMmKGc6JGs+DG82AG89/G899HM98HM98HM9+HM+AG8+BG8+CG8+CGs+EGs+DG8+AG89/G89+HM98HM98HM99HM+AG8+BG8+CG8+CGs+EGs+DGs+BG82EGs+BGtB7HcmBGsiBH5J7KWTqzOL9/v77//7//v/9/v7+//3+/v/8/f/+9/7Rrcp3LmN8IH+AGLd/FN19EuF+EuF+EeN7EuF+EeOAEt99EuB9EeKAHLt7HoB/MnLmyOH++////v7///79///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v3+//39/v79/Pz+/fLt4sLCnmCyfiu4eBy+eBy6eB+2dh63dh26dh26dh66dB+5cyC5ciK3ciO1ciW6cSK5bySybSqvbCuybSuwbCyway6waTCxaTSxZzawZTawYjauYzerYzioYzenYTekXzebaU/LrZv58ej+/fv9/P7+/f7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v76/fz6/f38/f7/+/7+9/3k0tqeb32EQlORO1KUOVWQN1iLNlmMNViMNFmMNFyMM16MM16LM16JMlqMMVyLL16GLF+HK2KJKmOKKGaJJ2aJKGeIKGaGKWaGKWeGKGmDKGmCKGqCJmyDJ22EKGmGJ2t9J2x5NHGyg67y4fH+/P74/vv5//z8//3+//7////+/v7+///////////////////////////////////////////////+///7//7+/////vz8/v3t3OuBQWqBI3aBG7t9EuB9E99+EeJ9EeR+EuJ+EuF8E+B7EeSAEuKFF8+CHJaDI3CeXob14PH//P77//v7//78//37///+/v///f65mbB7KWJ+I3d7H4F9H4F/HId/HoN9H4J8HoV8HoV7H4V6H4V6H4V7H4V9HoV+HoV+HoV/HYSAHYR+HoV8HoV8HoV7HoV6H4V6H4V6H4V9HoV+HoV+HoV/HYR/HYR/HYR9H4J+HYd9HYZ7In+AH4SGJHJ4K2DpzOH9/v77//z+//7//f////36/v789/3TrMR/Mmt8H3+BGrOBFNl7DuZ8EeR/EeF+EeN7EuF/EOSBEON7Et9+GNF+G49+KWS1iKj++P7+/v3+//3+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z//v77/v/9/v///v39//38+/HezaqvhD62ex69exm8dxy7dx67eBy7dx66dB+4ch65cyC4ciK3cCW2cSC0cR+zcCK0bCe1ayqwbCixbCqxay6xajGxaDSwaDatZjSvZTSvYzijYTmXZD65lnPu6Nv//Pb+/P3+/f/+/f/+/v3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v78/v76//3+/v3//f7//f78/v/7/f779fnRtr+SWGiIO1GQOVWROFeLN1eMNlmMNVuMNVyLNFyKNFuGMluJMVyJL12ELl6FLV+ILGGILF+GLGCFLGGFKmKIKWWKKGeFKWaDKWaEJ2mDJW2BJGyDKmp6LGSaZI7gzN/++f/+/f7+/f/9/f79/f///v///v/+///8//38//7////////////////////////////////////////////+///8//7+/v7+/vz3/v35+/3PrL9/LmV7IIqEHMeAFNx6EuB3EuR9EeV/FN59EuF6EOV8EuKCEuKGHMZ9HY6DKGiYWH/u2uv8+/3+/f76//38/v7+/f///f3EqryOUXaPT3mOT3qSTXqVS36TTXySTniSTXmSTXiRTniRTnmRTnmRTnmRTnmSTnmRTXiRTXiSTHiSTXiSTXmSTXmSTnmRTnmRTnmRTnmRTnmRTnmSTXiRTXiRTHiSTXeRT3eQTHyQTXqQUHSSTXmUTniJVHfo0+P9/f76/vv9/fz+/P78+vz++P69mLJ5MWCAJXmCHbOCE9t9E956EeN9Duh/EON/EeN/EeR/Dud9Dud9F9SBIKmDH3GgWX/36vP4/vv+/vv+///9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/v/+/v/+//38///8/////v/8/fv7/fn49eTPtoe3gze4eR67eRu7eRu8eR67dh+5cx65dB65cx62dB2xcx2vchyxcR2zbyGzbSWxbCeybSiybCuxay+xaTKwaDSsaDKqZjekZD+ugmfi1L79/e78/fr+/f3//f/+/f/8/v/6//39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v79/v79/v7+/f/+/f/9/P79/P737/S8nKiJSl+KPFSKOVeKOFmMOFyMNlyLNFuLNFqLMlqOMFuNL1yJL12JLl6KLV+ILV2HLV2GLV2HLGCIKmKJKWWFKGSGKGSGJ2d/J2d3LmaIT3vQrsn98fz8/P34/fn9//3//f///f///f///f////////79//79///////////////////////////////////////////////+///+//////79///6/v77/Pz99/uvgaF2KGp+H4yGHsp7Fd15EuF8EuR/E+B+EeN7EOV7EuF/EuKDF9yAH8mAIJmBInOKRHvewtn/9f/6/P3//P7+/f/+//z89/v88/v79fv79vv89vv89vv79vv69vv79vv79vv79vv79vv79vv79vv69/v69/v69/v69vv69vv69/v79/v79vv79vv79vv79vv79vv69/v69/v69/v69vv69vv69vv79vv69/v69/v7+Pv79/v69vv88/v99/z8/f79/v3+/f3//P746faxfqZ8LGh9IoCCHbiAF9V+EOR7EuF7EuJ+D+aAEOR+EOSAEOR+DuaAFdqEH657InqANWjrzeH8+/z7//v///39///+//////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//3+//3//v7//v/+/v/8///9/v7+/v38/vz9/vTv5cXAnGKweCe5eR27eh+8dx+6dR+6dR+6dRy4cxy0cB+1biG4byK1byOzbiWzbiWzbiezbiqxbC2xajGyaDS0aDmqc0rUu5769+f7/vn7/f7+/v39/v38/f39/v7+/f/+/f/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v78/v79/v7+/f///f///f/8/P37/v79/f7/+v7u3OameYmGP1iHOVeMOFuNNlyLNVqJNFiLNVmNMlqMMFyKL1+JLWCKLGGKLGGJK2CJK16IK16HKl+GKWGHJmOHJ2KDKWKAOGm3jq/15vT8+v37/Pz9/v3+/v3////8//77///8//79//39//3///7////////////////////////////////////////////////////+///////+//76///+/P///P75//327faQU3+DLG9/IJ6AFtmBFNx8FOF+EOV/EeN9EeN7D+R9EuB7E+F+EuGCGdCEH6CCInCENW3Gn7z69Pr//P/8/v/6//v8/Pz+/f77///8/v/+//7+//z6///7/v/+/v/+/f/+/v/+/v/+/v/+/v/+/v/+/f/+/f/+/f/+/f/+/f/9/v/+/f/+/f/+/v/+/v/+/v/+/v/+/v/+/f/+/f/+/v/+/f/+/f/9/v7+/v7+/f/+/v78//77/vr7/v78/v/+/f7//P7t3+ibY4t4KmGCIIaLGr2FFNt+EuJ9EeR8Dul9D+Z/EuCAEON/D+V+EuF+EuCCGb+DH4F9LWfHpb38+v36/fz+/vz///78//////////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+/v7+/v/+/v3//vn+/PDh0LG1jU6teSm5eCK6dSO5dSG4dR25dR20cyG0cSO4cSG6cSG4cSK2cCS0byezbiixbSurazGnbkHFpJD37d///vf7//37/v/+/v/+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/f3//v//+/3fx9CaZ3iGOVWROVmKN1aGOFaLNliMM1iNMVuMMF2LMF2JMF2KLl6ILl+JLWCKKmCLKWCIKWGHKl6BM16kc4/s1uX/+f79/f/+///+///////////////+///+///////////////////////////////////////////////////////////////////////////////////+///+/v///v79//38/Prs2OeERmx8I3KAG6uFGdZ+EeV8EeR9EeN/EOR9D+Z5EeV6EOV8EeN+EuCFF9KFHa1+H399KWiibZTt2+r6+vz7/f39/fz7/v37//7//v7//v7//v3+//z+/v7//v///v///v///v/+//7+//7//v7//v7//f///f///f///f/+/f/+/f/+/v/////////+//79//3+/v7//f///f///f79/v78/v7+/v7//v/+/f/9/v/8//36/vr8/vz7+/369PrLrcN+P2x4JHB/HpeEGsiCFNx/E99/Et97EeN+D+WBD+R+EeJ+EeODDuSBEeGDGcWAHZB4KWu1h6v+9/37//z+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7//////v///f7//v3//vr//fb69OPXupOwfz+yeie4eR29eBm9eBq6dhy6dRy6dB23cyC0cSa4bim1byazbySrby+7mG7r4Mv/+/b+/fv8/f37///+//////7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v79/f76+/758vjKrrqNVmqKPFeQN1WNOFaINlaGNFiIMlqLMVuOMFqMMFuKMF2LLmGJK2CELF98MF+QXXzbwNP99fz+/P78/v39/v7+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9/v39+/vaw9N9N2eEIn2CHKyDFdp/FN58EuF8EOV/D+V/EeJ/EeJ+EuF8EuJ+E+GDGtWBH7p6H496I3eGP3XJor367/n9+v39/f7+///9/v/9/f/+/f/+/P/+/v79//3//v3//v3//v3+/v7+/v7+/v7+/v7+/f7+/P7+/P7+/f7+/v7+/v7+//3+//3+//3+//3//f7//f///P//+////P7//P7//P///f///v7+/v78//39/vz8+/3+9/3u1+ajZ458LWx7J32AIauEHMt+EuB8EOZ8EOR9EOV+EuGAEeJ/EOR6EuJ5E+F/EuCFGMiDHpV6JmyicZj37ff9/f7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7//////v/+/v/8/v79/fz9/fz8/P39/Pz07NbFpWyreCi2eCC2diC1dSC4dB24dB20cyGxciO3cyGtbyyyhlXj0rP//e/+/fz6/f37/f77/f/+/v////////3////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v78/P76/f78/v7z6e63kaGBQ1qNO1eNN1aMNViMNFuLM1uKM1uKMluMMF6OMGGFL12DRmjHqL748Pj9/P76/v36//z6/vv9/vz///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v35/v76/PvZt8l9MGd8JHqHHbGJGNZ+D+Z5EOV8EuGBD+WAEOR+EuB7EuF8EuV8EeV+FOCHGtCCGqeBH397I2aaW4jZu9L99v39/f79///8///+/f///P/+/v79//3///7///7+//3+/v7+//7+/v7+/v7+/v7+/f/+/f/+/f7+/v7+//3+//3+//3+//z+//3//f///f///f///f///v7//v7//f7+/v78//v9//n//vr//Pz35PG3jaqCO2yAIm6CGY2HHrx/GNZ9FOB6EeR6EuJ7EuF9EeN/EOR/Et99EuB8D+d/Et+CGsaDHZR9JHCUX3/37/P6/P77/f7///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/9/v/8/v/7/v/7/fz9/ff9/vz//Pbr3L3Al1ivdSyvcym0cyO6dB68diCycCG2g0fXxaH8+uz//vr9//75//38//v+//z///7//////v/+///////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7//v7//f///v79/vz9/Pz/+//s3OatfpCEQVuLNViUNFuSM1yNM1uQNGCDMl2AQGa5kKn26PP+/Pv+/f39/v78//38//79/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/7//79//z++f3MrMd9OGqAJHuIG66HFNd6EeF2EeJ6DuZ8DuZ7EeJ8E99/E+CAEuOBEeSAE+GEGNmIG8GHG5yBIHp9KmyXY4jYvdH97/n+/P37/Pz6/f39/v7+/v3+/v3+/v3+//3+/v7//v3+//3+//3///7//////////v/+//7+//3+//3+//z+//v+//39//78//77//37//38//78//37/vv9/f3+/Pv/+/vt3ui0kqqAO2iAK259HYZ+Gq6BGc+CE9x+EeJ9EeN9EuF9E99+EuCAEON/D+V+EeJ+EOKDD96JGcR/HY95JWySXYjz5PD+/vr//v3//v////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+/////////////v/+///+///+//3///r+/vv//f39/Pn6+eraw6GufkO5dSG4dB6tejjStY737t///Pb+/fv9//v6//r7//v///r///v///3//////v/+/v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9//7+//7///7//f7+/f79/f779vvbxtGZZnuIPVqQOFmRNlmHO16kdZDl1eL7+P39/Pz//vr//v7//v///////////v///v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///v////v//f78/P/89/7Prch2M2d9JHuIH6eCGc55E954EOJ4EON6EON8EuF/FN+BFN+CE+B8E+F/E+KDE+GEFtiCGbiFG5J+H3Z7Km+QU4XHpMDz5PH89v7++////P///P79/P39/f7///7///7+//7+//7+//7+///+///+//////////////7///7///7+//77//77//77//79/v/+/P79/P74/P358PrfxdqoeJmEO3J8InF8Hn2FHKOEGMd6Fdp3FN99EeN/EOR/EOR/EeN/EOR/D+V/D+Z+EeN9EeGBFNiJG71/Hop5KWyUX4jy4/H8/P/9/v////z///7+/v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9//////////7///7///7///7//v///f/9/v/5/v36/vz6/fv9/fn48dvHqn/HrID27tT9/fX8/vz5/v76/f3+/vz+/v3//v/+/f/9/v/8///8//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//z+///9/v/8/f78/v38/vv7/vr9/Pv++PzKsb2QXXCgZXrdxdH+9vz//f3+/v38/fz7/v7+//////////////////79//7+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//////39//z9/v3+/P77+v3StM18OWp9InOBH6F/Gst8EeF5Et95EeJ6EOV9EuR+EuN+EuSDE+F+EuJ5EeZ6EeZ+Fd2CG9GIILWAHJh7HoF5KG+AOWynbJPNsMXw4+7/+f//+//+/f7//v7///79//79//79//79///9///+/////v///v///////////////v/+/f/+/f/+/P//+v/87/vfydrAk6uOTnp3KWZ+J3KAIIeEHKOGGsh/F9V7E+B9EeJ9EuB7E99/EuB/EuB+EeJ+EOR+EOR8EuF+EeOBF9eBHLd8Hot2KGmbZ4z37PX+/P3+/v3///3+//79///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///+//////7+//7//vz9/Pf+/fn///z9/v3+//78//39//3+//3+/v3+/v7+/f7+/v/+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7////+///+//////////7+//7+/v7+/v7//v/59ff79/r//f/+/v7+/v7////////+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///////+//7//////v79/v3++v3fxtqERnZ4JHR5HZh6HMF3FNt4EuF7EOSAEeWDEeSCEuOBFOB/E+F8E+N8E+R6E+N5FOJ+FN+AFtaBHMZ/HqeBIYyEJHl5J2x4NG2QUn+1hajRrsjo0uXz5PD79Pr++/79+v3++v7/+/7/+/7++//++v/++v/++v/++P746/bu3O3gw9vAm7ikb5SEQXN8LmyGJ3F/H399HJmAHbaBG86AF9l9FN16EuN5EeR7E+B8FN59E9+CEeF/EeJ9EeOBEOSBEOF/FN5/FtCGHbKDHoR7Kmuvg6X37vb9/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//3+//3+//3+//3+//3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/f77+P/w3uyRW316KWh9JIR+HLSAG9J/EuOCD+iBEeV7E+J+EOZ/EOZ/EeV/EeR/EuN/E+KAEuOAE+F/Fd1/F9WHHs+EGcCCGaOEHpCCH4KAInh6I256LGuCQHKLVXuVZoikdJmtfKS2ha2/jbO8ja6xhKSqf52aa42QWoKIR3eBNnB6KWx8JnN6IXh9IIZ/HpaFHbCEGsSBFdZ/EeF+EON/EeJ9EuB9EOR+D+Z+EOR+EOV9Duh7EeN+EuF+EeJ7EuF+FdmFGcp/HZ99IXp7MmW/nLX89f3+/fz//v3///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///7+//3+//3+//3+//3+//3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6/fz6/v78/P757fSyg558L2N9IXWDHqCCF899EuF7EuJ8E99+EuB+EuB+EuB/EeCBEeKDEeOBEeN/EuN9EuV6EuV7E+R8E+J+FeCBF9eGG8yEGryCGq58Gpx/HJOBHYl8HYB+H398Hnt6HnZ6HnR5HnZ5IXV7I3Z8IHmBH4KEHomDG5GHHaGHG7CHHcKCGNJ/Fdx9FN57EuB6EuJ6EuF9E+F/E+B7EeR+EOSAEeKAEuB9E+B5EuJ9EuF+EeJ7EuF5GNiBHbqEGIx/JWyGTHTcxtX9/P77/f/9/Pz///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///7//7+//7//v39/f789PzRssuARHN8KG2EII98G7V+G9SCFNl/E998EuB7EeN8EOR+EOWBEeV/E+N9E+J8E+N7E+J8FOB9Fd97E+N6E+N8E+B/E+CBEuCAE9uDFNaGFdCGGMmGGsWGG8KEHLyEG72FGsGFHL+FHr6GG8KJGcqGF9B+Ftd/FNx/E95+E997EeN7D+d9EOV8EeR7EuN6EuJ6EeN7EeR4EeR6EuJ9EeJ9EeJ7EuJ4E+F/E99/E92AFsuAGaR+HnqCLGqkcpPy4O7++//8/v7+/f7+/f/+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v////7+//v9/vn7/vr3/frq3eymeJp6LGF8J296HpKEG8OEFdp+EOF7Dud6Dup7D+d+EuN+FOB+FOF+E+J+E+J/EuOAEuR8E+J6FeB5FN95EuN5EeV5EeN5EuJ5E+F6FN58E998EuJ7EuJ6EuF6EuJ7FOB7Fd56E996EuN5EeN4E+B6EuJ9EeJ/EuF/EeGAEeJ/E95/EeF9EOZ8D+Z7EOR7EuJ6EuF6EuJ6EOV6Dul8D+d9EuCBF9GAHLCAH4WDJXGIQXPNsMP8+Pr7+fj+/fv+//z+//v///v///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9//////3///37/v37/v7+/fz+/f779v3WvdKRUn5/Jmx9H3x/G6SEHcJ/F9R7EeF8EOV+EuN/E+KAEuJ/E+J+E+J9E+J7E+N6E+R6E+J5EuF5EeR5EeV7EuJ6EuN5EuN7E+B9EuB9EeR8EON7EeJ7EeR7EeN7EeJ7EuJ7EuF7EuF9EeN+D+V+EOR9EuF7EuF6EeN6EeR7EeN7EuJ9EuF9EuJ+EeJ/EeN9EuJ6EuF9FN6CGNCCGbeAHo1/I3eBNW2vgaHz5vH8/fz9/vn5/fv6/v7+/v///v79//79///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///////////9///+/v///v/+/f76//36/f346ffGnL2CQnF9JXKAIol9H6V8G798F9V6Ed99E99/E+B/EuN/EeN+EuN+EOV8EuF6E+B5EuN5EeR5EOV7D+Z8EOV8EeJ8EuF9EuF9EeJ8EeJ8EeJ8EeN8EeJ8EuJ8EuF8EuF8E+B9E99+EuB9EuJ8EeN4EuN3EeV6EOV7EeR8EeF+EuF/EeGBEuN/EuN9Ftx9HNB9HbV9HJN9HnZ5LmOdZIzjyd/++f75/fz9/v3///7+///8/////////v/+/v/+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/+///7//78/f3/+f735vS3lLN9RnV3Kmx9IXuBIJt/HrV+Gc5+E95/D+d9D+h7EeR6EuJ6EuF5EeR5EeV5EuN6E+F9E+B9EeN8EOZ8EOZ8EOV8EOV8EOV8EOV8EOV8EOV8EOV8EOV8EOV7EeR6EeR5EuN7EuN9EuJ/EeF/EuB8FN98EuN8EOR+E+J+Ftt+GdN/HcJ/HaWAHod8JHJ3L2ueaJXgw9j/9v///P79///9/////v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///7/v36/fr7//r7/Pv16vPGo7qUVn95LWh1I3B5HIZ+G6CDG7qBGM19Ftd6FN58E99+EuF9EOR9EeJ8E+B9EuB9EeJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ7EuJ9EeKCEON+EeJ8EuJ8EuJ/EeKAEeF8E+CBFd+DF9WFHMSDHqp9HJKAIHiBJm6JOnKnc5jhydz69vr8/fz6/fn8//v9//z+/v7//v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7////////+/f79/v78//z9/P79+//9+/768vjZvdKndZ18NWt3J2p3InZ6HoaDHp6HGrGDGcR/GdF8Fdh6Fd14E+F1Eed4EeZ9E+F9E+F9EuJ9EuN9EuN8EeN9EuN9EuN9E+F8EuF8EuF8EuJ8EuN5E+F3FN54FNl+F9qBFtOFFcCFGa99GZV/IoJ8JW19LGeKUHq/mrTu2ej/+P//+////P77/v38//3+//3///7+//79///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+/////////v///f///v/+/v39//77//77/vv8/f3++v756PjMrMefc5OERG5+LWiEIXR/HX98G4h/HJiAG6OEH7CCG7mCF8WEF9GHGdSGGNaGF9eHF9iHFtmGFtiGF9eGGNaGGNSFGNGDGsuAH72CILWEIKqFH5yHH5KDHIaCIHh9Jmx8NmeOWXu4kazpzuT+9/7+/f39//f8//n7//z7/v3//P///f///v/////+//79//7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////9//79//3+//7////+//v///3+/v/9/v/7/fz7/vz7/fz9+/7++P305/Dhxte7lLCeZo6EPnJ/MHB9KG9/JHF/IHV8HH57G4d+HIt/HY+BHZSCHZeCHJeCHZaCHpSCH5OBII98G4d6HoJ8JHh+JXR+JW1+K2qBNmyLS3qqe5/MqMPs2ej88/n9/Pv8/vr9//38/vv+/fz+/f78/v37//r+//z+//3+///+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////+///9//7+//7////////////////+/////////v/+//39/v3+/v7+/v79/Pz+/f3/+f/87fvo0ubStcy9mLWje5qZZ42PUX6CQnN8OW1yLGN1LGR2K2N3LGN2LGN5MmaBO26LSXabXIWdbI2yhqTKpb/awdX04/H99f3//P7++/3+/v78/v77/v37//78///8/v79/v7//v7//v3///v+//3+//3+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+/v///f///P//+///+v/9+P359Pr27/f27vb26vX16PT16fT26PX25/X26PX47ff58fn88/v99/7++//++////v////////7///7///79//78//39//79//79///8/v78//3+//3+//3+//z+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9//78//79//79//39//3+//78/vv8/vv8/vz9/v39//38/vv8/vv8/v78/v79/v79/v3+//z9//z8//z8/vz9/v3+//7+/v/+//////7///79//78//38//38//39///8/v78//3+//3+//3+//3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+//7+//78//38//3+//7//f7//P///P///P7+/v7+///+///+//7//v7//v7//v3//v3//vj+/vn+/vv+//78/v/8/v/+//7+//38//38//38//38//38//38//39//7+//3+//3+//3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///v///v///v///v/9//78//79/f7+/f7+/f79/v78//78//38//z9//v9//v+/vz8/v33/vz3/fv6/v36/f78/P7+/f7+//3+//38//38//38//38//38//39//79//7///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///v/7/v75/f37+/79+P7++P/++v/9+v/9+f/9+v/9+v7++v7++f/++f/99//9+P779/z9+//9/f/9/v7+//3+//38//38//38//38//38//v9//39//7///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v//+f6zkaaYXX2ZWYeaW4OYWoaWWoWYXISZXIOZXIOaW4WaWoeaWoWZWH+yh6T57/n6/f38/v3//vz+//z+//38/v77//77//z9//z+//3+//7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79+/3QsMV7LF6AJWp9IXp6HYJ5HYB7H358IH18IH18H397HoF7Hn+AInZ4Jmupd6D67/f9/vv//f7+//39//38/v/8/v79//v+//3///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/fj27PSJR3mDJGqHIqmJHcqJGc2JG8yHHcuHHcqHHMuHHcqGHciFHb2FIY6BJmqha5H57vb/+//8/v36//36//79//3///v+//3///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///r9+vy8jrCFJ2qCHaKGEtuDD+KAEeJ/EuN9EeJ9EeJ9EuF9EOR/E+CIHcCGJYl3K2afbpb47vX+/vz5//r4//37//7+/v3+//3///7///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f///vz+/v3x3Op+MGaCIoiGGMqBEt5+EuB7EuJ6EuJ7EuF7EeN6EeN+E+J/E+J/HcF8JIp4JmuZbon77Pf9/Pz5//76///8/v7+//3///7///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/9//7+//r++PyjcZWBJnWGIauCE9x+EuB7EeN8EOV+EOR/EeJ+EuF/EuN9EeV/E+OGG8iDHJR+JmqWXIbz3vD++v/+//7///z+//3///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///+/vz9/f7YwdN5LGuFH4+EGdN7FN19EOR+EuF/EeKCEeJ/EeN/EuN/EuOBEuSDFd6HGcyEHZV9KWyYX4r25fT9//n9//v+//39//38//78///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7//v///f/9/Pz79PqJT3uEHnqDHbt6Fdx/EOV+EuF7EOSBEeJ+EeN/EuR/EuN/E+J/E+J/Fd+BHMWAHo58JG6YYIn05vD5+vr4/v79/v7+///8/v/8/v////7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/v/+/v/9/fv9+vzEnLqAKWmDH5iBFtZ+EuB7EeN6EOV/EeN+EeN/EuR/EuR/EuR/EuR/EuOCFeCEGc6JH6GCIXCPUX7q2en3+//+/v///v///v/+///9//7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8///9//////3+/vzx4O6CPmyAH3yIGcd+EuF5EeV7E+B/EOR+EuF/EuN/EuR/EuR/EeV/EeV+EeR/EuWHFtKJHZt+KmuNU3zw3+39/P76//z///7//v/7///9///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8///8//////39/v3++P6rfp58JG6HHqqBE958EeR/Ftx+EeV/E+J/E+J/E+N/E+N/EuR/EuR+E+J+E+J+E+CAGsuDIpuBJmyQVXfq2+f0+fn8/v3//v/7///8///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9//////78/v38/f7iy954L2h/IYiCGsx/EuGCEuJ+E+J/E+J/E+J/E+F+E+B+E+B/E+B/E+CAEeR9FOB8E9+EF9CHHKF+JG6LS3rp0eX++//8/v/+//7+///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///+/////v79/v76/fz+9/6UW4R8JXODG7OFEuCFDuqCE+F/E+J/E+F+EuB+Et9+E99+E99/EuB/Dud/EeN/EOGCEOKDFNOAH5mDI3WQSHTs1ef8/P/+/v39//79///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///z9/vr//P3NrsVzLGV+HZeBGc59FdiAF9N+FdZ9FNV+FdV+FdZ+FdZ+FdZ+FdZ+FdZ+FNd/Fdh/FNh/FdeBHcaCHZV/I2uJR3Pmzd/8+vv8/v37/f39///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//39/vr+/vz36fSCSHJ7JHp9HpZ6G5x/HJqBHJiBHJiCHZmCHJmCHZiCHJmCHJqCHJqCHJmCHZmBHJmCHJqEG5yAJIiAJm+GKWSGQmvjy9v9/P3+///9/v79///8///7///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///9///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//37//38+/62j6h0L153KmJ5KGV8J2d5KGZ5KWZ5KGZ4KGV4KGV4KGV4J2Z4KGV4KGV5KWR5KWN5KWN7J2Z1K2F6KmGGJmR8KF51RWfZ0Nb//v7+/v79///7///7///9///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6//75/f/68vrz6PL06fL06fL06PL06PL06PL06PL06PL06PL06PL06PL06PL06PL06fL06vL06fLz6fLz6fL06fL05/Lz6vLy7e739PX+/f39/f3+/v79///8/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f/+/P7//v39/v38/v/8/v/9//7///7///7///7///7///7///7///7///7///7///7///7///7+/v///v///v///f///P///P7+/f79/f3+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///v/+/v77//r6//z8/v///f////7+///9///9///9///9///9///9//79//79///9///9///+/v///v/9//77//z8//z+//7//v///v/9/f3+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
!! ''L'environnement informatique du collège: Index documentaire''
Ici vous trouverez réponses à vos questions, explications et inventaire des ressources. L'idée est de définir les moyens dont on dispose, et la manière d'y accéder.
Donc sommairement, voici:
* [[Les grandes lignes|Les grandes lignes]] : l'explication simple de tout ce qui concerne l'environnement numérique
* Les ''méthodes d'accès'' aux ressources:
** l'informatique dans l'enceinte du collège : [[le réseau pédagogique Scribe|le réseau pédagogique Scribe]]
** l'accès aux ressources depuis n'importe où:
*** Cas des élèves et des reponsables : [[EduConnect|EduConnect]] et [[FranceConnect|FranceConnect]]
*** Cas des enseignants : l'identification académique
* ''Les ressources numériques'' : Qu'est-ce que c'est, qu'est-ce que ça permet, comment concrètement y accéder, comment s'en servir ?
** [[Les ressources matérielles|Les ressources matérielles]]
** Les ressources logicielles applicatives :
*** [[Spécifiques à Scribe|Spécifiques à Scribe]]
*** [[l'E.N.T.|E.N.T.]] : Espace Numérique de Travail (alias OSé, aka Argos)
*** Quelques [[Ressources en ligne|Ressources en ligne]] pratiques (donc rien à installer, un navigateur internet suffit)
** [[Les ressources documentaires|Les ressources documentaires]]
* [[Qui fait quoi|Qui fait quoi]] : pour savoir à qui s'adresser en cas de souci
* [[Le manuel de survie|Le manuel de survie]] : quelques conseils...
Parallèlement à cet index documentaire, une [[aide à la résolution des problèmes rencontrés|https://view.genial.ly/6161d46ee934470dca79fda3/interactive-content-genially-sans-titre]] est en cours d'expérimentation, n'hésitez pas à donner votre avis sur ce thème.
(Documentation non exhaustive, en cours de rédaction, voir l'[[A Propos]]...)
AAABAAEAgGMAAAEAIACuzAAAFgAAACgAAACAAAAAxgAAAAEAIAAAAAAAAMYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADX19ci0NDVrsjIyrDJyc680tLVrbGxsg6oqKkOvb2+DtLS0g7X19cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4tz+GOLc/jri3P5S4tz+OOLc/nji3P544tz+eODb/njg2/542tT+eNvY/njc2v5aAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
You can add [[Font Awesome|https://fortawesome.github.io/Font-Awesome/]] to your wiki by using one of the sources below.
[[@tobibeer|https://github.com/tobibeer]] created a great reference page for how to employ Font Awesome with TiddlyWiki. I recommend you follow his instructions on how to install and use Font Awesome: http://tobibeer.github.io/tw/fa.
[[@TheDiveO|https://github.com/TheDiveO]] also created a Font Awesome plugin. See [[TW5FontAwesome Plugin|https://github.com/TheDiveO/TW5FontAwesome]]. However, his provided version is out of date.
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B+FADMkg8inFjkYpuNoBAHNGMdP1oAeeVyaaCADj9aVW7YpTyMYx7mgBigZ6bs0uG/57YoTk8EcUuwf3RQA0nGMDJp2ctn17U1M846+tOwFPGSfWgAzkHgikA655FL2I55pNmeM4oAEH3eNrD0pcmPAUnj360E4fOP8ACkzkk0APjuZYlwksieyscUouZs58wk+pAz+dQnPbrTyhVM8g0ATC8ngQgOdpOTwBz+HWnLqc3RgrA/hVUkyKck8UjYOCe3pQBfTUeDvTn2NKupxseVZR64qjjkEYoPyqeRimgNH+0IT/ABN/3zS/b4f7zH/gNZnAIGevpSkYHrTuBpC/iIHDH2ximNqK/wAEbYPTcazztXHH608jB4xx1ouBYbU3H/LNfzzTPts7nIfaPQdarjLHjrTsBWGMk0mA5pHkySW3etMxn73P1pexHPNJszxnFIAQAhcqAR6UhG3OOfrTicPnH+FJnJJoAQcfWlyTx1ppz2608oVTPINACMm0dMUpYsRnj6U3JdTknihm6E9qAFKjryPpQSOuCD6mlycjGMUOflOSCKAGsORxmlXrg8/Wg9QN34Cl+7zQAnUbjyaMnBA70ZCgA9KUrjp260ANJxjAyadnLZ9e1NTPOOvrTsBTxkn1oAM5B4IpAOueRS9iOeaTZnjOKAEQA7cqARQRtzjn604nD5x/hSZySaAEHH1pck8daac9utPKFUzyDQAjJtHTFOEjegpmS6nJPFO3mgBF45zSggDA6+tFFACbjuIzx2pXO0ZAz7GiigBCcd859KFHNFFAAB1x1FGWbqSB9aKKAF2heM5zRtFFFABjnOQfagEgHI/KiigBFz78+tKRnuKKKAEIwM4zjtQW3LkEDHXPeiigAXjnNKCAMDr60UUAJuO4jPHalc7RkDPsaKKAEJx3zn0oUc0UUAAHXHUUZZupIH1oooAXaF4znNG0UUUAGOc5B9qASAcj8qKKAEXPvz60pGe4oooAQjAzjOO1BbcuQQMdc96KKABeOc0oIAwOvrRRQAm47iM8dqVztGQM+xoooAQnHfOfShRzRRQAAdcdRRlm6kgfWiigBdoXjOc0baKKAP/Z
AAABAAEAAMAAAAEAGADQWAIAFgAAACgAAAAAAQAAgAEAAAEAGAAAAAAAAEACAAAAAAAAAAAAAAAAAAAAAAD///////////////////////////////////////////////////////////////7///7///7///7///////////////////////7///7///////////////7///7+//3///7+//3///7+/v7////////////+//7///7+//3///7+/v7+/v7+/v7///7///7///////////7+//3+//3+//3+//3+//3+//3///7///7+//39/vz9/vv+/vr//vr///v//vz//vz///v///v//vr//vr//vr//vr//vr//vr//vr//vr///n///n///n///n///n///n//vr///n///n///n///n+/vn+/fn+/fn+/Pr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr9/vr+/fv+/fv9/vr//vr//vr//vr//vr9/vz+//3+//3+//3+//3+//39/vz+/vv//vv+/vz+//3+//3+//39/vz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vr8/fn+/fn//Pj//Pj//Pj//Pf//Pj//Pj//Pj//Pj//Pj//Pf//Pf//Pf++/b++/b9+vX9+vX8+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++vX9+fT9+fT9+fT9+fT9+fT79/L8+PP8+PP8+PP8+PP8+fH8+vD8+fH8+fH9+vT9+fT9+fT9+fT9+fT9+fT9+vX9+vX++/b++/b++/b++/b++/b++/b9+vX9+vX9+vX++/b++/b++/b++/b++/f++/f//Pj//Pj//Pj//Pj//Pj//Pj//fn+/fn//vr//vr//vr//vr9/vz+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///7///7///7///////////////////////////////////////////////////////////////////////////////////////////////7///7///////////////////////////7+/v7///7///7///7+/v3///////////7///7///7///7///7///7///7///7+/v7+/v7///7///7///////7+/v39/vz//vv//vz+//3+/v39/v39/vz+/vv+/vv//vr//vr///v//vv//vv//vr//vr///n//vn//vn///n///n///n+/vj+/vj+/vj+/vj+/vj+/vj//fj//fj//fj//vj+/vj//vn+/vj//fj+/fj+/vj//fj+/vj+/vn+/vj+/vj+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vr//vr//vr+/vr//vr//vr//vr//vr+/fz+/fz//fz+/vz9/vz9/vz9/vz+/vv//vv//fz9/vz9/vz+/vv//vr//vr//vr//vr//vr+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn9/fn+/fn//Pj//Pj//Pj//Pj+/Pj+/Pj//Pj//Pj++/f++/b++/b//Pf//Pf//Pf++/b++/b9+vX9+vX9+vX9+fT9+fT9+fT++vX++vX9+vX9+fT++vX9+fT9+fT9+fT9+fT8+PP7+PL7+PH7+PH7+PH7+PH8+fH8+fH8+fH8+fH8+fL8+PP9+fT9+fT9+fT9+fT8+fT9+fT9+fT9+fT++vX++vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT9+vX++/b++/f++/f//Pj//Pj//Pj//Pj//Pj//Pj//fn+/fn//vr//vr//vr//vr9/vv9/vz9/vz+/vv//vv//vz+/vz+//3+//3+//3///7///7+//3+//3+/v7+//3///7///7///7+/v7+//7+//7///7///////////////////////////////////////////////////////////////////////////////////////////7///7////////////////////////////+/v7+/v7+//7///7///7///7///7///7///7///7///3///7///7///7+//3///7+/v3+//7+//3+/v7+//3+//39/vz+/vv+/fz+/vv+/vv+/vv+/vv//vv//vv//vr///v///v//vr//vn//vn//fn//fj+/fj//fj//fj+/fj+/ff+/ff+/ff+/fj+/ff9/Pb+/Pb//Pf//Pf//Pf//Pf+/Pf//Pf9/Pb+/Pf//Pf+/ff//Pf+/Pf+/ff+/fj+/fj+/fn+/fj+/fn+/fn+/fn+/fn//vr//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vz//vz//fv//vv+/vv+/vv+/vv//vr+/vv+/fz+/vv+/vv+/vv//vr//vr//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj//Pj//Pj//Pj//Pj+/Pj+/Pj//Pj++/b++/b++/b++/b++/b//Pf++/b++/b++/b++/b9+vX9+vX9+fT9+fT9+fT++vX9+fT9+fT9+fP9+fP8+fL8+fL8+fL8+PL7+PH7+PH7+PD7+PD7+O/7+PD8+fH8+fH8+fH8+fH8+PH79/H7+PL8+PL8+fL8+fL8+fP9+fP9+fP9+fT9+fT9+fT8+fT7+PP7+PP69/L7+PP8+fT8+fT9+vX9+vX9+vb++/f++/f++/f//Pj//Pj//Pj//Pj//Pj+/fn//vr//vr//vr//vr9/vr+/vv9/vv9/vr//vr//fv+/vz9/vz+//3+//3+//3///7+//7+//3+/v7+//3///7+//7+//7///7+//3+//3+//3////////////////////////////////////////////////////////////////////////////////////////////+/v7///7///////////////////////////////////////////////7///7+//3///7///7///z///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//38/vz9/vz+/vv//vr///v//vr//fv//vv//vr//vr//vr//vr//vn+/vj//Pf//Pf//Pb++/b++/b++/b++/b++/b++/b++/b/+/X++/P++/T++/X++/X/+/X++/b++/X++/X++/X++/b//Pb++/b++/b//Pf++/b//Pf//Pf+/vj+/vj+/fj//fn+/fn+/fn//vr//vr//vr//vr+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vr9/vr9/vz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr+/fn+/fn+/fn9/Pj9/Pj+/fn+/fn//fn//Pj//Pf//Pf//Pf//Pj+/Pj+/Pj//Pj++/b++/b++/b++/b++/b++/b9+vX9+vX9+vX++vX9+vX9+fT9+fT9+fT9+fT9+fT9+fP8+fP7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD69+/6+O77+PD7+PD7+PD7+PD69+/7+PD7+PD7+PD7+PD7+PD7+PD7+PD8+fH8+fH8+fL9+fT9+fT7+PP7+PP69/L69/L69/L7+PP7+PP8+fT8+fT9+vX8+fX9+vb9+vb++/f++/f//Pj//Pj//Pj+/fn//vr//vr//vr//vr9/vr//vr+/vr+/vr//vr//vr+/vv+/vz+//3+//3+//3+//3+//3+/v7+//3+//3+//7+/v7+/v7+//3+//3+//3///7////////////////////////////////////////////////////////////////////////////////////////////+/v7///7+/v7+/v7//////////////////////////v////////7///7///7///7///7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vz9/vr//vr///v///v///v///v//vr//vr//vr//vr+/vj///n//ff//Pf/+/X++/T++/P++/P9+vL9+vL9+vL9+vL9+/L9+vH8+vH8+vH8+vH9+vL++fL9+fL9+vL9+vL9+vL9+vL++/P++/P++/T/+/b++/b9+vX++/b++/b//Pf//Pf//Pf//Pf+/vj+/fn+/fn//fn//fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr+/fn+/fn+/fn9/Pj+/Pj+/fn+/fn+/fn//Pj//Pf//Pf//Pf//Pj//Pf//Pf//Pf++/b++/b++/b++/b++/b9+vX9+vX8+fT9+vX++vX9+vX9+fT8+PP7+PL7+PD7+PD7+PD7+PD7+PD7+PD69+/69+/69+/69+/69+/7+PD69+/69+/59u769+/69+/59u759u769+/69+/69+/69+/7+PD7+PD69+/69+/69+/7+PD7+PD8+PL79/L79/L79/L79/L79/L79/L69/L7+PP7+PP7+PP8+fT8+fT8+fX9+vb9+vb++/f++/f++/f//Pj+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//fz//fz//vz+//3+//3+//3+//3+//3+//3+//3+//3///7+/v7///7///7+//3///7///7///////////////////////////////////////////////////////////////////////////////////////////7+//3+/v7////+//7///7+//7+//7+/v7+//7+/v7///////////7+//3+//3///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz+/vv//vr//vr//vr///v///v///v///r//vr//vn//fj//fj+/Pf//Pf++/T++/P9+vL9+vH9+vH9+vH7+O/8+O/7+O77+O779+379+z69u369uz79+379u379u389+379+789+79+PD8+fD8+fH9+vL9+vL9+vL9+vL++vT++vX++vX++/b++/b++/b++/b//Pf//Pf+/fj+/fn//fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr///v//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn//vr+/fn+/fn//fn//Pj//Pj//Pj//fj//fn//Pj//Pj//Pj//Pj//Pj//Pf++/b++/b++/b++/b++/b9+vX9+vX9+vX9+vX9+vX9+fT9+fT9+fT9+fT8+PL7+PD7+PD7+PD7+PD7+PD69+/69+/69+/69+/69+/59u759u759u769u779u379u379u369u359u759u759u769+/69+/69+/69+/69+/69+/69+/69+/69+/69+/69+/69+/69+/69/H69vH69vH69vH59vH59vH59vH69/L69/L7+PP8+fT8+fX9+vb9+vb++/f++/f//Pj9/Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//fv+/fz9/vz+//3+//3+//3+//3+//3+/v7+//3+//7+/v7+//3+//3+//7///7//////////////////////////////////////////////////////////////v////////////////////////////////////////7+//7///7///3+//3+//3+//3+//3+/v3+//7+//7///7+//z+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/vv//vr//vr//vr//vr//vr//vr///n///n//vj//Pf/+/b/+/X++vP9+vL8+fD8+O/79+789+389uz69er59On59Oj59Of48+b38uX38+X38ub48+b48+b68+f68+f69On69Or79ev69uz79+78+O/8+O/9+PD8+fD8+fH8+fL9+vP9+fT++vX++vX++/b++/b++/b+/Pf+/Pf//Pf+/vj+/fn+/fn9/Pj9/Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn//vr//vr//vr//fv//vr+/fn//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj//Pj//Pj//Pf//Pj//fn+/ff+/Pf//Pf//Pf//Pf++/b++/b++/b9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+fT8+fL8+fL8+fL8+fL7+PH7+PD7+PD69+/69+/59u759u759u359+759u369u359e359ez59ez69e369ez69ez69ez69ez59ez59ez69u369e369u769u779+779u769u759e349e349e349e349e359u759u759u/59e/59fD59fD49fD49fD49fD59vH59vH69/L7+PP8+fX8+fX8+fX++/f++/f//Pj9/Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vv//vv+/fz+//3+//3+//3+//3+//3+/v3+/v3+//7+/v7///7///7+/v7+/v///v///////////////////////////////////////////////////////////v////////////////////////////////////////////7+//3///3+//3+//3+//3+//3+//3+//3///7///7///3///7+//3+//3+//3+//3+//3+//3+//39/vz9/vz+//z///3+//3+/v39/vz+/vv///r//vr//vr//vr//vr//vn///n+/vj//ff++/X9+vP++vL9+fH7+O759uz69ev59Oj68+b48eT17+H07d/07t707dzz7Nvy7Nry7Nry7Nnz7Nrz7Nz07dv17t3279/28OH58eT48+X58+f69On69ev79uz79uz7+O/7+PD7+PD7+PL9+fP++vT++vX++vX++/b9+/b++/b//Pf+/Pf+/Pj+/fn+/Pj9/Pj+/fn+/fr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr+/fn//vr//vr//vr//fv+/fn+/fn//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fr+/fn+/fn+/fn+/Pj//Pj+/Pj//Pj//Pj//Pf//Pj+/Pf+/Pf//Pf//Pf//PX++/b++/b9+vX9+vX8+fT9+vX9+vX9+vX8+fT9+fT9+fP8+fH7+PD7+PD7+PD7+PD7+PD69+/69+759u759u359e359uz49uz59ez69ez69ez59Ov59Ov59Ov59Or59Ov59Ov59Ov59Ov59Ov59Ov59Ov59Oz69Oz69ez69ez69ez59Ov49Oz49Oz39Oz39Oz49e349e349e349O349O749O749fD49fD49fD49fD49fD59vH7+PP7+PT8+PX9+vb++/f++/f//Pj9/Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr+/vv//vv+/vv//v3+//3+//3+//3+//3+//39/vz+//3+/v3+/v7///7///7+//7+/v7+/v///////////////////////////////////////////////////v////////7////////+/v7////////////+//7////////////////+//7///7///3///3///7+//3+//3+//3///7///7///7///7+//3+//3+//3+//3+//3+//3+//39/vz9/vr+/vr+/vv9/vz9/v39/f3+/vv///r//vr//vr///n///n+/vj9/ff+/Pb+/PT9/PP9+vH7+e/69u359er39Of48eX28OH17t3y69rx6tfw59Tt5dDs487q4szp4cvq4crq4crr4cvr483s5M/u5tHw6dTx6tfz7Nr07tz279738OH48eT58+f69On69ev79u369u/7+PD8+fH9+fP++vX++vX++vX9+vX9+vX++/b++/b//Pj//Pj//fn+/fn+/fn+/fv//vz//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr//vr//vr+/fn+/fn//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fr+/Pv+/fn+/fn//fn//Pj//Pj9/Pj+/Pf//Pf++/b++/f++/b++/b++/b9+vX++/b9+vX++vX++vX9+vX9+fT9+vX9+vX9+fT9+fT8+PP89/H89/D69+/69+/69+/69+/69+/69+/69+769u369ez69ez59Ov59Ov48+r59Ov48+r48+r38un38+n38+j48+r48+r48+n38+n38un38un38un38un38ur38un38un48+r48un58+r38un39Or29Ov28+v28+v39Oz28+v39Oz49e349O/49O/49O/39O/49fD59vH69/L7+PP9+PX8+fX9+vb++/f//Pj//Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr9/vz9/vz+//3+/vz9/vz9/vz+//3+//3+//3+//3+//3+//7+/v7//v/////+//7///7+/v7////////////////////////////////////////////////////+/v7///7///7///7///7+//3+//7+//7///7+/v7///7///////////////////7///7///7///7+//3+//3+//3+//3+//3///7///7+//3+//3+//3+//3+//3+//39/vz//vv///v//vr//vr//vr//vv//vr///v//vr///n//vn//vn//Pf++/b+/PT+/PL9+vD89+769ev69Oj38eP27t/069rw6dXt5dDp4Mnk28Pi173f1Lje0rTd0bHbz6/bzq3bzqzcz67cz7Dc0bPf1Lnk2b/n3sTq4snu5c/v6NLx6tfz7Nv279/48eP58+b59On69ev79u379+77+e/8+fH9+vL9+vT9+vX9+vX9+vX++/b++/b//Pf//Pj//Pj+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn+/Pn+/Pv//fr//Pf//Pf++/X++/b++/b++/b++/b9+vX9+vX9+vX9+vX9+vX9+fT++vX9+fT9+vX9+vX9+fT7+PD7+PD7+PD69+/59u759u759u759u759u779u369ez69ez59Ov59Ov48+r48+r48+r38+n28+j38uj38uf28uf48uf28uf38uf38eb28eb38eb28eb38eX38eb28eb08OX18eb18ef18Of18Of28ej28ej28ej38un18ur28+v28+v28+v28+v28+v28+338+739O/59u749fD59vH69/P7+PT8+fX9+vX++/f//Pj//Pj+/fn+/fn//vr//vr//vr//vr//vr//vv//fz+/vz+//39/vz9/vz//vr9/vz9/vz+//3+//3+//3+//3///7///7///////////7///7///7///7///7///7///7///////////////////////////////////////////////7///7///////7////+//7+//3+/v7+//3+//7///////7///////7///7///7///7///7+//3+//3+//3+//3///z+//3+//3+//3+//3+//3+//3+//z//vr//vr//vr//vr///v///v//vr//vr//vr///n+/vj//fj//Pf++/b++vT9+/H9+fD79+369er48uX28OH07Nvw6NXt483m3MTg1rzd0bXZza7VyabTxp/Uw5XVwYvTv4XUvYDVvX/VvYLVvobTwI7Tw5jUx6LXy6rb0LDh17rm3sLr4svu5s/x6dbz7Nr27+D38eT48ub58+n59Ov69u379+77+PD8+fH9+vL9+vT9+vX9+vX++/b//Pf//Pf//Pj//Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj//Pn//fn//Pf++/b++/b++/b++/b++/b9+vX9+vX9+vX9+vX8+fT9+fT9+fT9+fT9+fT9+fT9+fT8+PP7+PD7+PD7+PD69+/59u759u759u759e369ez59ev49Or58+r58+r48+r38+j28uf28uf38eb38eX38eT28OT18OP17+Pz8OP18OP17+P17+L17uH17uH17uD17uH07uH07uP07+L07+L07+Tz7uTz7+Tz8OX08Ob18Of18Of18ej18en18ur18ur28+v28uz38+749O/49O/49O/59vH69/L7+PP8+fX9+vX++/b//Pj//Pj+/fn+/fn//vr//vr//vr//vr//vr//vr//vr9/vz+/vz//vv//vr//vr9/vz+//3+//3+//3+//3///7///7///////////7///7///7///7///7///7///7///7///////////////////////////////////////////////////7//v///v/+/v7+//7///7///7+//3///7///7///7///7///7///3///3///7///7+//7+//7+//3+//3+//z+//3+//z+//z+//3+//39/vz9/vv//vr//vr//vr//vr///v///v//vr//vr//vn+/vj+/ff+/Pf++/b9+/P9+vL8+e/79u369On48eT07d3x6tfr5M/l3MTf1LnZzq/WyaXWw5XUvYLMsGfGp1XDoEbAmzm/lzO9lS6+lS2+lS7BmDPBmzvEoEjJqFfNsWrVvYDWxZXWyaXd0rTk2r7q4Mju5c/w6NXz69r07t738OP48ub48+r69ez79+77+PD8+fD9+vP9+fT9+vX9+vX++/b//Pf//Pj//Pj+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//Pj//Pj//Pf//Pj//Pj//Pj++/f++/b++/b++/b++/b9+vX9+vX9+vX9+vX8+fT9+fT9+fT9+fT9+fT++fP9+fP8+PL6+PD69+/69+/69+/59u769u359e359ez59Ov49Or48+n58+n48uj38uj28eb18OX17+P27+L17+H17uD07uD07t7z7d7z7d307d307d3z7Nzz6tvy6tvy69vy69vx69vx6tzy693y693y697y7ODx7OHy7eLy7ePy7eTz7+X07+b08Of18en08en18ur28uv28uz39O349O/49e/59vD69vH69/L8+fT9+vX++/b//Pf+/Pj+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr+/vv//vv//vv//vr9/vv9/vz+//3+//3+//3///7///7+//7///////7///7+//7///7+//7///////7///7///7///////////////////////////7///7///////7//////////////////v/+/v7+//7///7///3///7///7///7///7+//7///7///3///3///7+/v7+/v7+//7+/v3+//3+//3+//3+//z+//v+//39/vz9/vv+/vr//vr//vr//vr//vr///v///v//vr///n+/vj+/fj++/b++/X9+vP8+vH7+e/79u358+f38eP07d3v59Pp4cng17zZz7HWyKTTwY/NtXTCok/AmTbGmCXJmB3MmRjPmhfQmhfQmhbQmhXPmhXPmRXPmRTNlxbJlhnEliO+ljDBoUzLsGvTvonYyJ7d0rHl28Dq4Mju5dDw6dXz7Nz27+H38eX48+n69ez7+O77+O/7+PD8+PL8+fT9+vX9+vX++/b//Pf//Pj+/Pj9/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/vn+/fj//Pj//Pj//Pj//Pj//Pj//Pj//Pj/+/b++/b++/b++/b++/b9+vX9+vX9+fT8+fT9+fT9+fT9+fT9+fT9+fP9+PL9+PH69+/59+/59u759u759u759u769ez59ev59Or48+r38un28uf38uf38eX28OP17+P07uH17t/07d3z7dzz7Nvx6tnx6tjx6dfw6dbw6dbw6dbv6NXu5tPt5tPt5dPt5tPs5tPs5tTt5tXu59bu59ju6Nnv6dvw6t3w6t/w6+Dy7eLy7eTz7uX08Of08Oj08en18ur18ur39Oz49e/49u/69vD69vH69/L7+PP8+fT++/b//Pf+/fn+/fn9/Pj+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vv9/vz9//39//3///7+//3+//3+//3+//7///////7////+/v7+/v7////////////////////////////////////////+/v7///7///7////+//3////////////////+/v7+/v7+/v7///7///7///7+/v7///7///7+/v7+//3///7///7///7+//3///7///7+/v7+/v7+//3+//39/vv9/vr9/vz//fz//fv//vr//vr//vr//vr//vr//vr///n///n+/vj+/vj+/Pf++/b++/T8+fH7+e/69uz69On38OP07dzw6NXn38be1LnXy6vTw5rMtn3Eo03DmSzKmSDOmx3SnBvTnRnVnhjWnxfWnxbWnxXWnxXWnxXVnhXVnhXUnRXSmxXQmhbNmRfIlhnDlCDDnT3HrWTTwI7YyqXh1rfo3cTt4szw6NXz69r17eD28eX38un69ez69+36+O77+PD7+PD9+fP9+vX++vX//Pf//Pf++/b+/Pf+/vj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//Pj//Pj//Pj//Pj//fn//Pj//Pf++/f++/b++/b++/b++/b9+vX9+vX9+fT9+fT8+PP9+fT9+fT8+PP8+PP7+PH7+PD7+PD69+/69+/59u749e349O369O359Ov48+r38+n38+j28uf18Ob07+T07uHz7t707N3z69vy6tnw6tjv6tbv6NXu59Pu5tHt5c/r5M3s483r4szq4crp4Mno3sjn3sjn38nn4Mnn4Mro4czq4s7q49Dr5NLt5tXt59ft6Nrv6d3x69/x7OHz7uT07ub18Of08en18ur18ur39Oz59u769u/89/L69vH69/L8+fT9+vX++/b//Pf+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr9/vr9/vv9/vz9/vz+//3+//3+//3+//3+//3+//3+//3+/v7+/v7+//3///////7///7////////////////////////////////////////////+/v7////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7///7///7///7///7///7///7+//3+//z+//z+//3+//3+//3+//3+//3+//3+//3+//39/vv9/vr//vr//vr//vr//vr//vr//vr//vr//vr//vr///n///j+/vf+/ff++/b/+/X++vP8+fD69+359Oj38OL07dzv59Pp4Mjb0rbUyafRvo7IrGLCmjbJmybQniDVoBzXohvaoRvbohrdpBfepRXgphXgpxTfphPfphTcpBTcoxXZohXXoBbWnxbVnhbTnBXQmhfKlxrDliLDnDvNsm/VxJbe0bHl2r7q4Mjt5dDw6dfz7d728eT38uj59Ov69u36+O77+PD8+PL9+fT9+vX++/b//Pf//Pf//Pf//Pf//fj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr+/fn+/fn+/fn//vr+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj+/fn+/fn+/fn+/fn9/Pj+/Pj//Pj//Pj//Pj//Pj//Pj//Pf++/b++/b++/b++/b++/b9+vX9+vX9+fT9+fT9+fT9+fT9+fT9+fT8+PP7+PH7+PD69+/69+/59u759u759O348+z39Oz59Ov48+r48+n28uf18eb28OX07+P07eDz7N3y69nw6dfv6NTu5tLv5dHt5M7r4szp4Mjo3sXl3MHh2Lrg1bff07Xe0rTd0bPc0LPc0bTd07be1bng1r3i2L/k2cLl3MXm3sno4Mzp4s/r5dPs6Nft6Nrw6t7x7OHy7ePz7uX08Of18en18ur39Oz59u769+/8+PL7+PP7+PP9+vX++/b+/Pf//Pf+/vj+/fn+/fn+/fn+/fn//vr//vr+/vr9/vr9/vz9/vz+//39/vz9/vz+//3+//3+//3+//3+//3+//3///7///7///7+//3+//3///7+//3///7////////////////////////////////////////+/v7///7////////////+//7///7///7+/v3////+//7///7+//3+//3///7///7///7///7+//3///3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vv//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/vn+/vj+/vj+/Pf++/b++vP8+fH7+O/59er38eP07d3w6dbp4crf1brUyajRv4/EqFzDmzXPnifVoiPYox/dphvjqRnorBjprRfrrhfssBbssBbssBbssBXssBbrrxbqrhborBblqhXhpxXboxTYoBbVnhfTnBbRnBjJlxzAli/HqFvVw4/bz63j2b7p38ft5dHx6dj07t/38eX38un59ez69u369+/7+PH9+fP9+vX9+vX++/b//Pf//Pf//Pf//Pf+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//fn+/fn+/fn//fn+/Pj+/Pj//Pf//Pf//Pf//Pj//Pf+/Pb++/f++/b++/b++/b9+vX9+vX9+vX9+fT9+fT9+fT9+fT9+fP8+fL7+PH7+PD69+/69+/59u759u749u359Oz59Oz48+v38un28uf18eb07+T17+P17uHz7d7y69vw6dfv6NTu5tLs5c/r4svr38no3cTj2b7e07fYzbDVyqnVyKDWxZrXxZXYxJLXxJLWw5PWw5fUxp7Tx6XUyavXzK/c0LTe07rh1r/j2sPl3sjo4c3p5NHs5tbu6Nrw6t3x7ODy7ePz7uX18ej28+r39ev59u769+/8+PL9+fT8+fX9+vX++/b+/Pf+/fj+/vj//vn+/vn//vr//vr//vr//vr//vr+/vr+/vv+//z9//39//3+//3+//3+//3+//3+//3+//3+//3///7///7+//3+//3+//3///7+//3///7///////////////////////////////////////////7+/v3///7////////+/v3+//7///7+//3+//7+//7///7+//3///7///7///7///7////+//3+//3+//3+//3+//39/vz9/vz9/vz+//3+//39/vz9/vz9/vz//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/ff+/Pf/+/b9+vT8+fH7+O/59ev48uf17t/x6tfq5M3f173Vy6vPvY/FqV7FnTTUoyndpyThqh7nrRvrsBfusRXwsRLwshLwshLwshLwshLwshLwshLwshLwsRLwsRLwsRLwsRPusRTrrxbmqxbgphXaoxbXoBfVnxrPmx3DlSTBoUvSvIHazavi1rvp38ft5NDw6djz7d/28eX48+n59ev69+/7+PD8+fL9+vT9+vX++/b++/b//Pf//Pf//Pf+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj+/fn+/fn+/fn//Pj++/f++/f++/f//Pf//Pf++/f++/f++/f//Pf++/b++/b++/b9+vX9+vX9+vX9+fT9+fT9+fT9+fT8+fL7+PD7+PD69+/69+/69+/69+/59u759ez49Ov48+r48+n38un18eb08OT07+Hz7d/z7Nvw6tjv59Xt5dHr5M3p4Mjm3cPj2b7f07XZzKjZxpfVwITOtHDKrWHFpFDBnkW+mTy8lze9lzi9mDu/m0LCoU7HqVzMsm7SvIHVxJTUx6PXzK7c0bbg1r3j2sTm3snp4s/r5NLu59jv6dzx7ODy7uT08Ob39Or49uz59u77+PD9+fP9+fX9+vX9+vX++/b+/Pf+/vj+/vj//vn+/vn+/fn//vr//vr//vr///v//vr//vr//vv+/vz9//z+//3+//3+//3+//3+//3+//3+//3///3+//3+//z+//3+//7///7///7+//3///7///7///7///////////////////////////////7///7///7///7////+/v7+/v7///7///7///7///7+//3+//3///7///7///7///7+/v7+//3+//3+//3+//3+//3+//39/vz+//3+//3+//3+//39/vz+/vz//vr//vr//vr//vr//vr//vr+/fn+/fn//Pj//Pj++/f++/b++vX9+vL8+fD79+359On28OT07Nzv59Pn38XYzrHPw5zGrm3En0DVpS7eqibmrR3tsBfvsRPvsRPwsRPwshLwshLwshLwshLwshLwshLvsRHvsRLvsBLvsBLvsBLvsRLvsRLvsBLusBPsrxTnrBbfpxbZoRnVnxzRnB/ElyfBnkbTv43azari2L3p4Mjt5tLx69r07uH38ef39Or59+369+77+PD9+vL9+vX9+vX++/b++/b//Pf//Pf+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn9/Pj9/Pj+/fn+/fn+/fn+/fn//Pj//Pj+/fn+/fn+/Pj//Pj//Pj//Pj++/f++/f//Pf//Pj++/f++/f//Pf++/b++/b9+vX9+vX9+vX8+fX9+fT9+fT8+PP9+fT8+fH7+PD69+/69+/69+/69+/59u749e359Ov48+r38+n28uf18eb17+T07uHz7d7y69vw6dbt5tLs48/q4crn3sXj2L3e0rLYyaHTwI3Ms3LDolDAmTbDliXFlBvJlBbLlRXLlRXLlhbMlhbLlxbKlxjKlRrHlR3ElyjAmjnBpFTKtXfRwJHVx6PZzq/f1Lnj2cDn3sfp4c3s5NPu59jw6tzz7uP18Ob38+r49uz69+/8+fH9+fP++vX++vX9+vX++/b+/ff+/vj+/vj+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr+/vr+//z+//3+//3+//3+//39/vz+//3+//3+//z+//v+//v+//3+//7///7///7+//3///7+//7///7///7////////////////////////////+/v7///////7///7///7///7///7///7///7///7///7///7///7+/v7///////7+/v7+//3+//39//38//3+//3+//3+//3+//39/vz9/vz9/vz+/vr//vr//vr//vr//vr//vr//vr+/fn//fn//Pj//Pf//Pf++/b++vX++vT9+vL8+O/69uv38ub27uDw6djs487h173TxqXLuYjEokjUpzXirSbprxrusRTwshPwshLwshLwshLushLwshLwshLwshLwshLvsBHvsBHusBHurxHsrxHtrxLsrxLsrxLsrhLrrxHsrxLusBLsrxTmqxbepRrXoR7RniHGmCfCo1LUwIzbz6/j2b7p4crv59Ty7Nz18OP38uf39ev59+77+PD8+fH++vX9+vX++/b++/b//Pf//Pj/+/r+/Pn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj//Pj/+/r/+/n//Pj//Pj//Pj//Pj++/f++/b//Pf//Pf++/f++/f++/b++/b9+vX9+vX8+fX8+fT9+PX9+fT8+PP8+PP8+PP8+PH7+PD69+/59u759u/59u759uz59Ov48+r38un38uj28eb17+Tz7eDz7N7x6tnw6NXu5NDq4crn3cXj2b7f07TWyaHQvYjHqVvDmjbDkh3IlBjLlxbOmBXQmhTSmxTSmxPTnBTTnBTTnBTTmxXTmxXSmxfRnBjPmxvMmh3HmSDBlyvCoEnKs3fRwpbWyqnc0LTh17/l3cfp4c7t5tTw6dr17eH18Ob38+r59+36+O/8+fH9+vL++vP++vX++/b++/b//Pf//fj+/vj+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr+/vv9/vz9/vz+//3+//39/vz9/vz+//3+//3+//3+//3+//3+//3+/v7///7///7///7+/v7+/v7///////////////7///////////////////7///7+/v7///7+/v7+//7///7///7///7///7///7///7+//3+//3+/v7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//z//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/vn+/ff//Pf//Pf++/b++vX++vT9+PH89+759ev38eX07d7u59Tp38fb0LTPwpjErm7Ppz3hrinqrxnusRTwshLwshLwshLwshLwshLvshLwshLwsRLvsBLvsBLsrxLsrhLrrhLrrRPprBPnqhXiqBTgpxTfphTjqhPprBPrrhLsrxPqrhTnrRbiqBrYoyDRnyTDmTHHq2PWxpzd0rPk3MLs487w6dfz7t/18OX49On69uv79+/7+PD9+fT9+vX++/b++/b//Pf//Pf//Pj//Pj//Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//fn//Pj//Pj//Pj//Pj//fn+/vj+/fn+/Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/b//Pf//Pf++/f++/f9+vX9+vX8+fT8+fT8+fT8+fT9+fT9+fT9+fT8+PP7+PD7+PD7+PD69+/59u759u359uz59Ov48+v48+r38un28ef28OT07eDz7Nzx6tnv59Tu48/q38jl28Hh1rnazqvUw5LLrWDAmjjDkyDJlRnQmBXSmxXTmxTUnBXVnRXVnhTXnhPXnhLYnxLZnhLYnxLYnxPWnhTVnhfWnxrTnxvRnh3OnSHHmifBmznGqV7Qvo7Ux6Xa0bPg177n3sns5NHw6Nj07N/18OX48+n69u37+O77+PD8+fH9+fL++vX9+vX++/b//Pf//Pf+/vj+/vj+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//fv+/fz9/vz+//3+//3+//3+//3///7///7+//39/vz9/vz9/vv9/vz+//3+//3///7////////////////+/v7+//7///7///7///7///7///7////+/v7///7///////////7///7///7///7+//3///7///7///7///7+//3+//3+//3+//3+//3+//3+//3///7+//3+//39/vz//vr//vr+/fn//vr//vr//vr//vr//vr//vr+/fn+/vn+/vn+/fj//Pf++/b++/b++vX9+fP89/D79u359On38OLz7Nru5tDl3MLVy6zLu4nGqlnerjHqsBzusRPvsRPvsRHvsRLvsRLvsRLusRLusBHtsBLtrxLtrxLsrxPprRPmrBPlqhXgphXYoBbMmBi7ixaqfxOrgRbIlRXcpBTnqxPqrRLrrRPrrhLprRbiqRzapCHPnynAmj3QuH7Xyqfg1rno3sfu5tLz69z17uL28uf59ev79u769+/8+PL9+fT9+vX++/b//Pf//Pf//Pf//Pj//Pj+/Pj//fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj+/fn//Pj//Pj//Pj//fn//fj+/Pj+/Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f9+vX++/b++/b++/b9+vX9+vX8+fT8+fT9+vX8+fT9+fT9+fT9+fT8+fP8+fL7+PD69+/59u759u759u759ez59ez59Ov48+r28uj28ef18OX07uHz7N3x6tjv59Tt487p38fk2b/e07Tay6PQunzCoEjAlCPJlxjQmhXTmxXUnRbWnhTYnxLanw/bng3XmwrZnAranAjZnAfanAfZnAncoA/ZnQ/YnhDbohXbohjYohvVoh/SoSLOnyjDmzLDplvOu4nTyKXa0LTj2sLr4s7v59Xz7N728OT58+n69ev79+77+PD7+PD9+fL++vX++/b++/b++/b//Pf+/fj//vj//fj//Pj+/Pj+/fn+/fn+/fn//vr//vr//vr//vv+/vv+//z+//3+//3+//3+//3+//3+//3+//39/vz9/vz9/vv9/vz+//3+//3///7////////+/v7///7///7///7///7///7///7///7+/v7+/v7////+//7+/v7////+//7///7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///7+//3+//39/vz//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/vn+/vj//fj++/b9+vX9+vX9+fT79/L69+759ev48+j27+Dy6tjt5M7j2b3Sx6fLtnzTrUjnrx/usRTvshPvsRPusBLusBLusBLtsBLsrxPrrhPqrhTprRTmqxTiqRXdpBbTnhfEkxe0hxagehiVdSOYfjyplV+6pG2ifR/EkxXfpRPmqhPqrBPrrhLrrhLorBXjqhzYpCfMnjHEplrSwpXb0LDl2sLr4s3w6dfz7d/28eX48+r59e369+/7+PD8+fT8+fT9+vX++/b//Pf//Pf//Pj//Pj//Pj//Pj+/Pj+/fj+/Pj+/Pj+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj//Pj//Pj//Pj++/f//Pf//Pj//Pj++/f//Pj//Pj//Pf++/f++/f++/b++/b++/b9+vX9+vX9+vX9+vX9+vX9+vX8+fT8+PP8+PP8+PP8+PL7+PD69+/69+/59u759u749e369ez59Ov48+r38un28ef28OX07uLy7N3x6tnv59Ts48/o38bk2b3d0bHYx5rMs26+mTbHlx3PmhjRnBbVnRbXnRTZnxDbnwzcngnengbgngXbmwTdnQXcnAPcnAPcmwLbnAPeoAzgoxPgpBPhpRTgpBTepBbbpBrapR7XpCXTpCrFnjnEp1vPvZDVyajd07jn38nu59Py69v17+H48+f79er79u369+/69+/8+fL++vX++/b++/b++/b//Pf//Pf//Pf//Pj//Pj//Pj+/fn+/fn+/fn//vr//vr//vr//vr+/vr+/vr+/vz+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///7+//7+/v7///7+/v7////+//3///7+//3+//3+//3///7///7///7///7////+/v7+/v7///7+//3///7///7///7///7+//3+//3///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vz+/vv//vr//vr+/fn+/fn+/fn+/fn+/fn9/fj+/ff//Pf++/b9+vX8+fT8+PP7+PH69+749Or48uf17t/x6dfs483i17zSxaTRt3HcrjPssBnwsRPvsBLvsBLtsBTsrxPsrhTrrhTorRTlqxXiqBXcpBbTnhfGlBazhBSedhOQcB+XfT6ql2q5rI3Cu6bFwbHKwaymjlOogBnSnBXgphTnqxLqrRLqrBHmqQ7nrBTgqSLVpCzBnUXOuYDWyqbh1rvo38nu59Ty7Nv18OP38un59ev59+369+/7+PP8+fT9+vX++/b++/b++/b++/f//Pj//Pj/+/r/+/j//Pj//Pj//Pj//Pj+/Pj+/fn+/fn9/Pj+/Pj//Pj//Pj//Pj//Pj//Pj++/f++/b++/f++/f++/f++/f//Pf//Pf++/f++/f++/b++/b9+vX9+vX8+fT9+vX9+vX9+vX9+fT9+fT8+PP8+PP8+PP79/H7+PD69+/69+/59u759u759uz59Ov59Ov48+r28uj38eb17+Tz7eDy69vv6Nbt5NDp38jj2b7d0bLXxpzLsGu/lzHJmR3QnBnUnhfWnhXXnQ/XmwjdngffngXgngTfnQPfnAPbmgTcmwXamgLZmgLamQHamQLcnQrgohLgoxPhpBThpRPhpRThphXgpRbepRzbpyXTpTHGoEDHsHHQwpnXza/j28Ht5c7x6tf07t/28eX49On69ez69+77+PD8+fL++vX++vX++/b++/b+/Pf9/ff9/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr9/vz9/vz+//3+//3+//3+//3+//3+//3+//3+//7///7///7+/v7///7///7///7+//3+//z///3+/v7+/v7+//3///7///7///7////+/v7///7///7+//3+//7+//3///7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz+//3+//3+//39/vz9/vz9/vv+/vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fj//Pf+/Pf++/b8+fT8+fP8+fH6+O749Or38ef07d/w6dfr4szi17vUxp7VtV/lryDvsRTvsBLusBPrrhPrrRTorBTlqhXhqBbaoxbMmha+jhaqgBWbdxyWeTCbhVGrnHTAtpzHvqzEva/CvLG/u7C/uq/Auqy9sJCbfTS7jBXTnBHeowvgogbfoQPfogbprRLorBneqSfInz3JrmvTxp7d07Xl3MPr5NDx6tj17uL28ej49Ov59+369+/8+PP8+PP8+PP8+fT++/b++/f++/b++/b++/f++/f++/f//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f//Pj//Pj//Pj++/f++/f++/b++/b++/f++/f++/f++/f++/b++/b++/b++/b9+vX8+fT8+fT9+vX++vX9+fT9+fT9+fT8+PP8+PP8+PP79/L7+PD69+/69+/59u759u769ez59Ov48+r38un28uf17+P07eDz693v6Nfs5dLo38rk2cDd0bLWx53LsGrAlzDMmh7SnRvWnhnZnhHYnAnZmgPZmgLfoAfgngXfnAPfnALdmwLamAPbmQTYmAPXmALYmQPYmQLZmgfgoRLfohPgoxPhpRPhpRPipRPjpRTiphbgpxfcpyTUpzbFpVHMuIXSxqbf1Ljq4snv6dTz7Nz28eL49Oj69ez6+O78+O/9+PD9+vL++vX9+vX9+vX++/b//ff//Pj//Pj//fn//fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//fz+/vz9/vz9/vz9/vz9/vv+/vv//fz9/vz+//3+//3///7+/v7///7///7///7///7///3+//7////+//7+//z///7+//3///7///7///7///7///7+//3+//39/vz+/v7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//39//39/vz9/vz+/vz+/vz+//3+/vz+/vv//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn//fj//Pf++/b++vX++vP9+PH79+748+r38efz7N/x6dfr4szj17vcypnXsk/qrxrwsRPusBPsrxTnrBXhqBbaohbQmxe+jheqgBWXdByQdC2bh1CunnaxpomOh3OXkoPAu7DAurC/ua+9uK29t6q8tqe8taS/tZ2umWaddRPBjAjWmwPenwLdoAPfowjqrhPqrhXiqx/SpjfGp13QwJbZzq/j2cDr483w6df07d/18Ob38+r49e369+/79/H8+PP89/P8+fT9+vX++/f++/b9+vb9+vb++/f++/f++/f//Pf++/f++/f//Pj//Pj//Pj//Pj//Pj++/f++/f++/f//Pj//Pj++/f++/f++/b++/b++/f++/f++/f++/b++/b++/b++/b++/b9+vX9+vX8+fT9+vX9+fT9+vX++vX9+fT9+fT8+PP8+PL7+PH7+PD69+/69+/59u759e369Ov48+r38+r38un28eb07uHz7N7x6dnt5tTp4c3k3MPe1LjXyKLPuX+/mTjJmSPSnh3YoBveoxfanQjbmwPbmwPfoAnjpA3enQXdmwPcmgLbmQLWlgLYlwXVlQPUlQLWlgPXmALYmQbeoBHfoRPfohLhpBPhpBThpRPipRTjphTipxXgphncpybPqEPIsHLPwpvaz7Hn38Xu6NHz69n28OL48ub59Ov79u379+78+PD8+fH9+vP9+vT9+vX++vX++/b//Pf//Pf//Pf//Pf+/Pj//Pj+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vv//vv+/vv9/vv9/vr+/vr+/vr+/vr+/vv9/vz+//3+//3+//3///7///7///7///3///3+/v7+/v7///7///3///7///7+//3+//3+//3///7///7+//7+//7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39//3+//39/vz+/vz//fv+/vv//fv//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fj//Pf++/b++vX++fP99/D8+O759Ov38uf07eDx6dfr4szl2bvm0ZXXrT3qrhfusBPsrhTkqRXTnBa4ihWiexiUcyGWfTyij122qYfEuqSZlIZXVE00MSwtKiU2Myyoopi8tae7tKO5sqK3sKC0rZ2rpJOmnoe5q4iegDetfwzNkwPbnALanQLhpgzorBLsrhTorRjbqi7HplPNvJDXy6vh173p4cvu59Xz7N707+T28un49Oz59u769+/79/H8+PP7+PP8+fT9+vX9+vX9+vX9+vb9+vb++/f++/b++/b++/f++/f++/f++/f++/f//Pj++/f++/f9+vb++/f//Pj++/f++/f++/f++/b++/f//Pj//Pf++/f++/b++/b9+vX9+vX9+vX++/b9+vX9+vX9+vX9+vX++vX9+fT9+fT8+PP8+fP7+PH69+/69+/59u759u759e359ez48+r48+r38+n28ef18OXz7eDy69zv6Nbr48/n3cfg1rrYzK3RvYjBn0vKmyfTnyHZohzhphjlqBTmqBHkpQ7kphDlphLipBHcmwXamQLZmAPXlgPSkwLTlAXSkwTTlAPUlAPUlQLUlQTcnw/eoBLeoRPfoxPgoxPhpBThpRTiphTjpxPkpxPhpxfaqS/LrF3PvpHWy6zk2r/t5s/y69n27+H38uX48+r69ez69+77+PH8+fH8+fH9+fP9+fT9+vX++/b++/b++/b++/b++/b//Pj//Pj+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr+/vr+/vr//vr//vr+/vv//vr+/vv9/vz+//3+//3///7///////7+//3///z///7+/v7///7///7///7///7///7+//3+//3///7///7+//3///////7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/vv//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fj//Pf9+vX9+vX++fP9+PD6+O759ev48+j17+Hx6tjs5M7m273t1ZTYqjPqrxbsrxPqrBTboRa6jB6fgjqolWW5rIzBuqfEwLTCv7i/vLWQjIY4NS8uKyQxLyc6Ni1+eWu0rZ2vqZamno2QiXpqZVZNRzpeV0Skl3qvl2CceB27hwXSlwLVmQLipxDorBLsrhTrrhTgrCfNqU/Mu4zXy6vh17zo4Mrt59Ty693z7+P28ef49Ov49e359u779/H79/L7+PP7+PP8+fT8+fT8+fT9+vT9+vX++/b++/b++/f++/f9+vb9+vb9+vb++/f++/f++/f++/f9+vb++/f++/f++/b++/b++/f++/f++/b++/b++/b++/b++/f++vb9+vX9+vX9+vX9+vX9+vX8+fT8+fT9+fT9+fT9+fT9+fT8+PP7+PH7+PD69+/59u749e349e349Oz59Ov48+r38un38uj18eb17+P07N7y6tru5tPq4svl2sHc0bPUxZ/IrGfEmjLSnybaox/hphnlqBXmqRPlpxPlphLkphPkpRTipBLbmwfZlwLWlQLUlAPQkgLPkQTPkQPRkgPRkgPSkwPTlAPZnA3doBPdoRPfohPgoxPhpBTgpRTiphTjpxTlqRTnqhXgqR7RrErRvIXUyajj2b7s5c7x6tf17t/38eT48+n59Ov69u769/D69+/7+PD8+fP9+fT9+vX9+vX++/b++/b++/b++/b//Pj//Pj+/Pj9/Pj+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr///n//vr//vr//vv//fz//vr//vr+/vv+//3+//3///7///7///7///7///7///7///7///7///7///7///7///7+//3+//3+//3+//3///7///////7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/vv//vr//vr//vr//vr+/vr9/vr//vr//vr+/fn+/fn+/fn+/fn//fn//fj//Pf9+vX9+vX9+fL9+PD7+e/69ez38+j28eLz7Nvt5tHp3sLx15TZqzHprhfqrxLorBPXoRvOqE3RxKXGwrXEwLnCv7u/vrrAvbm+u7a6t7BxbmVgXlSAfXGdmYqdloWAempfWUxGQTYwLSIwLCIyLiUxLSB0aE6tmm6ghUKjeAvDjQXQlwThpxLmqxPrrRPsrxTkrCHVrErOvI3Xy6vg1rzo4Mrt5tTy7N3z7uP18Ob48+r39e359u769/H79/L69/L7+PP8+fT8+fT8+fT9+/P9+/T9+vT9+vX9+vb++/f9+vb9+vb9+vb9+vb++/f++/f++/f++/f++/f++/f++/f++/f++/f//Pj++/b++/b9+vX9+vX++fb9+vX9+vX9+vX9+vX9+vX9+vX8+fT8+fT9+fT9+fT8+PP8+PP8+PP7+PH7+PD69+/59u759u749e359ez59Ov38un38un18ef07+T17uHz693w6dfs5NHo38fh17vXyqjTv429m0bMni3ZpCThphrmqBTmqBTlpxPkphLkphTjpBPipBPgoxLamgjVlALSkgLRkALNjwHKjALNjwXMjgLPjgLQkAHRkQLVmArbnhPboBTdoRPfohPhpBTiphTlpxTlqRTnqhTpqxPmqxbZqjLXvHTWyafj2b3r5Mzw6db07d728OP38+j59Ov69ez79u769+/69+/8+PL9+fT9+fT9+vX++/b++/b++/b//Pf//Pj//Pj//Pj//Pj+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//fz//vv//vr//vr//vr//fz+/vz+//3+//3+//3///7+//7///7///7///7+//7+//3///7///7///7///7///7+//3+//3+//3+//3///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/v3+/fz+/v39/vz9/vz+/vz//fv//vr//fn//vr//vr//vr//vr+/fn//vr//vr+/fn+/fn+/fj+/ff//Pf++/b9+vX9+vP8+fH7+O/79uz49On28eT07d7w6NXs4cb13ZzZqzXprhfrrxPorBPfpRfNnzPOu4vFwbK/vrq/vrq/vbm/vLi9ubS5ta2moZiVkYZ1c2hUUEU8OC02MSgwLCIxKyIvKiEuKiAsJx8tKB0+NiKRglymj1eXdiStfgnLlArgpRTkqhLrrRPsrxTmrR3Zr0bRvo/Yy67h177o4Mvt5tTx69zy7uP18Ob38un39Oz49e369+/7+PH69/L7+PP8+fT8+fT8+fT8+fT9+vT9+vX9+vX9+vb9+vb9+vb8+fX8+fX9+vb9+vb9+vb9+vb++/f++/f++/f9+vb++/b++/b++/f++/b9+vX9+vb9+vX9+vX9+vX8+fT8+fT9+vX9+vX8+fT8+fT8+fT9+fT8+PP8+PP8+PP8+PP7+PH7+PD59u759u759u759+359e358+z48+r38un08Obz7+P07eDy69vv59Xq4s7m3MPe07bUxqHMs3bCmjrToyzgph7kqBbmqBTlpxTkphLkpRTipRPhpBPgoxPfoRPZmgvSkgLPjwLNjQPKiwLHhwLKiwfJigPKigPLjALNjQLRkwjZnBPcnhTcnxTfoRTgoxPiphTlqBPmqhTprBPqqxPprBThqyHauWLYy6bj2r3r5Mzw6db07d327+P48uf48+r69ez69u359u769+/8+PL8+PP9+fT9+vX9+vX++/b++/b++/f++/f//Pj++/j//Pj//Pj+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//fz//fz+/v3+//3+//3+//3///7+//7+//7///7///7+//3+//3+/v7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//z+//z9/vv9/vz+/vz+/fz9/vz9/vz+//3+//3+/fz+/Pr+/fn//vr//vr//vr//vr//vr//vr//vr+/fn+/fn9/fj+/ff//Pf++/b9+vX9+vT8+fL7+PD79+759ev28ub07uDw6djt5Mr54qrYrUDprRnrrhPorBPkqBXVnx7Ho0zMwaPBvri+vbq+vLi4tbGal5Jyb2lTT0c6Ny0uLCEtKiAvKyIsKB8rKR8xLCItKB4rJhwtKR8qJRosJhdbTi6WglKcgkOadBK+jQ/coxXkqhPprRTqrhPmrRvcsUTUwpLZzrHi2b/p4c3u5tbx6t3y7eP08Ob28un28+v39Oz59u/69vH79/L79/L7+PP69/L7+PP8+fT9+vX9+vX9+vX9+vb++/b9+vb9+vb9+vb9+vb9+vb9+vb++/f++/b++/f++/b9+vb++/f++/b++/f9+vX9+vX9+vb9+vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT9+fT9+PP9+PP8+PP8+PP8+fH69+/69+/59u759u759u359e359Ov48+r28un08Obz7uLx7d7x6tru5tTo4cvi2b/bz7HQwZrEp2LNoTbbpifkpxjmqBPlpxTlphTjphLkpRTipBPgoxPfoRPfoRLamg3PkAPNjQLKiQLGhwHBhALDhgbChAPDhATEhgTEhwPJjAjTlxPZmxXbnRXdoBTgoxPjpxPmqBTmqhTpqxTqrBPprRTmqxjbtFLezqLl277r5M3w6db07N317+L48uf48+r69ez69e369+/7+PD79/L8+PP8+PP9+fT9+vX++/b++/b9+vb++/b++/f//Pj//Pj//Pj+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vv//fz+/vz+//3+//3+//3///7///7+/v3///7+//3+//3+//3+/v79//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz+//3+//3+//3+//3+//39/vv9/vv9/vv9/vv+/vv//fv+/vr+/vz+//3+//3+/vz//fv//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fj+/fj//Pf++/b++/b9+vX8+fP7+PD69+/79u348+n28OPy69vv5tD15LngulznrBvsrhTprBPnqhbfpRfNmyLGrW3JwKqnpaJubGlFQT44NTEzMCsvLCYsKSAvKyIuKSAsJx4sJx4qJx0qJhssJhsrJRgqIxEzKhQ+NBleUCqGdEaVgE6UeC+uhBfVnxXiqBTnrBPprRTkrBvdskbXx5nc0bbj2sPp4s/u5tfx6t3y7ePz7+b18+n18ur38+z49O769vH69vH69vH69/L69/L69/L7+PP9+vX9+vX8+fT9+vX9+vX9+vX9+vX9+vX9+vb9+vb++/f9+vb9+vX9+vX9+vX9+vX9+vb++/b++/b9+vX9+vX9+vb9+vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+PP9+PP++fT9+fT8+PP7+PD69+/69+/59u759u749e359e359Ov48+r18ej17+Xz7uLy7N7x6trt5tPo3snh173ZzK7Mu5HCpFjWpjLgqB7lqBTmqRPlqBPkphTiphLjpRPipBTfohPfoRPeoBLbmw/OjwPJigLGhQK+gAO2fASyeQeudQatcwWvdQavdQW2ewbIixDRlBTXmRTcnhTgoxPjpxTmqBTmqhToqhTqqxPqrRTorBbar0bo06Dp3cHs5M7w6db07d317+L48uf38un59Ov79u369+/69+/79/H79/H8+PL9+fT9+vX9+vX9+vX9+vX++/b++/f//Pj//Pj//fn9/Pj+/fn+/fn+/fn//vr//vr//vr///v//vr//vr//vr//vr//vr//vr//fv+/vz+//3+//3+//3///7///7///7///7+//3+//3+//3+//38//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vz9/vr+/vr//vr//vr//fz+/vz+/vv//vr//vr//vr//vr+/vr//vr//vr//vr//vr//vr//vr+/vr+/fn//fn//Pj++/f++/b8+fT8+fP8+fH7+PD79+759Or48eXz7d/w6Nbw5cftzn/jrSDrrhTqrRTnqxXiqBXXoRjEmzbNuYmfnJRBPz00MCwyLyovLCYuKyQsKSEsJx4sJx0rJhwqJBkpIxUqJBQrIhA/NR1XSyxuXjl8a0CDckaAb0Z6a0WIdECogyXPmhXcpBTjqBTkqhTfqB3ctE7by6Df1Lnl3Mbq49Hu59jw6t3x7OLz7+b08uj18ur48uv48+759fD59fD69vH69vH59vH69/L7+PP8+fT8+fT7+PP8+fT8+fT8+fT7+PP8+fT8+fX9+vb9+vb9+vb9+vX9+/P9+vX9+vX9+vX9+vX9+vX9+vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+PP8+PP8+PP8+PP8+PP7+PD69+/69+/69+/59u759u759e359Ov38un28ej28Ob17+P07d/w6dnt5dPn3cnf1rvXy6vKuYvEpFXbqCzkqRjlqRTmqRPlqBPlpxPkphLhpRPgpBPfoRLeoBPdnxTZmxDNjgbFhgS9fgWvdQSfaQKXYwWPXQWdaQ2jcBOnchSsdA68gQ/LjxPUlhTcnhTgoxTjphXmqBTnqhToqhTqqxXrrBTpqxbarUHv16Hs38Pu5tDx6df07d317+L38eb38un59Ov69u369+/69+/7+PD8+fH8+fL9+fT9+fT8+fT8+fT9+vX9+vX++/f//Pj//Pj//fn+/fn+/fn+/fn+/fn+/fn//vr+/vr+/vr//vr//vr//vr//vr///v//vr//vr+/vv+//3+//3+//3///7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vz9/vz9/vz9/vz9/vz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn9/Pj//Pj//Pf++/b9+vX8+fT8+fH89+/79e368+n18OPy693w59T34KfitUXorRrqrRTorBXkqRThpRXTnRvBnkjKvp6Jhn8yLiwvLCcwLSYsKCAqJhwrJhooIxYrJBI6MBlLPyBjVS96aT+Ab0N9bEN1ZkJrXkFcUjxMRTI+NyRJPBideyfIlBXTnBTaohPepRTVoyDevGLf0anh177m3cnr49Pu59nw69/x7OPy7ubz8Oj08en28+v39O749O/59fD69vH59vH59vH69/L7+PT7+PT7+PT7+PT8+fX8+fT7+PP7+PT8+fX8+fT9+vX8+fX8+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT9+fT9+fT8+PP8+PP8+PP8+PP79/D69+/69+/59u759u749e359ez59Ov38un38un28eb17+Py7d7v6Nnt5NLn3cje1LrWyqrKuIrMqlTdpyPmqhTnqhTmqRPmqRTlpxPkphLiphTgpBPfoRLeoBPbnhPWmBPFiAmydwWncAmcaAyKWgp5SwKUZRemdByqdxyseB2xehm5fxTKjRTWmBTeoBTgoxPiphXlpxXnqRTnqhTnqxTorBPmqxbZr0Px26bt4sXv59Lx6tj07d717+P48uf38un59Ov59ez59u769+/7+PD8+fL9+fT9+fT9+fT9+fT9+vX9+vX++/b++/b//Pf//Pj9/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/vr9/vr//vr//vr//vr//vr//vr//vr//vr+/vv9/vz8//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz9/vz+//39/vz9/vz9/vz+//39/vz+/vr//vr///r//vr//vr//vr//vr//vr///n//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pf++/b9+vX9+vP8+fH79u769ev28ub17uHy69v36cTqy33jqyHqrhXprRTnqhTjpxXdohXImCLGrWy6s6FXU08uKyYrJyAsJhsvKBU6MBZRRCVpWjV2ZT18bEN5akRyZENoWz9bUTlKQjA5MiMwKRU2KgpEMwdOOQeYdB7CjxTNlhPUnBPYoRPNnynjxn3i1bLk28Pn4Mzr5NXt6Nzv6+Hx7OPy7uXy7+j08Or38er38+349O/49fD59fD59vH59vH69/L7+PP7+PP7+PP7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fX8+fT8+fT9+vX8+fT8+fT8+fT8+fT8+fT9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+PP9+fT8+PP8+PP8+PP8+PP8+PP69/D69vD69vD59u759u749e349Oz58+v48+r48un28ef07uPz7N7v6Njs49Hn3cjf1brXy6vLuY3RrVPfqB7nqxTnqhTnqhTmqRTlpxPkphLjpRTipBTfohLeoBTYmhTQkxO+gxGpdA+mchWmcxqicR6GVwqdbh+seSCvex+xfB+2fx69hRnQkxbZnBXeoRThoxTiphTlpxTmqBToqhXnqhTnqxTkqhfctE/w3q/s48nv6NTy69n07d/18OP28uf38un58+v59Oz59u769+/7+PD8+fH9+fP9+fT9+fT9+vX9+vX++/b++/b//Pf//Pj//Pf+/Pf+/Pj+/fn+/fn+/fn+/fn+/fn9/fn9/vr//vr//vr//vr//vr//vr//vr//vr+/vv+//39//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/vz9/vz9/vz9/vz+//3+//39/vz9/vv+/vv//vr//vr+/vr//vr//vr//vr///n//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj++/b9+vX++vX8+fL7+PD79+749Or28ub07uH069b76b3itkjkrB7qrhTprRTlqhThpxPXoRXBmDPHsoGcl4pEQThFPi1ZTTJtYDt+bkZ/b0Z4aUJvYkBiWDxSSjVAOik1LhoxJgw7KwVOOghqUA2EZRKYcxlrTgmadRvAjhTJlBPQmRTUnRbQp0Tl0Z7j2b3n38rq49Ls5tnu6d7v6uHw7OPx7eXy7+f08Or28ev38+338+739O/49fD49fD59vH59vH69/L7+PP7+PP7+PP7+PP7+PP8+fT8+fT7+PT7+PT8+fT8+fT8+fT8+fT8+fX8+fT8+fT8+fT8+fT8+fT8+fT7+PP8+fT9+vX8+fT8+fT8+fT8+fT8+fT8+PP7+PP8+PP9+fT8+PP8+PP8+PL8+PL8+PP7+PD69vD69vH59u/59u749e359e358+z48+r48un28efz7+Py7N7v6Nns5dLn3snh173Yza3NvpLTr1PhqR3nqxToqxTnqhTnqRTmqBTlphTkpRXipBTeoRPbnRPUlxPMjxS6gRaseBqrdx2teR6teh+XZhOfbx2zfyO0gSG2giK5gyK/iB3TlxfbnhTeoRTgohTiphXkphTlpxTmqRTnqhTnqhTjqBrjv2Tv4b3u5c7w6dbz69z17uH17+T28uj48+n58+v59O359u769+/7+PD7+PH8+PL9+fT9+fT9+vX9+vX++/X++/b+/Pb//Pf//Pf//Pf9/Pj+/fn+/fn+/fn+/fn+/fn9/fn+/vr//vr//vr//vr//vr//vr//vr//vr+/vv9/vz+//3+//3+//3+//3+//3+//3+//3+/v39/vz9/vz9/vz+//3+//3+//3+//3+//39/vz9/vz9/vz9/vz9//39//39/vz9/vz9/vz//vz+/fz9/vz9/vz9/vz9/vz+/vz9/vz9/vz+/fz//vv//vr9/vr+/vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//Pj++vf9+vX++vX8+fP7+PH69+/69u348+n28eXz7d/169L03Jfgsj/nrRnqrhTorBPkqhTfphTOnB3BnkS+spWVkYJ7c1x9bkx4aURsXz9eVTlPRzBAOSM0LBU1Kg49LwpSQA5wVRSIZg+acQmpegWvfQOtfglyUQecdhrBjhTHlBPPmBXNmiHdvXDm2Lfl3Mbp4dDr5dbt59vv6d/w6+Lv7OTx7uby7+f08en28u338+738+739O/49fD49fD49fD59vH59vH69/L69/L69/P7+PT7+PP8+fT7+PP7+PP7+PT8+fT7+PP7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+fT7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+PP8+PP8+PP8+PP8+fT8+PP8+PP8+PP79/H7+PD8+PP8+PH79/H69vH59fD59u759+359e358+z59Ov38un18efz7+Pz7d/x6trt5tTo4Mzi2MDZzbHQwZjVslbiqR3oqxTorBPnqhTnqhTnqRTlpxTkpRXhpBTeoRTbnRPWlxPNkBS+hRiyfR2yfSCyfiCzfyGdbBafbx21giS4hSS6hSS7hiS/iR/UmRjcnxTeoRPgoxTipRXjpRTkphPmqBTnqRXmqRbfqSjv0IXv48jw5tLx6tjz7N317uL18OX28ej48+r58+z69O359u769+/69+/7+PH9+fT9+fT9+fT9+vX9+vX9+/T++/b+/PX+/Pb//Pf//Pj+/Pj+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr+/vr9/vr9/vz+//3+//3+//z+//v+//3//v3//fz//fv//vr//fz//vv+//z+//39/vz//fz//vv//vr//vr9/vz8/vz8/vz9/vz9/vz9/vz+/vv//vr//vr9/vr9/vz+/fz+/fv9/vr9/vv9/vz+/vz//fz//fz9/vz+/vv//vr//vr///v//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn/+/n++/f++/b9+vb8+fT8+fT8+PL6+O/69ez48+n28OX07t/47s/y2I7erTLorhnqrhTprRTmqhXepBbMmyK/pWiek3plX09bUz5KQi85MiAuKRUvJglENQthSg58XAyTbQyfdQmleAepegOufQKzfwG3gQG0gQd1UwaeeBrDkBTIlBTKlhrJokXu2Kbm3MTn383q49Pr5tns6N7u6eDw6+Pw7eXy7ujz7+r18ez28u328u328u328+739O/49fD49fD59vH59vH59vH69/L69/L69/P69/L69/L69/L7+PP7+PP7+PP7+PP7+PP69/L7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+PP++PP8+PP7+PP8+PP8+PP8+PP8+PP79/H69/D69vH69/D69/D69vD59u759u759u759e358+z48+r38un18efz7+Tz7eHx6tvu59bq4s/k2sTc0LbVxp/bt1/iqB7pqxXorBPoqxTnqhTnqhTlpxPkpRTipRTfohTdnxTZmxPTlhXGjRq5gh63gSG4giK4gySicBqaaxi5hia8hyS8iCS9iSXBiyLSlxnbnxXeoRXgohThpRXjphXkpxXmqBTnqRXjqRrar0X54qrw5c7x6NXy69r07d/17+T28eb38un48+r69Oz69e359u769+/7+PD8+PL9+fT9+fT9+vX9+vX9+vX9+vX9+vX++/b//Pf//Pf//Pf//Pj+/fn9/Pj+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+//39/vv9/vv9/vz9/vz9/vz9/vz9/vz9/vz+/vz//vr//vv//fz9/vz9/vz+/vv//vr//vr+/vr9/vz9/vz9/vz9/vz9/vr+/vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vr+/vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj++/b++/b++/b9+fT9+fT8+fH69+/59u339Or18Ob17t/67c7w147gsjznrhvqrhbqrhXlqhXboxnFmzN+bUE0LyEzKRE/MAtWPwhuUwmKaA6WbwyedQmleAeqegOufQGwfgGzgAC2ggC6hAG8hQG4hAd2VQegehvFkhXHlRjHnjjkzI/p3sHn38zp4tLr5Njs59zt6N7u6eHv6+Tw7eXx7ufz8On18ez18ez28u328u338+739O/49u/49e/49fD59vH59vH59vH69vL79/L69/L69/L69/L69/L7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP8+fT8+fT8+fT8+fT8+PP8+PP8+PP8+PP7+PP8+PP8+PP79/L69/H69+/69+/69+/69+/69+/69+/59u759u759e359Ov48+r28ej28ef08OP07uLx693w6Njr5NHm3cfg1bvazKnhv3DepyPprBXorBPnrBPnqhPnqhTmqBTlphXkpRTioxTfoRTdnxTanBXPlRu+hx26hSO6hiS7hiWufSaRYQ+9hya+iia9iya+jCbDjiTPlRvboBffohThoxXhpRbjphblphXmqBTmqRbeqCTry3/058Xv6NTy6tnz7d717+L28eb38uj48+r59Ov59Oz59e779e769+/7+PD8+fL9+fT9+fT9+vX9+vX9+vX++/b++/b//Pf//Pf//Pf//Pf//Pj//Pj+/Pj+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+//3+//z8/vz9/vz+/vv+/vv9/vv9/vv9/vv//vv//vr//vr//vv+/vv+/vv//vr//vr//vr//vr+/vv+/vv+/vv+/vv+/vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj++/f++/b9+vX9+fT7+PL7+PD59+749uz49Or38Ob17uH57s3z3Jjes0TkrB/prhblqhXgpxXPnB9oTA1aRRF3WRGJaBGacxCieAipewKtfACufQCvfgGxfwCzgAC1ggC5hAG6hAC9hwDAiQG6hwd4VgejfBvFkxrBliziyYjr3bzl3s3o4dLq49fr5tvs6N3t6d/v6eLv7OTw7eXx7ubz8Oj18ez18ez18u328u328+739O/49e/49fD49fD49fD49fD59vH69vH7+PP7+PP69/L69/L69/L69/L69/L69/L69/L7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP8+PP7+PP8+PP8+fT8+PP8+PP8+PP8+PP8+PP79/L8+PP8+PP79/L69vD69+/7+PD69+/59u759u759u759u749e349Oz58+z48+r38un28uf18OX07uPx697w6Nns5dPo38vj2MHe0bDny4jYpSzprBforBPnqxTnqhTnqhTmqRTmpxTkphPipRTgoxTfoRTdnxXWmhvDjB28iCO8iCS9iCa2hS2MXRG/iye/iya/jCfAjSjDjybOlR3boBngoxPhpBTipRXjphblphXmqBTgphzetU7347Dv59Dw6tfz7Nz07uD17+T38uf38un49On49Or49Oz59u769u/69+/7+PD8+PH8+fL9+fT++vX9+vX9+vX9+vX++/b++/b++/b//Pb//Pf//Pf//Pj//Pj+/fn//vr+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/vz+//39//39/vz//vr//vr+/vr+/vr+/vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj//Pj++/f++/f++/b9+vX7+PP7+PH69+/49e339ev38un28Of07uP37df96bTmxGfaqzPepxzephXUoBt5VAyXcRWufAOwfQGwfgGxfgGxfwCygACygQC1ggC3gwC4hAC7hQC9hwC/iAHBigDEjAG/igh6VwedeiXGoETlyovq3sHm3s3o4dPq49fr5tvs593t6N/u6eHv6uPv7OTw7eXy7+fz8On18ez18ez18u328+728+728+739O/49fD49fD49fD49fD49fD59vH69/L69/L69/L69/L69/L69/L69/L69/L69/L69/L7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP8+PP7+PP8+PP8+PP79/L8+PP8+PP8+PP8+PP8+PL8+PP79/H79/H69vD79+/69+/59u759u759u759u759u749e348+z48uv48+r38un28uj18Ob07uPy7N/w6dru5tXq4s/m3Mfh1bjm0qDZrkjnqhrorBPoqxXnqhTnqhTmqRPlpxTjphTipRThpBTgohTfoRXanhnJkRy/iiS/iye/iye6iC+SYhC7iCbBjSjBjijCjinDjyfMlCHboBrgoxPhpBTjphXkphXlpxThphvaqzr03aH06cvw6dfy7Nvz7uH18OP18eb38uj48+n49On59Ov59u359u769+/69+/7+PD8+PH8+fL9+fT9+fT8+fT8+fT9+vX++/b++/f++/b++/X++/b//Pf//fj+/fn+/fr+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vv//fz+/vz9/vz+/vz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr//vr//vr+/fn+/fn+/Pj+/Pj//Pj//Pj++/f++/f9+vb8+fT7+fL79/L59fD49e339Ov38un18Of07uP37tz57Mfx2JTcs0jUoyfQniF5VA2heBW2gQK1gQC1ggC2ggC2ggC3gwC3hAC6hQC8hgC9hwC/iADBigHDiwHFjQDGjQHBiwh4WQyqkVTm0J3p3MHm383m4NLn4dXq5Nnr59zt6N/u6eDv6+Lv7OTw7eXx7uby7+f08en18ez18u328u328u328+739O/39O/49fD59vH59vH49fD49fD59vH59vH59vH69/L69/L69/L69/L69/L69/L59vH59vH59vH69/L69/L69/L69/L79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L7+PH7+PH79/L7+PD7+PD79+/89u/69+/59u759u759u759u759u749e349Oz48uv48uv48ur38un18Ob07uPy7N/x69zu59fs5NHp38vj2MDh07HjwW/gqiXnqxboqxXnqhTnqhTmqRTmpxXjphXipRXhpBTgohTgohTcoBjNlh7CjSbBjSjBjSm9iy2gbhWyfiHCjirCjinCjinEjyjKkiPanhvhpBTipRXjpxXkphXjphjapzPt0YT26crx6dby69vz7eDz7uT08OX28ef38un48+r59Ov49e359u759u769+/7+PD7+PD8+fL9+fT9+fT8+fT8+fT9+vX9+vX++/b++/f++/f++/b++/f//Pf+/Pj+/fr+/Pv+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vv//fz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/Pj//Pj//Pj//Pj++/f++/f++/f9+vX8+fT7+PP69/L49fD49e339Oz18ur08ej07+Xz7eD27dn77Mjt1pzVtWB2VhimfBe6hQK7hQC7hQC8hgC8hwC9hwC9iQC/iADAiQDCiwDDiwDEjQDFjQDIjwDJkADBjQp4XRu+sJHj18Hk3Mrm39Hn4dXo49jp5Nvr5t3r6ODs6uLu6+Pv7OTw7eXx7uby7+j08Ov18ez18u318u328u328+738+749O/49O/59vH59vH49fD59vH59vH59vH59vH59vH69/L69/L69/L69/L69/L69/L59vH59vH69vH69vH79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L69/D79/D79/L7+PD7+PD69/D69vH59u759u759u759u759u749e349e328+v38+z48uv38ur28en17+b07uP07N/y69zw6Nju5tTr4s/l3Mbh1bvmzZbZsU/hqB7nqhXnqhTnqhTmqBTmpxbkpxXiphXhpBThpBTgoxTfohXTmh7DjibCjinDjinCjiuvfB+lchrBji3DjyjDkCnDjyrGkSTYnhviphXjphbkphfiphnaqDHv1I736sny6tfy69z07N/07uH18OX18Of38un48+r59Ov69O359u759u769+/7+PD7+PD8+PP8+PP9+fT9+fT9+vX9+vX++/b++/b++/b++/f++/f++/f++/f++/b//Pj+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vv//fz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//Pj//Pj/+/r//Pj++/f++/f9+vb8+fT8+PT7+PP7+PP59vH59vD49O/28+z28ur28Ojy7+by7uT07d/37tf46cF9Yi+qgBe9hwK+iAC/iAG/iQC/iQDBigDBiwDDjAHEjADFjQDHjQDIjwDJkADKkAHLkQHCjgt2XR22qpHe1MLj28zn39Po4tjp5Nvq5t3r59/s6uHt6+Lu6+Pv7OTw7eXx7uby7uj08Ov18ez18ez28u328u318u338+738+739O/39O/49fD49fD59vH59vH59vH49fD59fD69vH79/L79/L59vH69vH69vH69vH69vH69vH69vH79/L69vH69vH79/L79/L79/L79/L79/L79/L79/L79/L79/L79/L69vD69+/79/L7+PD69+/59u/59u/59u759u759u759u749e339Oz28+v38+v48+r48uv28en28ej08OX07+T07eHz7N7x6trv59Xq4s/m3cfh1rzcyqPYunfYpi/jqRroqhXnqRXmqBTlpxTlphTjphXipRXipRXipBThoxXWnR3GkCXCjinDjyrDjyq2gyWebRvBji3DjyrEkCrEkSnFkCbVnRzhpRjfoxvaoR/ZpS/tzXz67Mfz69fz7Nvz7d/17uL17+T18eb28ej38un58+v58+z59e359e/69/D69+/7+PD8+PL8+PP9+fT9+fT++vX9+vX++/b++/b++/b++/b//Pf//Pf//Pf++/f//Pf//Pf//Pj//Pj+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vv//fz//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pn//Pn//Pj++/f9+vb9+vb8+fT8+PT7+PT7+PP7+PP59vH59vH49e/39O338uv18un08Ojz7+bx7uTx6Nl7ZDWughfCiwLDiwDDjAHDjADDjADEjQDEjQDGjQDHjgDIjwDKkADKkADIkAPCjgy6ixKkexNnUhyvo4na0L3h2srn4NTo49nq5dzr5t7r6ODt6+Lu6+Pv7OTw7eXw7eXx7ufz7+n08Ov08Ov18ez18ez28u318u328u338+738+739O/49O/49fD49fD49fD49fD49fD59fD69vH69vH69vH59vH69vH69vH69vH69vH69vH69vH69vH69vH59fD59vD69vD69vD69/D79/H79/H79/H69vD69vD69/D59u/59u769vD69+/59u759u749e349e349e349e349e349e328+v38+v38+r48+r38en28ej18ef08OX07+T07uPz7N/x6trv59Xq4s/k28Td0rfQwJ7HrXXMnjHaoyDlqRvnqRXmqRTmqBPlpxXlphXkphbjphbkphXjpRXanx3JkyXEjynCjyrCjyq5hiaebRfAjS3EkCvFkCvFkSrGkSfMlh3XnyHPmSHKliTFlC7GpV377Mz17dz07uD07+L18OT28eb28uj48+n49Or59Oz49O349e369u/69+/7+PD7+PD8+PP8+PP9+fT9+fT9+fT9+vX9+vX++/b++/b++/b++/b++/b++/f//Pf//Pf//Pf//Pj//Pj+/Pj+/fn+/fn//vr//vr//vr+/fn//vr//vr//vr//vr//vr//vr//fv///v//vr//vr//vr//vr//vr//vr+/fn+/fn//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr+/fn//vr//vr//vr//vr+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj//Pj//Pj//Pj++/f9+vb9+vb8+fT8+fX7+PT7+PT6+PP69/L69vH59fD39O/38+728+v08erz8Ojy7+bv6Nh+ZjOxhRbFjALGjQDGjgHGjgDGjgDHjgDHjwDIjwHGjgTBjQq7iQ+ugBCgdxKNbBiCZB6HZxqXf0PAr4vTybPe18Xm39Po5Nnr5d3s5+Dt6uLu6+Pv7OTw7eXx7ubx7ubz7+n08Ov08Ov08Ov18ev18ez18ez18u328u338+728+738+749O/49O/49O/49O/49O/59O/59O/59fD59fD69vH69vH59fD59fD59fD59fD59fD69vH69vH59vD59fD59u759u749e349e359u759u759u759u759u759u749e359u759u759u759u759u749e339Oz49e349e339Oz39Oz28+v48+r48+r38un38un28ej28ef07+X07uPz7eLz7ODw6dnu5dTq38zg1bzVyKnFsIG7m1LDlCzXq0XgskXbpyfhqBnmqBTmqBTlphXlphXkphXjpxXjphXcoRzNlSPFkCnDkSvDkSq9iyqdbRW/jSnFkSvFkivFkyvHkyq/ih7JlyrGlCnElCvDky25kDny3Kz379717+T18OX28ef38uj48+r49Or69ev59e349e359u769+/7+PD7+PD7+PD8+PL8+PP9+fT9+fT9+fT++vX++/b++/b++/b++/b++/b++/b++/f//Pj//Pf//Pj//Pj//Pj//fn+/fn+/fn//vr//vr//vr+/vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn+/fn+/fn+/fn//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr+/fn+/fn+/fn+/fn+/fn//vr//vr+/fn+/fn+/fn+/fn+/fn//fn//Pj//Pj//Pj+/fn+/fn//Pj//Pj//Pj++/f9+vb9+vb9+vb9+vb8+fX6+PP5+fP69/L69/L59vH39O/39O/28+718u308erz8Ojs5teAaDK1hxbIjwLJkADJkADJkADHjwPEjgbCjQq+iw6tfw6NaA16XBiHc0WajW63rpfVxZ7Qrl29lzzDqWnNwKLY0bvk3M7o4tfr5d3t5+Dt6uLu6+Pw7eXx7ubx7ubz8Ojz8Or08Ov18ez18ez18er18ev18ez18u328u338+728+738+738+749O/49O/49O/59fD59fD59fD59fD59fD59fD59fD59fD59e/49e349O/49O/49O/59e/59u749e349e359u749e349e349e349e359u759u749e349e349e349e359u749e359u749e349e339Oz39Oz49e339Oz28+v48uv58+r48un38un38un28ej18Obz7+Tz7eLz7eHy693v59fs4tDm2cTYy67KuJG+nlbBljLRqE7mzZPp05/lw3LbrTrdpSHgphvkphflphblphXlphXkpxXfpBvPmCHGkinFkSrFkirAjy6aaxi8jCfEkynElCvElCvGkyyxgB/GlTPElCvElCvGlCzCkzHbwof58d/28OX28ej38un48+r59Ov59Ov69O369e359u759u769+/69+/7+PD7+PD8+fH9+fP9+fT9+fT9+fT9+fT++vX++/b++/b++/b++/b++/b++/b//Pj//Pj//Pj//Pj//Pj//fn+/fn+/fn//vr//vr//vr//vr//vr//vr+/fn//vr//vr//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj//Pj//Pj//Pj+/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn9/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn+/fn+/fn//fn//fn//Pj//Pj//Pj//Pj//Pj+/fn+/fn//Pj/+/f++/f++/f9+vb9+vb8+vb9+vb8+fT7+PP79vP69/L69/L49fD49fD29O328+318u308evr49aDajC3ihbIjwTIkATGjgbBjAmtfw6ZcxaGaCJ9aDaMfVm7r5Pd1b7l3s/n4tbj3tPi2sThzJrLpEPAnEPIs4PSxqvf18bl39Lq5dvs59/t6uLu6+Pw7eTx7uXy7+fz7+r08Ov18ez18ev18ur08en08ev28u328u338+738+738+738+738+738+749O/49O/49O/49O/59fD59fD49O749O349e349e749e339Oz39Oz39Oz39Oz39Oz49e339Oz39Oz49e349e349e349e349e349e349e349e339Oz39Oz39Oz39Oz39Oz49e349e349e339Oz39ev38+v48uv48+r48+r38un38un38un28ejz8ef08Obz7uTx7eLx7N7w6drt5NLn28fbzrTMu5TEpWLBlzTQqUrn0Z3n2bvp3cLv37zz3q7nyIDctFberDXgpyDjphnjphjjpRffpB3RmyHFlCjFkirEkyrCkjCbbBu9iyfFlCrFlCvHlCzHky6wgim+jzPFkyzElCvGkyvGlC3NrGf57NL48uf48+r48+r59Ov59Ov59Ov59e349e359u759u759u759u769+/7+PD8+PP8+PP9+fT9+fT9+fT8+fT9+vX9+vX++/b++/b++/b++/b//Pf//Pj//Pj//Pj//Pj//Pj//Pj+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr+/fn+/fn//vr//vr//vr+/fn+/fn+/fn+/fn+/fn+/fn+/Pj//Pj+/Pj//fn//Pj//Pj//Pj//Pj//Pj//Pj//Pj+/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//Pj//Pj//Pj+/Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f9+vb9+vb9+vb9+vb9+fX7+PT79/P79/P69/L59vH59vH39O728+728+718u3o4dSFay6ziBu6ixSrgRmJaBNxVRCGbzqnlW7IvKHf2Mjt6ODs6eHr6d/r6N/q5tzo49jk3tDl2Lvdv3XAmTfGplvLu5bZ0Lvj28zp5Njs597t6uHu6+Pw7eXw7uXx7uby7ufz7+n08Ov08Ov08Ov08Or08er18ev28u328u328u328u338+738+738+738+738+738+739O339O749O739O339Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v39Oz39Oz39Ov39Ov39Oz39ev39Oz39Oz39Oz38+z38+r38ur48+r48+r38un38un28ej28ej28ejz8efy7+Xz7ePy7eDx6tzu5tbo38zf0rrSwqDFqmzEmTrOpUTozY7p3L7o38rr4c/s4tDt48305sP55LX12pjw0HnerDnSmyLTnB/Xoi3NnjbEkyzGkyvFkyvFki63hijEkCnHlCvHlCzHlCzGky64ijSwgynFky3GlCvIlS3IlS3DnVHx5L769Ob48+r48+r59Ov58+z59ez49e349e759vD59e/59u769+/69+/7+PD8+PP9+fT9+fT9+fT9+fT8+fT9+vX9+vX++/b++/b++/b++/b++/b++/f++/f//Pj//Pj//Pj//Pj+/Pj+/fn+/fn+/fn+/fn+/vr//vr//vr//vr//vr//vr//vr//fv+/Pj+/fn+/fn+/fn+/fn//Pj/+/j//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj+/Pj+/fn+/fn+/fn9/Pj9/Pj+/Pj+/Pj+/fn+/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/Pj+/Pj+/Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f9+vb9+vb9+vb9+vb9+vb8+fX8+fT8+PT79/P69/L59vH49fD39O/39O/28+7i3tRvXzh8YyaEbDGPfVO5r5bj3tHx7ujx7ujw7Obu6+Tu6+Pu6+Pt6+Ls6eHs6ODr6N3o5Nnl3c3m1q7Tsl3CmjjEq2zRxabc1MDm4NLq5dvt6d/u6+Lw7eXw7eXx7ubx7uby7ufz7+r08Ovz7+r08Or08en18er18ev28uz28u318ez28u328uz18uz18uz28uz28uz18ur28uz28+z39Oz28+v28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v28+v39Oz39Oz28+v28+v28+v28+v38+v28+v39Ov38+z39Ov38+v38+v38+r48uv38un38un38un38un28ej28ej28ej28ef18Ob07+Xz7uPz7OHx6t3u59bo4M3d07zTw6HGrHTEmjvLoT/s0JLq3b/p4c3r5NLu5tbv5tfu59Xt5tTt5tP05MPNsHK8kTHDkyvGlCrQpknty3/Cki/GkyvHlCzHlCzIlCzIlCzHlCzHlCzHlCzGlC64izKsgCnFlTTHlS7IlS3IlS27kT7p2KX89eX48+r48+v59Oz59O349e349e359u/59e/69vD69vD59u/69/D8+PH9+fT9+fT9+fT9+fT9+vX9+vX9+vX++/b++/b++/b++/b++/b++/f//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//fv//Pj+/Pj9/Pj9/Pj9/Pj//Pj/+/j//Pj//Pj//Pj//Pj//Pj++/f++/f+/Pj//Pj//Pj//Pj//Pj//Pj+/fn9/Pj9/Pj++/f//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//fn//fn//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f++/f++/f++/f9+vb9+vb8+fX8+fX8+fX7+PT7+PP69/L59vH49fD39O/39O/39O/q5+GrppvEvrLf2c7y7eP08enz8Ony7+ny7uny7uny7ufw7eXw7eXv7OTu6+Pt6uLt6eHs593o4tbl3Mbnz5TGoEHDnkXJuIzVy7Li28rp49fs597t6+Hv7eTw7eXw7eXy7+fy7ujz7+ry7+nz8Ojz8Oj28en18en08en18ur18ez18ez18ez18ur18ur18ur18ur18ur18ur18ur18ur28+v28+v28+v18ur18ur28ur28+v28+v28+v28+v28+v28+v28+v18ur18ur18ur28+v28+v28+v28+v28+v38uv38uv28+v38er38er38er38er38un38er38un38un38un38un28ej18Of18Of07+b07+T07uPz7OHy697w6Njp4c7g1sDUxqfHsXzBnUjNojvlxn7s3r/q4c3s5dTu59bv6Njw6drw6dnw6Nnx6Njv2a6+mUrAky3ElCvElCu8kj3jwH/BkjLHlCzHlCzHlCzHlCzHlCzGlCzGlSzHlSvGlCy8ji+tgSvBkzrHlS/IlS3IlS2+kjfhw4X89uT58+z49Oz49e349e349e349e359u769+/69+/79/H79/L79/L8+PP9+fT9+fT9+fT9+fT9+vX9+vX9+vX++/b++/b++/b//Pf//Pf//Pf//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/b++/f++/f++/f++/f//Pj//Pj//Pj//Pj++/f++/f++/f++/f++/f//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f9+vb8+fX8+fX8+fX8+fX7+PT7+PT69/P69/P59vH49fD49fD39O/39O/28+718u318u318u308ez08ezz8Ovy7+ry7+rz7+ry7+jx7ubw7eXw7Ofv7OXu6+Ps6uDr5tzn4dPn277bvnbHnDLDpmLPv5fb073k38/q5tru6eDv7OPw7eXw7eXx7uby7+fz8Ojy7+fy7+fz8Oj08en08en08en08en08en08en08en08en18ur18ur18ur18ur18ur18ur18ur18ur18ur18ur18ur28ur38er28er18ur08un18un28+v28+v18+n18+n08uj18ur38er38un38un38un28ej38un38un38un38un38un38un28ej28ej38un38un38un38un28ej18Of18Of18Of07+X07uPy7OHy697v6Nnr49Dg18DVyKrJs4HBnkrLnzTixoHw37zt49Hu5tXw6drw69zx693y6t3y6t3y693z69zz37XBm03Bky7ElC3ElCu2izPNp2HDlTbGlC3HlCzHlCzHlCzHlSzHlSzIlS3IlizHlS3Eky+whDC4jj3GlDDIlC/IlS7ElDHNqmH89+L39Oz49e349e349e349e349e359u769+/69+/69+/79/H8+PP9+fT9+fT9+fT9+fT9+fT9+vX9+vX8+/X8+/b++/b++/b++/b//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pj//Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//Pj++/f//Pj//Pj//Pj++/f++/f//Pj//Pj++/b++/b++/b++/b++/b9+vb9+vX++/b++/b++/b++/f++/f++/b++/b++/b//Pf//Pf++/f+/Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f//Pj/+/n//Pn//Pj//Pj//Pj//Pj//Pj//Pj++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f9+vb9+vb8+fX8+fX8+fX8+fX8+fX7+PT7+PT7+PT69/P59vL59vH59vH49fH49fH39O/18u318u318u318u318u308ez08ezz8Ov08Ov08Ory7unx7ejw7ebw7eXw7eXv7OTt6N/q5drm38/o1afRr1nEnT3IsHPTyK3g2MXp4tTt6N3v6+Lx7eTw7eXw7eXx7uby7+fy7+fy7+fy7+fz8Ojy7+fz8Ojz8Oj08ej08uj08ejz8Ojz8Oj08en08en08en08en08en08en08en08en08en18en28ej28ej28ej18ej28ej28en28en28ej18ej28ej18ej18ej28ej38un38un28ej28ej18Of18Of28ej28ej28ej18uj18ej28ej28ej28ej28ej28ej18Of18Of18Ob17+X07uPz7eLx697v6Nrs49Ll2sXXy63Lt4rFolHInjnfvnHv3rfu487u5tbx6dry693z7N707OD06+Dy7N/y7N/z7N7768bEolrCky/HlCzGlCy/kDSjeSvPokfElC/HlSvHlSvHlCzIlS3IlS3IlS3IlS3IlS3HlS6ofSq+lUjFkzLIlS3IlS3Ili/Cmkn88Nb69ev49e359u759u759u769+/69+/69+/69+/7+PD79/H8+PP9+fT9+fT9+fT9+fT9+fT9+vX++/b9+vX9+vX9+vX9+vX++/b++/b++/b++/b++/b++/b//Pf//Pf//Pf//Pf//Pf//Pf//Pj//Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//Pj++/f++/f//Pf//Pf++/f++/f++/f++/f++/b++/b++/b++/b++/b9+vX9+vX9+vX9+vX++/b++/b9+vb++/b++/b++/b++/b+/Pf++/f++/b++/b++/f++/f++/f++/f++/f++/f++/f++/f/+/j//Pj//Pj//Pj++/f++/f++/f++/f//Pj++/f++/f++/f++/f++/f//Pj++/f++/f++/f++/f++/f9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX8+fX7+PT7+PT69/P59vL59vL59vL49fH49fD39O/28+728+728+728+728+728+718u308ez08Ovz7+rz7+rz7+rz7+ny7+fx7ubw7eXv6+Ls6d7o49jo3sXl0JnKoDjCoE3Pu4/azrfk3Mvr5dnu6N/w6+Lw7OTy7uXy7ubx7ubx7uby7+by8Obx7+fy7+fy7+fz8Ojz8Ojz8Ojz8Ojz8Ojy7+fz8Ojz8Ojz8Ojy8Ofy8Ofz8Oj07+jz7+f07+f18Oj18Oj18Of28ej18Of18Of18Of17+f07+b18Of18Of18Of18Of18Of18Of18Of18Of18Of18Of18Of18Of18Of18Of18ef18ef18ef18Of18Oj18Of18Of18Ob07+X17+T07uPz7eLy69/v6drr5NPk28fbz7TMuo/FpFjFmzbfvGjw3bLt483u59bx6try69z07N/07OD07eH07eLz7eHz7eHz7uH88dTJrW7CkzHHlSzIlSzEkzKZaxfNoUzCkjLHlSzIlS3IlS3IlS7IlS3IlS3IlS3IlS3HlS6jeSXFnVDFlDDIli3Jli7Jli7BmEDt3rj99+j59u759u759u759u769+/69+/7+PD7+PD7+PD79/H8+PP9+fT9+fT9+fT8+PP9+fT9+vX++vX++vX++vX9+vX9+vX9+/X9+/b++/b++/b++/b++/b//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pj+/fn+/fr+/fr+/fn+/fn+/fn+/fn+/fn++/f++/f++/b++/b++/b++/f++/f++/f++/b++/b9+vX9+vX9+vX9+vX9+vX9+vX8+fT8+fT9+vX9+vX9+fT9+vX9+vX9+vX++/b++/b++/b9+vX9+vX9+vb9+vb9+vb9+vb++/b++/f++/f++/f++/f//Pj//Pj//Pj//Pj++/f++/f++/f++/f++/f++/f++/f++/f//Pj//Pj//Pj++/f++/f++/f9+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX8+fX7+PT7+PT69/P69/P69/P59vL49fH49fD49fD49fD39O/39O/39O/39O/28+718u308ez08Ov08Ov08Ov08Ov08Ovz8Ony7+fx7ubw7eXu6+Hr593o4dTo27/dvm7EnDvJqmLSwqDd1L/n4NLr5tzu6eDw6+Lx7OPx7uXx7ubx7ubx7+Xx7+bx7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+fy7+by7+bz7+b07ufz7ub07uf07uf17+f18Of07+b07+b07+b07+b07+b07+b07+b18Of07+b07+b18Ob18Of07+b07+b07+b18Of07+b07+b17+b07+b07+b08Ob08OX07+b07+b07+b07+Tz7+T07+L07uPz7OHy697x6tvs5dTl3cnazrTPvpbCpVzGnDjbt2Dx3K3t48zu59bw6dry693z7N/07eD07uL07uP07uPz7eL07uL07uL78dnYvonDlDPIlS3IlS3HlDGreyK5jj3CkjXIlS3IlS3IlS3IlS3IlS3IlS3IlS3IlS3HlS2xhjK7lEfEljLJli/Jli7Ili7AlTnbyZb++OT59u759u759u759u359u769+/7+PD7+PD7+PH8+PL8+PP8+PP8+PP8+PP8+PP9+fT8+fT++vX++vX++vX++vX9+vX9+vX8+/X9+vX9+vX++/b++/b++/b++/b++/b//Pf//Pf//Pf//Pf//Pf+/Pj9/Pn+/Pn+/fn+/fn+/fn+/fn+/fn++/b++/b++/b++/b++/b9+vX9+vX9+vX9+vX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT9+fT9+fT++fT8+fT8+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++/b++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f//Pj//Pj++/f++/f++/f9+vb9+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX8+fX7+PT69/P69/P69/P69/P69/P49fH49fH49fD49fD49fH49fD39O/39O/28+718u718u318ez18ez18ez18ez08Ovz8Onz8Ojx7ubx7ubv7ePu6uHq5drn387m1KfUrVDEnD/Js3/Wyq/h2cjo4tXs593v6uHw6+Lw7eXw7eXx7ubw7eXw7eXx7ubx7+bx7+bx7ubx7uby7ubz7ubx7ubz7eby7uby7ubz7ebz7uXy7eTy7eTy7eTz7uXz7uXz7uXz7uXz7uXz7uXz7uXz7uXz7uXz7uX07+b07+b07+bz7uXz7uX08OXz7+Xz7uXz7uXz7+b17+b07uX07uX17uXz7uXz7uX07+Xz7+Tz7+Ty7uP07uP07uL07uPx7eLy7eLy69/x6tvt5tXn3sre0rrRwJvEqm3FmzTTrVHx2qTu5Mvv59bx6tvx693x7eDz7eHz7eL07uP07uP07uP07uP17+T17+T68d7lz6DBkzXIlS3IlS3IlDC8iy6jeS3CkzjIlS3IlS3IlS3IlS3IlS3IlS3IlizJli7Ili+9kDuthTnInD/HljDJli7Jli7ClDXTuHn99d359u759u759u759+36+O76+O769+/7+PD8+PL8+PP8+PP8+PP8+PP8+PP8+PP9+fT8+fT++vX9+fT9+fT9+fT9+fT9+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++/b//Pf//Pf//Pf//Pf//Pf+/Pf9/Pj9/fj+/fn+/fn+/fn+/fn9+vX9+vX9+vX++/b9+vX9+vX9+vX8+fT9+fT9+fT8+fT8+fT8+fT8+fT7+PP8+fT8+fT9+fT9+fT9+PX9+fX8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT9+vX9+vX9+vX9+vX9+vX++/b9+vb9+vb++/b++/b++/b++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f++/f9+vb9+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX7+PT69/P69/P69/P69/P59vL49fH49fD49fD49fD49fD39O/39O/29O329O318u318u328u328u318ez18ez08Ovz7+jy7+fx7ubw7eXv7OTu6eLs597o5Njn3cXoz5LGnj/Ho07Nu5HZz7fj3cvq5djt6N/v6uHx7OPy7eTy7eTx6+Tv7ePx7ePy7eTy7ePx7eTy7eTz7uXz7uXz7uXy7eXy7eTx7OPy7eTy7OXy7eTy7eTy7eTy7eTy7eTy7eTy7eTy7eTy7eTy7uPy7ePy7eTy7eTz7uXz7uXz7uXy7eTy7uPy7uPx7eLx7eLx7eLy7uPz7uPz7uPz7+Ty7uPy7uPz7uPz7uPy7uP07uPz7uPz7eLz7eLz7eLy7N/y697x6tvt5tbm38ve07nSw6DHq2nDmzrUrE/v1p/t4sju5tTx6drz7N7z7eDz7eLz7eL07eT07uP07uT07uXz7+Tz7+Tz7+T28OPy4b2+kzjHlS7IlC7IlC/EkzKSaSDFlz3IlS3IlS3IlS3IlS3IlS3Jli7Jli7Jli7Jli/CkzikeivPqFTGljLJli7Jly7FlTLMp1z47s/59+359+359u769+/69+/69/D69vH7+PD8+PP8+PP8+PP8+PP79/L79/L8+PP9+fT9+fT++vX9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+vX++vX++vX9+vX9+vX9+vX++/b++/b++/b++/b++/b//Pf//Pf9/ff+/fn+/fn+/fn+/fn8+fT9+vX9+vX9+fT9+fT9+fT9+fT9+fT9+fT8+fL8+PP8+PP8+fP8+fL8+PP8+PP8+PP8+PP8+PP8+PT9+PT8+PP9+fT9+fT9+fT8+fT8+PP9+fT8+fT8+fT8+fT8+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vb9+vX9+vb++/f++/f++/f++/f++/f++/f++/f++/f++/f9+vb9+vb9+vb++/f++/f9+vb9+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX7+PT69/P59vL59vL59vL49fH49fD49fD49fD39O/39O/28+728+318+318u318u328+728u318ez18ez08Ovy7+nx7ufw7ubw7eXv7OTv6+Pu6eDr59zn4dHo2rjZuGrGnDnGq2jTxaHd1b/n4dHs5tvu6uDv6+Hx6+Lx6+Lw6+Lw6+Lw7OPy7OPy7OPy7OPy7OPx7OPx7OPx7OPy7eTy7eTx7OPx7OPx6+Tx7OPx7OPx7OPw7OLw7OLw7OLw7OLw7OLw7OLw7OHy7eLy7OLx7OHy7OLy7OLy7OLy7OLy7OHy7OHy7OHx7OHy7OHz7eLz7eLz7eLz7uPx7eLy7eLz7eLz7eLz7eLz7eLz7eLy7OHy7ODx697x693x6dvu5tbq4c7g1r7TxaPLsnfDmz/MoT3r0pbv4cLt5dPw6dry697z7eDz7eD07uL07uP07eTz7uT07+X07+bz7+T08OX08Ob18Of268zDmkTGlS/IlS3IlS3FlDGVbCK/kTfJli7Jli7IlS3Kli7Jli7Jli7Jli7JlS/Jli/FlDSugzDGolbDlDTJli7Jli7HljDEmUPy6MT69+769+759u769+/69+/69/D79/L8+PL8+PP8+PP8+PP8+PP8+PP9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fP9+vP9+fT9+vP9+vT9+vT9+fT8+fT9+vX9+vX9+vX9+vX++/b++/b++/b++/b+/Pf//Pf+/Pf//Pj//Pj8+fT8+fT9+fT9+fT9+fT9+fP9+fP8+fL8+PL7+PD79/H79/H79/H7+PD7+PH79/H7+PH7+PH7+PH7+PH8+PH89/H7+PL8+PL8+PL8+PL8+PL8+PP8+fT8+fT8+fT8+fT8+fT9+vX9+vX9+vX9+vX9+vX8+fT8+fT8+fT8+vT9+vX9+vX9+vb++/f++/f++/f++/f++/f++/f9+vb9+vb9+vb9+vb9+vb++/f++/f9+vb9+vb8+fX8+fX8+fX8+fX8+fX8+fX8+fX7+PT69/P69/P59vL59vL49fH49fD49fD39O/39O/28+728+728+718u318u318u328u728u328u318ez18ez08Ovy7+nx7ufw7ubw7eXw7OTw6+Lt6d/r5djn383r1qTPq1PEnj3LtH3Wyqzi2sfp4dLs59ru6d7v6eDw6uDv6uHw6+Lw6+Lx6+Lx6+Lx7OLw7OLx7OLw7OLx7OLx7OLx7OLw7OLw6+Hw7OLw7OLw6+Hv6uDv6+Dv6+Dv6+Dv6+Dv6+Dw6+Dw6+Dx7OHx6+Dx69/w6t/x697x69/x69/x69/y6t/y69/y69/y69/z6+Dy6+Dy6+Dy7ODy7ODy7ODx7ODx7ODy7ODy7OHy7ODx69/w6t3v6dvv6Nnu5dTq4M3g1b3VxqXIsHjCnELLoUDqzonr4MHq5NDu6Njx6t7z7eDz7eL07uL07uL07uT17uX07+T08Ob18Ob08OX08OX18Ob28Oj57dPNqFzElDHIlS3IlS3FlDKccye2iC7Jli7Jli7Jli7Kli7Jli7Jli7Jli7JlS/Jli7HljC6jjTAmk/FljbIli3Ili7Jli7BlDbr1af++Or69+/69+/69+/69+/69/D7+PL8+PL8+PL79/H79/H79/H8+PL9+fP9+fP9+fP8+PL8+PL8+fP9+fP9+fP9+fP8+fP8+PH8+PH8+PL8+fH8+PH8+PL8+fH8+fP9+vT9+vT9+vT9+vX9+vX9+vX9+vX++/b++/b//Pf//Pf//Pf//Pj9+fT9+fT9+fT9+fP8+PL7+PD7+PD69+/7+PD7+PD69+/69+/59u759u769+/69+/69+/59u759u759u759u769+/69+/69+/7+PD7+PD8+fH8+PP8+PP8+PP8+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT9+vX9+vX9+/P9+vX9+vb9+vb9+vb9+vb9+vb++/f9+vb9+vb9+vb9+vb9+vb9+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX8+fX7+PT7+PT7+PT69/P69/P69/P69/P59vL49fD49fD49O/39O/28+728+739O/28+728+738+728e728u328u318ez18ez18ez08Ovz7+ny7ujy7ebw7eXx7OTx7OPv6uDu59zq49Xp3cHjyYvKnzjEpFjPvZHb0bjk3Mrq49Xs5tnt6N3t6d7u6eDv6uHv6uHv6uHv6uDv6t/v6t/v6+Du6t/v6t/v6t/u6t/u6d7u6d7t6d7t6d7u6d7v6d7v6d7u6N3u6N3v6d7v6d7v6d7v6d7v6d7v6dzv6Nvv6dzv6dzv6d3v6d3v6dzw6t3x6t3y6t3y6t3w6t3w6t3w6t3x6t3y6t3w6t3w6t3x697x697x697x697w6t3v6dvu6Njs5dTp4M3h1r/WyKnKtYLDn0nFmjfmyH/q3Lrq487s59bv6tzx6+Dz7eLz7eL07uP07uP07uP17+Tz7+T07+X07+b08Ob08OX18Ob18Of78NjVtXHCkzXIlS3Jli7GlTKhdiixgijJlzDJli7Jli7Jli7Jli7Jli7Jli7Jli7Jli7Jli7CkjK8kjvHljPJli3Ily3Jli7ElDTYvYX/+uX69+759u769+/69+/69+/7+PD7+PD7+PD7+PD7+PD7+PD7+PD8+fH8+fH8+fH7+PD7+PD8+fH8+fH8+fH7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD8+fH8+fL8+fP9+fT9+vT9+vX9+vX++vX++/b++/b++/b//Pf8+PP8+fL7+fH6+PD7+PD69+/69+/69+/69+/69+/59u759u749e359u759u759u349u359u759u759u759u359u759u/69u/69+/69+/69+/69+/7+PD79/H79/L8+PP8+PP8+PP8+PP7+PP8+PP7+PP8+fT8+fT8+fT9+vX9+vX9+vb9+vb9+vb9+vb9+vb9+vb9+vb9+vb9+vb8+fX8+fX8+fX9+vb9+vb8+fX8+fX8+fT8+fT8+fX8+fX7+PT7+PT69/P69/P69/P69/P69/P69/P69/L59vH49fD49fD39O/39O/39O/28+728+728+738+728u328u318ez18ez18ez08Ovz8Onz8Ojy7+fx7ubw7uTx7ePw6+Lv6+Dv6d/s5tvo4c/q2rTauGnDmjrIq2fSxaTd1b7l3s3p49Ts5trt59zu6N3s6N3s6N3s6N3t6N3u6N3u6N3t59zt59zv593u6N3u6N3t59zt59vs5tns5tvs5tns5tnt59rs5tns5tns5tns5tns5tns5tnt5tnu5tju5tju5tnv59ju59nv59ru6Nrt59rt59ru6Nvw6Nvx6tvx6dvx6dzx6dvw6drx6tvx6dzy6tzy6tzx6dzx6dzw6drt5tfs5dPo38zi18DWyavLtobBoFDImzXgvnLq3Lnp4czt5tTv6drx697y7N/z7eLz7eLz7eL07uPz7uPz7+Tz7+T17+T28Ob18Of18Of18Of18Of9897aw4jAkzjJli7IlS3GlDGmeSesfifGlTPJli/Jli7Jli7Jli7Jli7Jli7JlS/Jli7Jli7Ili/HlTHHli/Jli7Kli7Lli7GlTHGqGP/+tz69+359u769+/69+/69+/7+PD7+PD7+PD7+PD69+/69+/79/L7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD7+PD6+O/69+769+789u/79+779u779u769+389u/79u/7+PD69+/7+PD7+PD8+fH8+fL9+fT++vX++vX++vX++/b++/b9+vL7+PD7+PD69+/69+/6+O769+/69+/59u769u369u359Oz58+z59Ov59Ov59Ov59Ov59Ov59Ov59Ov59Ov58+z69ez59u359+359u349e349e359u759u/69+/69+/69/D7+PL8+PP8+PP8+PP7+PP7+PP7+PP8+fT8+fT8+fT9+vX9+vX9+vX9+vb9+vb9+vb9+vb8+fX8+fT8+fX8+fX8+fX8+fX8+fX8+fX8+fT7+PT7+PT8+fT8+fT7+PT7+PT7+PP69/P69/P69/P69/P69/L59vH49fD49fD49fD49fD39O/39O/39O/38+738+728u328u318ez08ev08enz8Onz8Ojz8Ojy7+fy7+fx7ubw7uTw7ePw6+Lv6uHu6eDt593q49bo3sjn06TPp0nAm0LLtYHVyqvf2MPl3s7p4tTq5Njr5djr5drr5tvr5tvs5tvr5drr5drr5drr5dnr5djr5djr5djq5Nfr49bp5Nbr49bq5Nbq5dbs5Nfq5Nbq5NXr5NXq5NXr5NXr5NXr5NXr5NXr5NPr5NXr5NXs5dXs5dbt5tfs5tft5tft5tjt5dju59jv6Nnv6Nnu59ju59jv6Nnv6Nnv6Nnv6Nnv6Nnv6Nju59br5NLp4M3i18DYy67MuIvDo1jFmDPbuW3s2a/o38vs5NTv6Nnw6tzx7N/y7OHz7eLz7eLy7uPy7uPz7+T07uX17+T17+X38Of38ej28ej28ej28ej88+Hhz5/Blj/Ili7Hli3HlS+zhCmgchrFlDTJli7Jly3Jly3JlS3KlS3Jli7Jli/Jly7Jli3Jli7Jli3Jly3Kly3Kli3Lly3NmzLKpFL77cX69+369+/69+/69+/69+/69+/69+/69+/7+PD7+O/69+769+/69+/69+/59+759+349u759+359u369ez59ez59Ov59Or49On58+r48+r58ur58ur48+n58+r59Ov59Ov59ez59ez69u369+76+O/7+PH9+fL++vX++vX++vX/+/b8+fH7+PH69/D69+/69+769+769u359e359ez59Ov59Ov48+r38ur38+n38+n38+n48+n38un38uj38uj38un48ur48+r39Or49Ov49Oz59Oz49Oz49ez49e349e349e359u769vD79/L8+PP8+PP8+PP8+PP7+PP7+PP8+fT8+fT8+fT9+vX9+vX8+fX8+fX8+fX8+fX8+fX9+vX9+vX9+vb9+vb8+fX8+fX8+fT8+fX7+PT7+PT7+PP7+PP7+PP7+PP7+PP7+PP7+PP7+PP69/P69/L59vH59vH49fD49fD39O/39O/39O/38+738+728u328uv18ev08er08en08enz8Ojy7+fy7+fy7+fx7ubw7eXx7eTw7OPw6uLw6uHu6eDt6N3s5dno4NDl277hxH/CmjrGpFfMu5PXzbXf2MXl3s7o4dPp4tXq49br5Nfq49fq49fq49fq49fp4tbp4tXp49Xp49Xp49Tp4tTp4tPo4tLp4tLo4tLo4tLp4tLn4dHp4tLo4dHo4dHo4dHo4dHo4dHo4dHo4dDo4dDq4tHq49Hq49Pq4tPr49Pr5NTr5NTs5NTr5NTs5dTt5dXt5dXs5dXt5tXt5tbt5tbt5dXt5tXs5dTr5NLo38zk2MPYy6/OvJLDpFvAljXWsV3s16vp3sjr49Pu5tjx6tvx6t3x69/y7OHy7OHz7eLz7eLz7uPz7uP07uX17+X27+b28Of38ej28ej28ej28ej68+Ps3LTDmkbIli3Ili7Ili/Dki62hSTGlDLJli7Jli7Jly3Jli3Jli7Jli7Jly3Jly3Jly3Jli7Jli7Jli3JlSzLlyzSnDDZpDXRpEXu3Kz69+359u779u769+/69+/69+/69vD69+/69+/69+/69+/69+/59u759u369u359ez49Ov49Ov39On38+f28eX28eX28OL27+D17uH07uH17eH27uH17+H27+L28OP28OT28eX38ef48+n49Or59uz79+78+fD8+fL9+vP++vT/+/b7+PD69/D69u/69u759u369ez69Oz59Ov48+r38+n38uj28ef18eb18eX18eX18eX28eb18OX08OT18OT18Ob18Ob18Ob28ef38ej38uj38un48+r38+v49Oz59e349e339e349e/59fD69vD79vH79/L8+PP7+PP7+PP7+PP7+PP8+fT9+vX8+fT8+fX8+fX8+fX8+fX8+fX9+vX9+vX9+vX8+fX8+fX8+fX8+fX8+fX8+fX7+PT7+PP7+PP7+PP7+PP7+PP69/L69/L69/L69/L59vH59vH59vH49fD49fD39O/39O/38+738+738+728uz18ur08en08en08enz8Ojz8Ojy7+fy7+fx7ubw7uXw7eXx7eTw6+Pw6uLw6uHt6d/s6N3r5trp4tPk3Mjm1K7XtGPBmDnDqGnOwJ7Yz7fg2cbk3czn4NDo4dLp4dPo4dPn4NPo4NPn4NLn4NLn4NHo4dHn4NDn4NDm39Dm387l3s3l3s3l3czl3s3l3szl3s3m3s3m3czl3czl3czl3szl3szl3szm3s3m383m383m383n4M7n4M7o4c7o4c/p4tDp4tDp4tHq4tHr49Lr49Lr5NLr5NLr5NLr5NLr5NLq49Hp4s/n3svi18HazbHNu5LDpmK9lDXUrlbr1afp3sXq4tHt5tbw6dry6tzy6t7y6+Dy7OHy7ODy7OHz7eL07uP07uP07+X07+b17+b28Of18Of28ej28ej28ej48ub36crFnk3Jli7Jli7Jli/Jli7Jli7Jli7Jli7Jli7Ily3Ily7Ili/HlTHFlDDDkC7Bjiy/iym/iyjCjCnFkCrNlivVnS/dpTXTokDk0p/7+O359u779u769+/69+/69+/69vD69+/69+/59u759u759u349ez49Or48+n38uj18eX17+L07uDy7N3y69vx6tjx6dbv59Pt5tLs5dHt5tHt5tLt5tLu59Pv6NXx6djy69vz7d727+H38eT38+f59Or69u379+/8+fD9+vL9+vT69+/69+/79u779ez59Oz48+r48ur38uj28uf28eX28OT28OP17+Lz7uDz7t/07t/z7d/07d/z7d707d/07uD07uD17eH07uL17+P18OT08OX18Of28ej48+r49Or39Or39Ov39O349O359e779e779vH79/L79/L79/L7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fX8+fX8+fX8+fX8+fX8+fX8+fX8+fX8+fX8+fX8+fX8+fT7+PP7+PP7+PP69/L69/L69/L69/L69/L59vH49fD49fD39O/39O/39O/39O/38+758+738+718uz18ur08en08enz8Ojz8Ojy7+fy7+fy7+fx7ubw7uTy7eTx7OPw6+Lw6+Lu6eDt6d7r59zq5dno4tPl3s3i2L/nz5fDnEK/m0HFsoTRw6jb0Lzg2MXj3Mrk3czl3s7l3s7m387l3s7k3s3k3c3k3czk3czk3czk3czk3Mvk3Mri28ni28ri28nj3Mnj3Mni28jk2sjj2sjh2cfh2sfi28ji28jj3Mnj3Mnj3Mnj3Mnk3crk3crl3svl3czl3szm38zm38zn4M3n4M/n4M7p4c/p4dDp4s/p4c/p4tDp4s/o4M3l3Mji18HZzbLQv5vBpmm/lTfLpEjo0Jjo3MDp4c/s5dTu59fw6drx6dzz6t/y7OHx7OHy7N/z7eLz7eL07uP07uPz7+T07+b07+b07+b18Of18Of18Of18Of28ef68tvGo1fHljDJli/JlTDJli7Jli7Jli7Jly7Jly7Hli/GlS++jSq1gyKreBumcxincRmsdx2zfiK7hibCjSnKlCzRnDLTojnRqFT35r37+O759+/69+/69+/59u759u759u759u749e339ez39ev49Or38+j38eX17+P07eDx69vv6Nft5tPr5M/r4czo4Mnn3cTl28Hk2r3k2rzk2rvl27zl277m3MHn3sXp4Mnr483t5tHx6dfz7Nr27+D38eT58+j59Or79u39+fD9+vH59u769e769Oz59Ov48+r28uj28eb28OT17+L17uD07N7z7Nzy69rx6tjx6tfw6Nbu59Xv59Tv6NPw6NXw6Nbw6Nfx6Njx6try6tvx69zy7N707uL07+T18Ob18Of28ej48un48+r48+z39Oz49e359u769/D79/L79/L7+PP7+PP7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fX8+fX8+fX9+vb8+fX7+PT7+PP8+fT8+fT7+PP7+PP7+PP69/L69/L69/L69/L69/L69/L59vH39O/39O/49e349O/49O/49O/38+738+728uv18ur08en08Ov08enz8Ojy7+fy7+fw7uTy7uXy7eTy7eTx7OPw6+Lv6uHv6uDv6d7s6N3r5tvq5Njn4tPm38/i28fg1LfbvXrCmDS8nljHtIrQxKvZ0Lvd1sPh2sfi2sni28nh28ji28ni2sji28jh2sfg2cbg2cbg2cbg2cbf2MXe18Te18Te1sPe18Pe18Pe18Pf1sPf1sPf1sLf1sLf18Pf18Pg18Pg18Pg18Pg2MTg2MTh2MXg2cXi2cbh2cbh2sfi28ji3cjj3Mnk3crl3svn3cvl3czm3cvn3cvm3Mrk2sbg1b/XyrDNvJjBqXC/lDPHn0Xoz5fn2r7p4Mzs5NLt5tbu59jw6drx6tvy6tzx69/v6+Dy7OHz7eL07uP07+Tz7+Tz7+Tz7+Tz7+X07+b07+b07+b08ef18uj28ej68+HUtHPElDXJli7Jli7KlS/Lli7KlS7Gkiy/iyqvfB+ndhqwfh+7iijCkS7DkS69iimzfyGveyC2hCi/jS7JmD3SqVXZvXr15sD++Oj69u759u769+/59u769e769e369ez59Ov48+r38un28uf28eT17+Hz7Nzw6Nfs5dHp4cvm3cXj2L3g1LXe0KzbzKXYyJ7WwpPTvojQu4HQuoDPuoHQvYfUwZLWxp3Zyqbd0K/h1rfm3MPq4szv59Py69n179/28eX49en69+v7+e/59+369e359Ov48+n38uf28OX17+L17t/z7dzy69rx6dfv6NXu59Pt5dDr5M3q48vp4srp4cnq4Mjq4Mnp4Mrq4cvr4s7r5M7s5dDt5tPv6Nfx6try693z7eDz7uL07+T38eb38uf38+n48+v39Oz49e359u769vD79/L69/L79/L79/L79/L7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fX8+fX7+PP7+PP7+PP7+PP7+PP7+PP69/L69/L69/L59vH59vH59vH59vH49fD49fD49fD49e349e/49O/38+738+z28uv18ur08en08en08erz8Ojz8Ojy7+fy7uXx7eTx7OPw6+Lw6+Lw6+Lv6uHu6d/u6N7t59zr5tvq5Njp49bo4dPm38/i28jd1MDgzJ7LqVm8lDa/pWnGuJjRyK7Z0Lvd1MDe1sPe18Te18Tf18Pe1sLf18Pe1sLd1cHd1cHd1MDc1MDc1L/b077b073b07za073b073b073c0rzd073d0r3d073d0r3d0r3d073c1L3e1L7d1L7d1L7d1b/d1b/e1sDf18Hg2MLg2MPg2MPh2MTh2cXj2sfk2sjj2sfj2cfj2Mbi18Le07zXyrDMvZ3CqnK6lUDEmzzgxITn2Lfm3Mjp4s7s5dPt5dbv59nw6drw6drx6dzx6t3w6t7y7OHy7OH07uP07uP07uPy7+Hw7uLy7uTz7+X07+b07+b18Of18Of28ej78uPq0JzAlDzLmC3NmS7OmS7Nli3GkCq+hyWyfB6yfyC/ji3GlTHHljDHly/Hly/Ili/GlDC8jC/HpWLgxI/u37P368X+99r9+Oj69u359u769e759u759u759e369ez59Ov49On38uj28OX07uLy7Nzw6dfs5NHp38nk2cDf07bbzqrZxpfZwIPQsWbHpE7Bmj7AljTAlC++lCu/lCu+lS6/lzDAmTfDnkXJqVrSuHfVwY7XyaXc0LPl28Lr48zv6NXz7dz18OL49Oj69u359uz59Ov48+n48uf28OP07uDz7d3x6tjv6NXu59Pt5M7r4sro38bm28Hi2Lzg1rnf1LXg07Lf06/f07Df07Lg1LXh1rrj2b3l2sHl3cXo4Mrq487t5dLv6Nbx6try69zz7eD17+P18OX28ej28ur48+z49e359e759vD69/D79/L79/L79/L7+PP7+PP8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fT8+fP7+PP7+PP7+PP7+PP7+PP7+PP69/L69/L59vH59vH59vH59fD59fD59fD59e/49e749O739O328+z18ur18ur08en18un08un08ej08Ojz7+fy7uXy7eTx7OPx7OPw6+Lw6+Lu6uDu6N/u593t5tvr5dnq5Njo4tXn4dPm39Dl3s3i28jd1cLaz7Haw47Alja3lEO+qnjHu5zTx6/Yzrja0bza077b077b0r3a0r3b0bzb0bzZ0LvZz7rYz7jYzrjYzrjYzrfYz7fXzrfYz7fYz7fXzrfYzbbZzbbZzbbZzrfYzrfYzrfZzrfZzrfaz7ja0Lja0Ljc0Lnb0brb0rvc07vc073d073d1L3e1b/f1cHg1sLg1sLg1sHf1cDf073b0LfUyK3Ku5rBqna4lUK+lDPfwoLm1bHk2cXn3svp4s/s5NPt5dXu5tfw6drx6tvx6tzx6t3w6t3x69/y7ODy7OHz7eLz7eLx7uHw7eLx7uPz7+T07+b18Of18Of18Of18Of58uX16MbNpljXojTWoDHRmizNlirGjSe8hSO8hybGlTDGly7Hly7Ily7Ily7Ily7Ily7Jly7Dlzj26rv++eT69+359u749u/59u759u759u769u759u359e349Ov38un48uj28eb28OTz7N7v6djr4s/o3sjg1r3dz6/byJrUunvHqFu9lzq4jCS8jBjEjhPJkRDMkw7NlA7Olg/OlhDOlxHOmBHOmBTKlxjElB++kyq/mz7JrGTTvonWyKTc0bXm3sTu59Lz7Nv28OP59Oj48+r38uj28eb27+Pz7uDy7Nvw6dbt5tHq48zp3sfl2r/f07TczqfZyJnVwYvSvIHPtXbLsG3Ir2bJr2jKsWzQuHbVvoHYxIzcyZfg0KXh1LDi17rl28Po38nr48/t5tPw6dny7N307uH07+T18Of38er48+v49Oz49e359u769vH79/L79/L79/L7+PP7+PP7+PP8+fT8+fT7+PP8+fT8+fT8+fT8+fT8+fT8+fT7+PT7+PP7+PP69/L69/L69/L69/L59vH59vH59vH59fD59fD59fD59O/69O/38+328+v28+v18ur18ur18ur08enz8ejz8efz8ef07+bz7uXy7eTx7OPw6+Lw6+Lv6uHt6d/s6N3t59zt5dvs5Njp49bn4dTm4NLl39Dl3s7j3Mvg2sfd1sLZz7rZyabPsGW3jzK5mlG+rYTJvJ7RxqzUy7PWzrbXzrfWzrfWzbbWzbXXzbXVzbXWy7TWy7PVy7PVy7PUyrLUyrLUyrLUyrHUyrDUyq/Uya/Vyq/Vyq/VyrDUyrDUyrDVyrDWy7DWy7HWzLHXzLLYzbTZzrPZzbXZzrbaz7fbz7jb0Ljb0Lnc0Lrd0bvc0bvb0brbz7nZzbTSxqrIuZm/qXm5lkm8lDXYt2ri0azi1r7l28jo3szp4s/r5NLs5dTt5tbv6Nnx6tvx6dzx6t3w6t3x697x697y7ODy7OHz7eLx7eLx7eLy7uPz7+T07+b07+b18Of18Of18ej38uj78N3cvH3VojjYoTHSmy3Lli3Cjy6+iyvHlC7Hly7Hly7Ily7Jli7Jli7Jly3JmC3JmC3ClTTeyZb++uT59u759u759fD59u749e349e359e369ez59Ov38un28ef28OX07uHy69zt5tPo4Mvi2L7c0K/YxZnQ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ybDQxqzMwqXJvJrLtHyzjjqsgymsk1iwnna5rIi/spDBtJXBtZTCtZPDtY/FtYvItYbItIHIsnvGr3bErXLDq23BqGjCp2XCp2XCqGTBqGbCqGfCqmjEq2zFrXHHsHbJs3zJtYHItYbGtYrEto7DtpHEuJXHuZfHupnIu5rJvJvLvZ3LvZ3LvZ3KvJrHuJe+rou0oXmwk1KthS2+lj3SuoLTxKPWya/azrbc0bvf1L/h18Pi2cXk2sfk3crl38zp4c/q4tHq49Lr5NXt5tfv6Nnw6drx6dzx6t3x697x69/y7OHy7eHy7eLy7uPx7uPz7uX07+b18Of18Of18Of28ej28ej28un18en38er38er38ur78dfVtG7IlzTOmS3MmSzLmSvPmy3Tni/bpTTeqDbapTXPokTt3a/39Ov38+v48uv48+r48+r38uj28OXz7eHw6tzu5tbq4M7j2cLZzq/Sv5G+nVG2iiLDjhfHkBTLkxLSmBPdohfnrRzssBzrsBnrsBrqsBrqrxrqrxnqrhrqrhvqrhvqrhvorhznrhvhqRnfpxjiqh3nrR7qrxzssBvrsRznsCLerjLQrVXQvozWzK7j3MPw6NTx7d/v6drs5NPn38vh17/Yza/RwJfFqF/MojrWpSzbpiXfpx/iqBzlqRvlqRvlqRvlqRvmqRrkphXengjengXdngXamgPcngfbnQjZnArWmwvSmQ3RmA7PlxDNlRHIkhPBjhu7lDfOtnfZyaHe1Ljk3cfq49Dv6dnx7N/07+P18Of28+n29Or49ez49e359e/69vH69vD59fD59fD69vH69vH69vH69vH69/L69vH69vH59vH59fD59fD59fD59fD49O/49O/49O738+728+v18ur18ur18ur18ur08enz8Ojz7+f07uf07+bz7uXy7eTy7eTw7OLv6+Dt6d7t6N3s5tvs5trq5Nfp49Xo4dHn38/l3s3j3cri28jg2cXe18Pd1MDb07vY0LjWzrbWzLTTyrHRyK3PxarNwqbKv6HGupnCsom+oV6tgSCmhTqqkl6xn3W6qH2+rH+/rHy/q3a8o2i4nVmzlEmxjzuzjTOziy+yiyqziiW0iR+3iR23iR22iRy1iR62iSC1iiG2iyS1jCqzjS+0jza1kj23l0q6nli+p2rDrnjEsH3FsoPEs4jDtI3EtZDEtpPF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dweqdgepdgeodQandAamcgemcwamcwamcwamcwWmcgancgencQemcAWjbQGkbAClbQClbQGpcQWrcwesdAitdgivdwiweQixegizfAm0fQm3gAm5ggq9hgzEjRHIkRTIkhbJkxbKlBfLlRjJlRnKlRnKlRvKlhzJlR3IlR/GlSHCkyO9kSi1kTfAqGzDs4nFuJXKvJzMwaPQxajTyKzXzLHZz7bb0brd077g18Lg2cTi2sfl3Mnl3cnm3srm3srn3cnl28Xi18Df07rZzbHWx6fSwJnNt4fHrXXApGO7nVa2lUmykD+4lD7GoUbSrFHkwm7z1Y736K/57ML67tP379728OL28OT28eb38ef28ej38ej28Of18Ob08OXz7uPy7eHy693u6Nns5NTo4czs3rrnx3ngrjDoryDprh3kqx7Zox2/lCp4Yi1AMhY5LBFAMQ5INgxaRQ5vVBKCYRSNaA2ZbgegcwSkdAKmdgGpeAGsegGuewCxfgCxfgOfdAuKdUPz6tPz7+Tz8Oj08ev18u339O/39O/59vH+/fj++/b9+vX9+vT8+fH7+O769uz79ub99M/py3PfrjToryLqrh7orh3mrCDQlyG9iCS7hyildB2pdxy9iSm/iyi7hyayfyGyfyC/iBvYnR/doh3fox3goxzhpR3gpxzjpx7lqB3mqR3lqR7dpibcuWnr167k2cXn3svp4tDr5NTu59jv6drw6dzx6tzz6tz069v069f27NX37NL26Mjx37Ps15zlyX7eumLQpkDEmS++lTK6lDy2lUi4nFq9pWzFrn7JtYrOvZfUxKPYyq7az7ff1L3i2MPk2sbk28jj3Mnk3Mnk3Mji2sbg2MTe1sLd1L7a0brYzrbVy7PSyK3QxanNwaXIvZ7FuZjBtIu+qXC1kTq9kinDlSTGliPIlyLKmCDLmR7LmBzLmBvLmRvLmBrLmBnKlhjGkBS+iw67hgy3gwm2gQm1fwqzfQmyfAmvegiseQirdwipdgamdAamdAejcgaicAWibwahbwWgbgaebQWebAWdbASdawWdawWdawWdawWeawWeagSdaAOaZQGbZAGdZgKfaQOhbAajbQekbwamcQepcgeqdAetdgiveAiweQeyewi0fQq1fgq3gQq7hAvAiQ7EjhLKlBfLlRjLlxnLlxvLlhzKlh3Klx3KlyDJlyLFlSLDlCW8kSq2lETCq3TCtI/FuZfJvp/MwaPQxajTyK3XzLHYzrXb0Ljb0rvd1Lze1L7f1L3d07rc0LfazrLYyavUxaHOvJPIsobBq3i6oWe1l1O0kkK4kje9ki3FmzXYsVTiw3Xp1JXy4LL368r479n48Nz48d/58eP38eX28ef28ej38un48+r38un38un38un38uj28ej18Of07+by7uPy7eLw6t7u59rs5dTr4s3z4rnmw2/erDHjqyHhqR7Zox3HmCaDZBpgRgt3WRKNZwyZbwqecgagcwWjdQWldQKndgGqeAGreQCtewCvfACxfQGzfwC2gAG4ggGufw13ZDnj28zy7+f08Ov18u328+739O/49fD59vL//Pf++/b9+vX9+vX9+fP7+PD79u/79u379ef+9tfy3JzhtUrkrCfmrSHjqSLMlCG+iia8iSqdbxuygCPBjCnBjSq5hiWyfyG0gSDHkR7dox/gpB3hpB7iph7ipx3jqB3lpx3mqR3mqR7gqCXarkXt16Po3sTp4M3r5NLt5tbv59rw6dzw6t7x6+Dz7OLz7OPz7ePy7uPy7ePy7eLz7eD07dz17dj47dP568746cb147nq053cwX7RsmLMpknGnDe/kyy+lTa9mki8nVi7omi9qXnDsYnIupXNv53SxafVya7YzbTbz7fb0bnaz7jaz7fYzrXXzLPVyrDSx6zPxKjMwaPJvJ7FuJfAs4/BrHm1lUm8ki3DlifGlybJmCXJmSPMmiHNmh7MmR3MmR3MmRvJlRnDjxO8hwy5hQu2ggq0gAmxfgmufAitegirdweqdQeodAakcgajcAagbwWdbAWcawWaagWZZwWYZgaXZQWXZgWVZQSUYwSTYgSTYQWTYQWTYQWTYQWTYQWTYQSSXwOQXAKRXAKTXwKVYgSXZAWaZgWcaAWdaQWhbAaibgalcAeocwapdAardweueAiwegmyewm0fQm4gAu4ggu7hw3DjhPKlBjMmBvLmB3LmB/MmR/MmCHKmCPHlyPFlybDlSi6kS+1lk3Brn/Bs4/GuZfJvZzLwKDOwqTQxKjSxqnTxqrSxqnQxKbPwKLLvJrHtpDEsIa/qXm6oGi3mle5lkW6kTa7kCvDmTfMpUvRs2bfxITv26r46MH568v47dL37tj17t717+P08Obz8Of28ej28uj38+j28+n48+r48uv49Oz38+v48uv38er38er38un38un18Of07+bz7uXw7OHv697v6dzt5tnu5dP15sPs0pfbsU3WpS3UoSLLmyWlfxt3VQicdBGpeQOreQGsegCsegCtewCuewCuewCvfACwfQCyfgC0fwC2fwG4ggC7hAC9hQC1gwp5XyPNw6z08ez18u339O/49fD49fH59vL69/P+/fn//Pf++/b++/b9+fT8+fP8+PH79+/69u779On+9tv56bTlxG/YqjnapCnIkiHAjCe8iimbbRm3hijCjinBjSq2gySyfyC1gh/PmCHgph7ipx3jpx7jqB3jqB3jqB3mqB3lqR7gqCTYq0Dt0pHu4cLp4s/r5NLt5tbv6Nrw6d3x7ODw7OHy7eP17uX07uX07+bz7+X07+bz8Obz7+Xz7uTy7uTz7eTy7ePx6+Hy69727NX67c3668H44q/y2Z/ny4nXuHHDola3lEK4kjq5kja5kju6mEq9n1rAp2/ArH3BsYnGt5TKvJzMv6DNwaLPw6XPxKfPw6bNwaTKvp/IvJvEuJfBs5C+roW4nl23kDXClSzGmCnImCfKmSXLmyTOmyHNmh/Omx/MmBzEkRS+iQ+5hgu3ggq1gAqxfQmvewiseQepdwindQikcgajcAafbgWcbAWbaQSYZwWVZQWUYwWSYgWQXwWNXwWMXAWLXAWJWwWHWgWGWAaFWAeFWAeEWAeEWAeFWAeGVweFVgaEUgKFUgGHVQKKWgSPXQWRXwSSYAOWYwSZZgWbaAWeawahbQaibwalcgaodAerdgeteAiweQmyfAm0fgq2gQu5gwy9iA/EjxXLlxzMmB/NmSDNmSHMmiPKmSXImCbGmCrBlCy0kDi7oma9roXAs47DtZLFt5TFt5TEtpPDtJHBso++rYi8qn68pHK8oGO5mE+2kT23jjO2jja1jzvAnU7Ts2nkyIbx15354q/668L67M717djy7N3x7OHy7eL07uX07+b18Of18ej18ej28en38un38un28ur28+r48uv38+z39Oz38+z28uv28uv28+v28ur18uj18Of18Ofz7uXx7OPw6+Hu6t3t6dvu59fz58714bHnzIrPrVjDnDy3kTFvTgyfdRCwfQCwfQCwfQCxfQCxfQCyfQCyfgCzfwC0gAG3gQC3ggC6gwC7hAC9hgC/hwC7hgeGZRa0pob18u328+749fD59vH69/P69/P7+PT+/fn+/Pf++/b++/b9+vX9+fT8+fP8+PH79+/69u759ez79Ob+9tf66a3cs1bAjijBjim7iCmaaxe+jC7Djyq+iyqvfSKwfSC4hBvaoSbjqB/kqB3lqR3kqR3lqR3lqR7iqSLYpjDdt1z026Dx5crt5NTu59fv6Nrx6t3y69/y7OHy7ePy7uTz7uX17+b18Of08Of18Of27+f17+f07+b07+b07+b07+b07+bz7ubz7uXz7uXz7uPx7OHw6uDw6d7x6db26s777ML75rHz15bkxHjWtGPGo1C2k0KsiTiujDuzkUG2lUm3mVa8oGa7pHG6qHq6qoO8rIm9rou+r4u+r4q8rYi7qoS6pHCvjj6/lS/Gly3HmSrKmSjMmybMnCTQnCPOmiDHkxe9iQ65hAu3ggq1gAmzfQmxewmsdwepdQemcweicQafbQacawWZaAWWZQWTYwWQYASMXgSIWwWEWAeAVQh/VQp9Vg59VxF9WRWAWxmBXR2DXyCFYSOFYiSEYySEYSSDYCGCXh5+Vxh3SgZ3SAJ4SwV8UQl/UwiCVQeFVwWKWgWNXgWSYAaVYwaYZQWaaAadawafbQWkcAancweqdQitdwivegmxfAm0fgq3gQy5hAy8hw7HkhjNmB7PmyLNmyPMmybKmifImSrFly29kzGwkEWzn2yzonixoHmwnnWvnG2wmmaxl1uwklCxjkOuizysiDishza4lELJplTZt2fqy4b33aH66Lr358bw5tHv59fw6dvx693y7ODz7eLz7ePz7uTz7+X07+b18Of28ej38un38un48ur38ur38ur38uv28+v38+v39Oz39Oz28+v28+v28+v28+v28+v18+n18ej08Ofz7uby7uXy7OTw7OLv6uDu6d/u6N7u6Nzx6db568r55bTp0pqAaDCVbRC1gAG2gAC2gAC2gAC2gQG2gQC3gQC5ggC6gwG7hAC9hQC9hgC+hwDAiAHCiQHAiAWfdA+LeEz29O/39fD59vH59vL69/P7+PT8+fX+/fn//Pj++/f++/b++/b9+vX9+vT9+fP8+fH69+/59u769uz69On99t7buHK9jS/BjiyzgiWicxrAji7Djyu6hymndR6tex69hxzfpijjqCLjqSLhqCTfpyfdpy3dqjbhtFDv0IX25bnx59Dv59bv6Nrw6tzx69/y7OHz7eL07uT07+X07+b07+b07+b08Of08ef28ej48On38Oj28Of18Of18Oj28Oj18Of18Of07+b07+bz7+Ty7ePx7OPx7OPw7ODx697x6tvw6Nbw59Pv5c/v48Tu3LDt1p7nyoTbumfNpku/lzq2jziuiDmohjyqjEirkFGtlFmslV+umGWtmWqsmW6tmm2tklC0jjTCli7HmS3JmyvMnCnNnSfOnSbMmCDCjhS8hw25hAy2gQuzfgmxfAmteQiqdgimdAajcQaebQabagWYZwWUZAWQYQWLXQWGWgaCVwd+Vgp9VxGBXRyGZCeMbTOQcjyTeEWWfUuagVGdg1SfhVegh1mhh1ufiVqhiFughliehVacfk2IYyt/VheAVhSFXRqLZCKIYR9/WBR9VQ1/VQmDVweIWgaPXgWSYQWVZAWZZwWcagWgbQaicAancwepdQiteAiwewmzfQq2gAu4gwu7hg3BjBPNmSDOnCPMnCfLmynJmivFmCy/kyyshzClh0SjiVGkiFCihkmfgj+ffzalgTKxijW9kzrKokratmjlx4Xo0Zzq2bHq3sHr4cnt5M3u5tLw59fw6Nnw6Nvx6t7x6+Dz7eLy7uPz7uT07+b07+b18Of18Of28ej38un48+r48+r28+v28+v28+v39Oz39Oz39Oz39Oz28+v28+v28+v28+v28+v18ur08enz8Ojy7+fy7+fz7eby7eTx7OPw6+Lw6+Lv6uDv6d/v6d3w6dzy69ugk3SIZBC6ggG6gwC6gwC5gwC6hAG6hAC8hAC9hQC9hQC+hgDAiADAiADBigHEigHFiwDEiwKzgQtwVyHz8On49vL59vL69/P7+PT8+fX8+fX+/fn//fn//Pj+/Pf9+/f++/b++/T9+vP9+fT8+PP7+PD79+/79u399+DDnVDCjyzAji+icxm1hSXCkSzCjy2vfSGmdR24hybFkiXcqDPhsDvis0bjuFTkwWnmzYby26X668r26tP069jy69zx6t3x69/y7OHx7eLy7uPz7uX08Ob08Ob18Of18Of18Of18Oj18Oj28ej28On28ej28Oj17+j17+j28On18Of18Of18Of07+bz7uXz7uXy7eTy7eTx7eLx6+Hw6t/w6t7u6Nzs59rt5tfu5NLs48zs4cbr38Dr3Lnm06rexpHUt3XLqV3BmkO1jC+qgSSlfiqgfTGbfTmYfUGafkKhfzC1jCnBlSzImi3MnCzNnSnOnSfIlB29iA+6hgy4gwu1fwuyfQqvegirdwincwekcQeebgSbagWYZQWUYwWOYAaIWwWDVweAVw2BXBmGZyuOcz2Zfk2gh1mljWKpkmmslm2vmnOxnHazn3q0oHy0oX21oX61oH+0oX+1oX+1oX60oHy0nnqzmG6igEqWbSmTZh2UaSOdeDihgUmYekSObjOEYSJ/WRN/VQiFWAaLXQWQYAWUYwWYZgWbaQafbQaicAaocwesdgivegiyfAm1fwu3ggu5hA2+iRHIlBzOnCbNnCnJmyrDlii7jyKrgR2bdBuYcSGedSGnfSSzjDW/m0zKq2nTuoLeyp3i0azk1bXl2bzm3MPm3snn4M3p4tHr5NPu59fw6drx6dzy6d/y6uDy7OHz7eLz7+Tz7+X18Of18Of18Of18Of28ej28ej38un48uv28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v28+v18ur18ur08en08enz8Ojy7+fx7ubx7uXx7uTy7eTx7OPw7OPw6+Pw6+Pw7ePBuqh8XBO6gwS9hQC9hgC+hgC+hgC+hgC/hwC/iADAiQHCiQDDigDDiQHDigLCigXBigbAigm4hxFxVx3NyL769vL69/P7+PT7+PT8+fX9+vb//vr+/fn//fj//Pf//Pj++/b++/b++/X9+vX8+fT8+fL8+PH++Oz158a9kz/EkSu+jjCXaRTAkSzEkivCkS+peBu8iyrDki3EkyvJoEfy3Z3767777MX77s3679T47tn07d7y7ODz7eH07uPz7uPy7eTz7uTz7+Xz8Ob18Of28ej28ej18Of18Of28en28On18On08en18ur28en28On18On08en17+j17+j17+j17+j18Of18Of07+bz7uXy7eTy7ePw7OHw6+Dw6t/v6d7u6Nvt59rs5djr5NTo4dDm383k3Mni2cLk17rj07Dhz6bcyJjXwIzNtHm/o2KxkUmlgjeeeCqabxmjdRK0hhm+kSLHmSnNnSvOnSfFkRm9iBC6hQ23ggu0fwqyfAqueQiqdQilcgegbgacagaYZgWTYwSOXgSIWgWDWQqBWxiJaCyYe0egh1iokWasl3GwnXmzoH63pIO3pYa5p4m7qoy9q46+q5C+rZG+rZK/rpO/rpO/rpO/rpO+rZK+rZG+rJDArIzBqYOmg0mgciWgcSGecSSheTWvjVOvkVyojVufgk+TcjmGYiKAWA+EVweKWwWPXwWUYgWZZwacagahbgakcgepdQiseAiwewqzfgu2ggu6hQ29iA/GkhrMnCbKmyfBkh+5iRSxgRKnfBuqiD25nV7GrXXOuITTwJHYx5/Zy6nb0LPc0rng1b/i2cTl28jn3szo4c7p4tHr5NXu59jw6Nvx697y6+Dy7OHz7eL07uPy7uP07+b18Of18Of18Of18Of28ej28ej38un38er28+v29Ov29Ov39Oz39Oz28+v39Oz28+v39Oz28+v28+v28+v18ur28+v18ur18ur08enz8Ojz8Ojy7+fy7+fy7ubx7ubw7uXw7eXw7eXx7ubW0MOBZSe0ggu+hwLAiQDBiADAiQDAiQDBiAHBiQLAiQLAiATBiQa9hwixgAyjeBOWcx2MbiiBajZ8cFbOysT69/P7+PT7+PT8+fX9+vb9+vb//vr//vr+/fn+/Pj//Pj//Pf++/b++/b9+vX9+vX9+vL9+vH/++ng0aK+kjnEkiq3iCudbxrBki3Fkiu9jSuxgSHDky3ElCzCkS2whS/Co2f36s738eL07+Xz7uX07+X07+Xz7+X07+X18Ob18Ob07+b18Of18Of18en28un38un38un38ej28ej28On28On28On18en18ur28ur18er18en28un28On18On18Oj17+j18Of18Of07+bz7uXz7uXz7eTy7ePx7OHw6+Dw6t/v6dzt59rs5tjs5dbo4tHn4M7l3svh2sbg18Pd073Zz7jWzLHTx6rRw6LQv5bQuonJsHi/omKzjTuzhyK1hRG8jBXFliHKmiTDkBi8hw+6hQ23ggy0fguxfAqteAmndAejcAefbQaaaAaWZAaQYAWJWwZ/VgmDXhuScjijh1eslGqxnXi0ooC4poe6qoy7q4+9rpO+r5S/sJfAsZnBs5vCs53CtJ3DtJ3DtJ7Etp/EtZ/EtZ7Etp/Dtp7EtZ3CtJzDtJrEtJjCqX6lgD+meCaoeCOkdiWjeC2kfjq4mF68n2u1mWqrj1+cfkiMaip+WBCCVweKWwWQYAWVZAaaaQadbAaicQendAesdwmwewq0fgu3gQy5hA28hw/DkBjJmCG/jRS8iRPElSi+ljq6oGHBr4LEtpLJvZvMwaLRxqrWyq/az7Xd07vh1sDj2sXk3Mnn38zp4s/q49Ls5dXu59fw6Nvw6t3y7OHy7OHz7eLz7eLy7uPz7+X07+b18Of18Of28ej28ej28ej38un38er38+v39Oz29Ov39Oz39Oz28+v28+v28+v28+v28+v28+v28+v28+v28+v18ur28+v18ur18ur08en08en08enz8Ojz8Ojy8Ojz8Ojy7ujx7+fn4deIcUCsfxTAiQPCigDDigDCigHAiAO7hgmzgxKpfheTbhWCYRJ8XxyQdz+mkmW7rYvSybDt59r69vD7+PT8+fX8+fX9+vb9+vb9+vb9+vb//vr+/fn+/fn+/fn//Pj//Pf//Pf++/b++/T/++nx6cfm06z26r7Tu3q+kTLEkyqwgSGsfyPDky3FkyuwgB+6iyvEkyzElCzAjyu5iCithTPNuY389OL28ej28ej28uj28en28ej28en28ej28ej28en28un38ur38uv18ur28un28en28en38un38ur28er28en28en18ur18uv18ur18ur38+n28ur08en18en28On18ef18Of07+b07+b07+b07uXz7eTx7OLw7OHx6+Dw6t3u6Nvt59nt5tfq49Po4c/l3szi28jg2MTd1b7a0bnXzbTUya3QxKjLv6HHuZrAso+7q4C2mlXBmj7ImSjAjRTBjhbAjBO8iA+6hQ23gQy0fQuwewmsdwmmcwigbwWcawaYZwWRYQSLXQWDWQuGYR2afESqkmSynni3pYS7qYy8rJG/sJXAsZnBs5zDtZ7EtqDEt6DFt6LGuKPHuaXHuabHuqfHuabHuqfIuqfIu6jJu6fIu6bHu6XIuqXIuqXHuaPHuaPJuZ3KsoeviUWqfCmtfSWsfCSpeiSleiyhezSsik25nGm4oXmwmW6lilePbTCCWxOEWQeMXQaSYgWXZgWdbAahcAamcwisdwmwewmzfgy3gQy5hA28hw/AjBPCjRPLmyfKnznAnEW1n2LAr4PEt5TJvpzNwqTSx6rWyrDa0Lbd07vg1b/j2sXl3cnm38zp4s/q49Ls5dTv6Nfw6dvv6d3y7ODy7OHz7eL07uPy7uPz7uX07+b18Of18Of28ej38un38un38un38er28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v18ur18ur08en08en08en08en08On08Orz8en18OeYiGSZdR+2hRCygxKmexKZchGRbRaObSOKcDOPe0uxpIPQyLPr5tzx7eX28uz69vH69/L7+PP7+PT8+fX8+fX9+vb9+vb9+vb9+vb9+vb+/fn+/fn+/fn+/fn+/fn//Pf//Pj++/b//e/q2ay/nVK3jjq7k0XCmkbBki/ElCu+jym9jyzEkyzDkyytfR29jS7GlC3FlS2/jiu6iCixhjPRvo7+9uL48ur38uv29Or58+z28+v38uv38uv28+v48uv28uv28+z28u328+v28+v28+v18ur28+v28+v28+v28+v28+v28+v28u328uz28+r29Or18+v18ur38er38er28ef18Of18Ofz7uXz7uXz7uXy7eTx7OLw6+Dx6+Dw6t/v6d3u6Nnt5tfq49To4dDm383j3Mjf2MTd1cDb0brYzbXVya/QxajMv6LIupvBs5G9rYG6nFTEnkPMoDfMmyjAixG9iA+7hg63gg20fwyxewmsdwmncwihcAecawaWZgaQYQWHWgaCWg+YdzyskmS2oX27qYm+rZG/sJfBs5vBtJ3EtqHGuKTHuaXIuqfJu6jJu6nJvKrIvKnJvKrJvavJvavJvavJvavJvavJvqvKvavJvqvKvqvLvavLvavLvarLvarKvKjNvaLIrn+shTmwgSavgCWufyWtfiWsfSWneiiviEPJr4PDrYW8pX6ym3GkiFSLZiSBVwuLXAaRYQWXZgacaweibwencwireAivewq0fwy3gg26hQ69iBDDjxjQoDDMoTzFn0e5oGC/r4HDt5PJvpzNwqTSx6rWy7Daz7Xd07vg1b/j2sXl3crn4M3o4c7q49Ls5dTv6Njw6Nvv6dzx697y7ODz7eL07uPy7uPz7+X07+b18Of28ej28ej38un38un38un38er28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v28+v18ur18ur18ur08en08en08en08en18ez28eq3rZZvVx5+XQ9yWBeHckGhk3K6sZzQybrp49b48+j69e359e759fH69/L59vL69/P7+PT7+PT8+fX8+fX9+vb9+vb9+vb++fb++vf++/f//vr+/vn+/vj+/fn+/fn//Pj//Pj//fX69Ni6lUTAkjDAkTOebha9ji3DkyzElCvFlSzElC3FlCzAkC6tfB3AkC7FlS3FlCy+jSm6iCi0ijrk1K799+j49e349Oz58+z39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v39Oz28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz38+328+z28+r29Or18ur18ur18ur18ur38un18Of07+b07+X17+Tz7uXz7uXy7eTw6+Lx6+Dw6t/w6t7u6Nrs5tfr5NXp4tPn4M7k3srf2cXe1sHb0rvZzrXVyq/QxKjNv6LIu5rCtJC+rX+/n1PJoUbOoTjDkh+9iBG7hg+4gg60fgywfAqteAqncwihbwacawaVZQaNYAeGXAyTcDKulGW7p4S+rY/BsZjCtJzEt6DFuaPGuqbHu6jIvKrJvKvLvazLvazKva3Lvq7Lvq7Lv6/Lv6/MwLDLwbDNwbHNwbHMwbHMwLDLwbDMwK/Nwa/Nwa/Nwa/Mwa7NwK7OwK7OwKzRvqC4llmwgiy0gyi0gyezgyaygiavgCatfymofS+th0O+oWzFroi+qYa3oHejhlGHYRyHWgmPYAaXZQacagehbwemdQiteAqwewu0fwy4gw68hw++ihPGlCPPozvIoke+o1/Ar3/Et5PKvp3NwqTSx6rWy7Daz7Te07rh1sDj28Tm3Mnp383p4s/s5NPt5tXv6Nfw6dvv6dzw6t3y7N/y7N/07uLz7+T07+b07+b18Ob18Of18Of28ej38un48+r48+r29Or29Or39Oz28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v28+v28+v18ur18ur18ur18ur08er18ez38+738+3n4tqup5nXzbz58uP79ur59Ov49O739O/39O/49fD59vH59vH69/L69/P69/P7+PT7+PT8+fT8+fT8+fX9+vb9+vb9+vb9+vb++/f++/f9/vr+/vn+/fn+/fn+/fn+/fn//Pj//vHo2bC8kTXElCy9jTCfcBbElC/FlSzFlSzFlSvFlSvFlC27iy6sfB7ElC7GlSzEky29jCm6iCi2jkL058v89+z59u759e359e759u749e349e349e349e349e349e349e359O349e339Oz39Oz39Oz39Oz39Oz39Oz49e349e348+z38+z28+v28+v28+r18ur18ur18ur18en28On18Oj18Of18Ob07+b17uX07uXy7eTx7eLx6+Dv6+Dv6t7u6Nrt59jr5NXp4tLn4M7k3crg2cXe1sDc0rvZz7bVyq/RxanNwaPIvJvDtZG/rH3DolTMpEXKmi6/ixe8hhG5gw+1gA2xfAuueQqodAmicAecawaXZgaPYAiJYRifgUi5onq/rY7BspnEtp7GuKPGuqXHu6jJvKvJvKzJvazJvq3Lvq/Mv6/NwK/OwbHMwbHMwrHNwrHNw7LNw7LNw7LOxLPOxLPOxLPOxLPNw7LNw7LOw7LPxLPPwrLOwrHOwbHOwbHOwbDRwq3Ptouuhj21hSm1hSe1hSa0hCazgyaygiawgCesfiqpgTa7m2LIsYrBr469qYSwlWWTcDGIWw2RYQeYZgaebAejcAepdQmteQqzfgu3gQ66hQ+9iBHCjRnMnTLNpEjBpVzBsH7Et5TKvZ3NwqTSx6vWy7Daz7Xd07vh1sDk2sXl3cno4M7q49Ds5NPt5tXu59fw6dvv6dzx697y7N/z7eH07uPz7uT07+X07+X18eb18Of18Of28ej28ej38un48+r29Or29Ov39Oz39Oz28+v28+v28+v28+v39Oz28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz28+v28+v28+v28+v18ur28+v28+v28+v38+338+739O339O739O/39O/49O/39O/39O/39O/49fD59vH59vH59vH69/L49/L69/L69/L69/P7+PP8+fX8+fT8+fX9+vb9+vb++fb++vf++/f++/f+/vr+/vr//vr//vr+/fn+/fn//Pj//+rPu4XAkjPFlCyxgSSqfCHFlC7GlSzGlSzFlSvGlSvFlC+4iC6ufiHHlS7IlS3Eki28iyi4iCm7l1D/+OX89/H69/D69/D59u759u/59u/59u/49e749e349e359u759u769e759u749e349e349e349e339Oz49e349e349e348+z39Oz28+v28+v28+v28+v18ur18ur18en18en28Oj18Oj18Of07+b07uXz7uXz7uXx7ePx7OHw6+Dw6t7u6Nvt59jr5NXp4tLn4M7k3crh2sbf18Dd1Lza0LfXy7HRxqrNwqTJvZ3EtZHArX3HpVXPoz/GkyLAixW7hRC3gQ6zfg2ueQuqdQmicQidbAaXZgWPYAqRaiazmGfCrozCtJvFt6HHuabIu6nJvKrJvqzKv63Mv6/Lv6/MwbDMwrHNwrLOwrLOw7LPxLPOxLPPxLXPxbTQxbXQxrbQxbbQxbbQxrXPxbTNxbTQxrXQxrXQxrXQxrXRxbXQxbTQxbTQxLTQxLPQxLLVxKvFpm60hzG2him2hie2hie1hSa1hCe1gye0gyexgiiqgDCzkVPIsITItpXBsJG+p4Ckg0uKYRaRYgiaZwafbQalcgirdwqvewu0fw24gw+8hxLEjxnHlSXOokDGplrEsX7Et5TLv57Ow6XTyKzXzLHb0Lbe1Lzi18Hk28bm3cro4M3r4tDs5NPt5tXv6Njx6tvw6t3x697y7ODz7eLz7eLz7uP07uP17+X18Ob18Of18Oj28ej28ej38un38ur28+r29Ov39Oz39Oz28+v28+v28+v28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz28+v39Oz39Oz49e349e349e349e349e/59fD59fD59fD49O/49fD49fD59vH59vH69/L69/L69/L6+PP6+PP7+PP7+PT8+fT8+fX8+fX9+vX9+vb9+vb++vb++/f++/f//Pj//vv//vr//vr//vr//vn+/fn//fn+99vKq2bDkzHFlC6peRu3hyvHlS7IlS3Hli3HlizIlizHlC+tfSO5hyvIlS7IlC7CkC27iSm0hi7Nr3H++uv8+PL7+PL79/H69/D69vH69vH69vH59fD49e349e349e349e359u759u759u759u749e349e349e349e349e349e339Oz39Oz39Oz39Oz28+v28+v18+v18+v18ur18ur28un28en18Of07+b07+bz7uXz7uXx7ePw7OHw6+Dv6t7u6Nzs5tns5dbp49Ln4M7l3sri28fg2MLe1L7b0LjYzLLSx6zOw6XJvZ3Ft5LCrnvKplLImS/Hkh7CjRi6hRC2gQ6xfAyrdwqmcwiebgaZaAePYw6cdza9pHjEs5bGt6DIuqbJu6nJvavLv63Lv67Mwa/MwrHOwrLNwrLOxLPPxbTPxbTPxbTQxrXRx7bSx7fSx7nSx7jSyLjTyLrSx7nSx7nSyLjSyLjQyLfSyLfSyLfSyLjSyLjSyLfSyLbRx7XRx7bQxrXRx7bTxrPUvJKzjEK3hyu4iCm4iCm3hyi2hie3hSe1hCi1hCizgyivgSywjEnGrX7KuJrEs5jArIqwk12QaR6TZAmbaQeibwendAmteQqyfQ24gg+8hhLEjxrHkiDKmjDKqFfGsn7FuJXLwJ7PxKXUyazXzLHb0bfe1Lzi18Hk28fn3crp383r4c/s5NPt5tXv6Njx6tvw6t3x697y7OHz7eLz7eL07uP07uP17+X18Of17+j18Of28ej38un38er28Or28ur28ur28uv28+v39Oz39Oz39Oz28+v28+v39Oz39Oz49e349e349e339Oz39Oz39Oz39Oz39Oz49e349e349e339Oz49e349e349e349e349e359e/59fD59fD59fD49fD49fD59vH69/L69/L69/L69/L7+PP7+PP8+fT8+fT9+vX8+fX8+fX9+vb9+vb9+vb++/f++/f++/f++/f//fn9/vz+/vv//vr//vr///n+/fn+/fjz6cbGnk3FlDDDki+odxm+jC7HlS7IlS3IlS3IlS3IlS3HlDCicRjDkTXIlS7HlS7Ajiq7iimvhTTiyJT++u38+fH8+PL79/L79/L79/L79/L79/L69vH69+/59fD59vD69+/69+/69+/59u759u759u759u759u759u759u749e359u749e349e339Oz28+v28+v28+v28+v28+v18ur08en18On17+j18Of07+bz7uXz7uXx7ePw7OHw7OHv6+Du6d3t59rt5tbp5NPp4dDm3szj3Mjh2MTe1b/c0brZzrPTyK3PxKbLv5/IuZPHsHnLo0bFkyTHkh3Ejxq4hRGzfw+vewyodQmjcQebagiRZQ6igkTCrIbHt5zIu6XJvanKvqzMv6/Mv6/MwbHNw7LOxLPOxLPPxbTQxrbRxrfRx7bSyLfSx7nTyLrUybvUybvUybvUybvVyrzVyrzVyrzVyrzVyrzVyrzVyrzVyrzVyrzVyrzVyrzXyrvUybnTybjTybjTybjTybjSyLbayaq+nmK3iC67iSm7iCm6iCm4iCm4iCm3hyi2hie2hii1hSmwgiyrhj/NtYnKup/Ft57Es5K5nm2VbiWUZQqfbAmkcgireAqxfAy3gA+9hxXGkB3Ikh/GlCTKpU3Js33GuZbMwJ/PxKbUya3YzbLc0rjf1b3j2MLl3Mfm3crp4M3q49Ds5NPu59bw6djx6trw6t3x697y7ODz7eLz7eL07uP07uP17+X18Of18Of28ej28ej28ej28en28On28en38en38uv28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz49e349e339Oz39Oz39Oz39Oz39Oz39Oz49e349e339Oz49e339Oz39Oz39Oz39Oz39Oz39O349O/49e359fD59vH69/L69/L69/L59vH59vH69/L7+PP8+fT8+fT8+fT8+fT8+fX9+vb9+vb++/f++/f++/f++/f//Pj//Pj9/vz//vz//vv+/fn//vr//vn//vbn2avBlDjGlS+8jS6ndxnFki/IlS7IlS3IlS3IlS3IlS/Bjy6kdBjFlDTIlS3HlS6+jCm7iimthzzq3rX9+u/8+PP8+PP8+PP8+PP8+PP8+PP79/L79/L79/L79vP79/L79/L79/L79/L69+/59u759u/59fD59u759u749e359u759u749e349e349e339Oz39Oz28+v28+v28+v18ur18ur18On28On18Of07+bz7uXz7uXz7uXy7uPw7OHw6+Dw6t7u6Nru59jr5NTp4tHn387j3Mni2cXg1sHd0bvazrTVyq7QxafNwaHKvJTKsnfGmjXGkyDHkR7Ejhy6hhWzfg+teQymcwmebgiVahSpiUzItJDIuaLJvKnLvq3MwK7MwrDNw7LOxLPOxLPPxbTQxrbSx7jSx7nTyLrTyLrUybvUybvVyrzVyrzVyrzVyrzVyrzWy73Wy73Wy73Uy73Wy73Wy73XzL7Wy73Wy73Wy73Wy73VyrzVyrzVy7zVyrzVyrvWybnTybjUyrjYyrXRtoW3iTG8iiq8iiq7iSm7iSm7iSm6iSm6iCi5hyi5hii2hiixhCy4llTPuZDMvaLIuaDGtpi+pXWbdzGYaQuhbwiodgqueg20fg++iRnEkB3Gkh7HlCHHnj3MtHnIu5fMwKHRxqnWyq/ZzrPe07rg1r7k2cPm28fo3svq4c7r5NHt5dTu59fv6Nnw6dry69zx697y7ODz7eL07uP17+T07+T07+X18Of18Of28ej28ej28ej28uf28ej38un38un48+r28+v28+v28+v39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz49e349e339Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39Oz39O349e759fD69vH69/L79/L69vH69vH69vH69/L69/L7+PP7+PP7+PP7+PP8+fT8+fX9+vb9+vb9+vb++/f++/f++/f//Pj//Pj+//3+/vz+/vv//vr//vr//vn///HZwIjClDLHlS66ii2peRvIlC7IlS3IlS3IlS3IlS3GlC+zgyaufyHHlTLIlS3GlC29iii7iSq2k0/w6cn++vH8+fT8+fP8+PL8+PP8+PP8+PP79/L79/L79/L8+PP89/P79/L79/L69vH69vD69/D69+/69vH69/H69vD59u/59u759u759u749e349e339Oz39Oz28+v39Oz28+v28+v18ur18en18en28ej18Of18Of07+bz7uXx7ePw7OHx6+Dw6t7u6Nvu59jr5NTp4tHn4M/l3svk28fg18Le07zc0bbXzLHSx6nPw6PPv5TKsG7CkynIkh/GkB7Cjh27iBmxfQ+reAyicQqWag6sjVHJtZDLvKbLvqzMv6/NwrHOw7LOxLPPxbTQxrbRxrfTyLnUybrUybvTybvTyrzUyrzUy73Vy73WzL/VzL7VzL7VzL7WzL7Wzb/WzL7WzL7Wzb/Wzb/Xzb/Yzb/Yzb/Yzb/Yzb/Yzb/XzL7XzL7Yzb/XzL7XzL3Yy7zVy7vVyrvby7Tcv4y4izK9jCu9jCu9iyq8iyq8iiq8iiq7iim7iSm7iCm5hyi4hyewhDC3lFLRuIvQvqHIuqPIuJrBqnybdCicbQ2ndAqtegy0gRLAixzDjh7Gkh7HkyDFmDDLsnLKvJjNwqLSx6rWy7Dbz7bf07vg1r7k2cTm28jo3szq4s/r5NHt5dTu59bv6Nnw6tvy69zy697z7ODz7eL07uP07uP07+X18Of18Of18Of18Of28ej28ej28uj28ej28ej38un48uv28+v38+v39Oz28+v39Oz48+z28+v28+v28+v38+v39ez39Oz39Oz28+v28+v39Oz39Oz39Oz39Oz39O339O339O339Oz39Oz39Oz39Oz49O349e369u/69vH69vH69vH69vH69vH79/L79/L7+PP7+PP7+PP7+PP8+fT8+fT8+fT8+fX8+fX9+vb9+vb++/f//Pj//Pj//Pj+//39/vz+/vv//vr//vr//vj//+jBoV3ElDHHlC6vfiG4hyjIlS3IlS3IlS3IlS3IlS3GlTKmeCG5iCjIli7Jli7Ekyy8iym7iSrDpWb58939+vP7+fT8+fP9+fP9+fT8+PP8+PP8+PP79/L8+PP79/L8+PP8+PP8+PP79/L69vH69vD69/D69vH69/H69vD69vD59u759u349e349e349e339Oz39Oz39Oz49e339Oz39Oz39Oz28+v28ur28en18Of18Of07+bz7uXz7uXx7eLx7OHx69/v6dzv59rt5tfr5NPo4dDm38zk3Mjh2cPf1r/d0rrYzrLVyqzQxabVwpTIqF7DkybIkh7FkB7BjR29ih2yfxOpdw2bbxStjErOu5rMvqjMwK3NwrDPw7PPxbXRx7fRx7fSyLjTyLrUybzVyr3VyrzVyrzUy73Uy73Uy73VzL7VzL7Wzb/Wzb/Wzb/Wzb/WzcDWzb/XzsDXzsDXzsDXzsDYzsDZzsDZzsDZzsDZzsDZzsDZzsDZzsDZzsDZzsDZzb/bzr3gz7LbxZ/StYC4kkm6jC6+jCu9jCq9jCq9jCq9iyu9jCq9jCq8iyq7iSm7iSm7iSm5iCi0hiyvhjvEpW7QupPNvqLJu57EqnuhezChcg6reA22hBbAix3Djh3GkR7Ikh/DkyXLrGfOv5jOw6PUyKvYzbLc0Lff1Lzh1sDl2sbm3Mro383q49Ds5dLu5tXv59bv6dnv6tvy69z07N7z7N/z7eLz7eL07uP07+T18Ob18Of18Of18Of28ej28ej28ej28ej28ej38un38ur38+v48uv38+v38+v38+v48uv38uv28ur38+v48uv29Or28+v28+v28+v28+v39Oz39Oz39Oz28+v38+338+338+z39Oz29Ov28+v39Oz39Oz49e359u759e/59e/59vD69vH69vH79/L79/L7+PP7+PP7+PP7+PP9+vX9+vX8+fT8+fT9+vX9+vb++/f//Pj//Pj//Pj//Pj+//3+//3+/vv//vr//vr//vf+9dO6lEbGlTDIlTCpdhnEkjLIlS7IlS3IlS3Jli7Jly7EkzCjdB68iyvJli7Ili7CkSu8iyi6iivNtXz9+ur8+fP8+fT8+fT8+fT8+PP8+PP8+PP8+PP8+PP8+PP7+PP8+PP8+PP8+PP79/L79/L69vH59fD59fD59u/59u769+/69+/59+759u349e349e349e349e349e349e339Oz39Oz28+v28+v28ur28On28ej18Of07+bz7uXz7uXx7ePy7OHx69/w6t3w59zu59js5dXq49Lo4c7k3crj28bg18De1Lza0bXXzK/Sx6nXxJPIo1LEkyXHkh7FkB7CjR6+ih61gxmkdROqiEHMtpDOvqrOwa/Nw7HPxbTRx7bSx7nTyLrTyLrUybvTyrzUy73Uy73VzL7Wzb/Wzb/Wzb/VzL7Wzb/XzsDXzr/Yz8DYz8HYz8HYz8LYz8HYz8HYz8HZ0MLZ0MLZ0MLYz8HYz8HZ0MLa0MLb0MLb0MLb0MLaz8Haz8Haz7/fz7bIq3a8lky7jTW9jS6+jivAjiy/jiu+jiy+jSu+jSu8jCq8jCq9jCq8iiq8iiq8iiq8iiq6iSm4iCuzhzK0kU7PuI/Qv6XMup7EqXWgdyOodxC5hxzAjB7Djh7FkB7Ikh7FlCTIp1zTwZfRxabWyq7ZzrPd0rng1b7i18Hl28fn3svq4c/r5NHt5tPu5tXv6Nfw6dnw69zy69zz697z7N/z7eH07uP17+T17+P17+X07+b18Of18Of28ej28ej28ej28ej28ej38un38un48+r48uv48+r48+r38ur38un38er38ur48+r48uv18ur28+v28+v28+r28ur28+v28+v28+v28+v28+v28+v28+v28+v29Or39Oz39Oz39Ov39ev49e349e349e359u759fD69vH79/L79/L79/L69/L69/L7+fP8+fT9+vX9+vX9+vX9+vX++/f++/f++/f//Pj//Pj//Pj+//3+//3+//z9/vr//vr//vbr2avAlTrIlTHDkS+tehzGlDPJli7Jli7Jli7Jli7Jli7Eki+neB3Dki/Jli7IlS7Ajyq7iyi2iTHgzJz9+/D8+fT7+fT8+fT8+PP8+PP8+PP7+PP7+PP8+PP8+PP8+PP8+PP8+PP8+PP79/L79/L69vH69vH69vH69vH59fD69vH79/L69/H69+/59u759u759u749e349e349e339Oz39Oz28+v18ur18ur28On28On28Oj18Ofz7uXy7eTy7uPy7eDy7N/x697u6Nvu59jt5tXr5NTo4dDm38zk28fh2MHf1b7c07jZzrPUya3Zw5HHn0jFkyPHkx/Ejx7BjB69iR+0hCKsiEDPuZPOwKnOwrHOxLPQxrXTx7fTyLrUybvVyrzWy73XzL7Wy73WzL7Wzb/XzsDXzsDXzsDXzsDXzsDYz8HYz8HYz8HZ0MLZ0MPZ0MPZ0MPZ0MPZ0MPZ0MLa0cPa0cPa0cPZ0MLZ0MLa0cPb0sTb0cPc0cPc0cPb0MLb0MLg0rzVvZO3jDnAjzDBjy3BjyzAjyvBjy3BjyvAjyrAjiq/jiq/jiu+jSu9jCq9jCq9jCq9iyu9iiq9iim8iiq5iCm2hiy3kEvUu5PPwKfMvaDBpW6sgiy4hyC/jB/Bjh/FkR7Ikx/GkyLFolHZxZfTx6jXy6/bzrTg07ri17/k2cTm3cno4Mzp4s/r5NHt5tPu5tXv6Nfw6dny69zz7N3y7N7z7eHz7eP07eT07uP17+T07+Tz7+T08OX18Of18Of28ej28ej28ej28ej28ej38un38un38un48+r48+r38un38un38un38un38un38un18+n28ur28un18+n38er18ur28er38er38er38er38un38un38er48+r48uv48ur38+r28+v39Oz39Oz49e349e359u769+/69vD79/L69vH69/L69/L6+fP6+vT8+fT9+/T9+vX9+vb++/f//Pj//Pj//Pj//Pj9/Pj+//3+//3+//3+//z//vr//vLXwYnGlTPIlTG5hii4hSXIlTHJli7Jli7Jli7Jli7Jli7Hli7Cki3IlS7Jli7IlS6/jSm6iiqyiTnz47v8/PL9+vX8+fT8+fT8+PP8+PP8+PP8+PP79/L79/L8+fL8+PP8+PP8+PP8+PP8+PP79/L79/H7+PH79/L79/L79vL79vL79/L69vH59u/59u759u759u759u749e349e349e339Oz28+v28+v18ur18en28On28ej18Ofz7uXz7uXy7eTz7eHy7N/x693v6dzv6Nnt5tbr5NTp4tHn4M3k3cnh2cTf1r/d07raz7XXzLDZw4/GnEHGlCLHkh/Djx7BjR+8iCKyizvNs4LRwKnOw7HPxbTQxrXSyLjUybrVyrzWy73WzL7Wzb/Wzb/Wzb/XzsDYz8LYz8LYz8LZ0MLZ0MLZ0MPZ0MPa0cTa0cTa0cTb0sXb0sTb0sXb0sXb0sTb0sTb0sTc08Xb0sXb0sXb0sXb0sXb0sXb0sTb0sTb0sTb0sPc0cPj0K7IpWTAjzHDkSzDkizDkSzCkSvCkCzCkSvCkCvBjyvBjyvBjyu/jiq/jiu/jCu+jSu9jCq9jCq9jCq8iym8iiq7iSm0hzG+m1vVw6XNwKnQvZzAoWWzhii+iiDCjh/FkR7Ikx7GkyPAnEjdyJXVyKjYy6/c0LXg1Lvj18Dk2cTm3cnn38vp4s/r5NLt5tTu5tfv6Njx6tvz693z7N7y7ODz7eHz7eH07uP07uP07uP07+Tz7+T07+X07+b18Of18Of28ej28ej28ej28ej28ej38un38un38un28ej38un38un38un38un38un28ej28uj28ej28ej28un38un28en28ej28en28ej38ej28ej28ej28ej38un38un38en28en28er28+v39Oz39Oz39Oz49e349e359u/69/D79/L79/L7+PP7+PP8+fT8+fT9+vX9+vX9+vb++/f//Pj//Pj//Pj+/fn+/fn+//z+//3+//3+//3//vn69uHNrmvHli/HljC2gyS+iyjJli/IlS3Jli7Jli7Ili/Ili/Ili7Jly3Jli7Jly3Lly7EkSq6iiqvi0T/+dr9+/P8+fT8+fP8+fP8+PP8+PL8+PL7+PH79/H79/H69+/79/L79/H79/H79/L7+PH79/L79/L79/H79/L79/H79/L79/L79/L79/L69u/59u759u749e349e349e349e339Oz39Oz39Oz28+v28+v18ur18en28ej18Of07+bz7uXz7uXz7ePy7ODx697w6t3w6dru59js5dXq49Lo4c/l3svh2sbg18He1Lzc0bbYzbHbxZHInkPGlCLHkyDEjx6/jCC2iS3IrHXTw6bQxLLQxrXSx7jTyLnVyrzVy73XzL3Xzb/XzsDXzsDXzsDYz8LYz8LZ0MPZ0MPZ0MPZ0MPa0cTa0cXb0sXb0sXb0sXb0sXc08bc08bc08bc08bb0sXc08bc08bc08bc08bc08bc08bc08bc08bb0sXb0sTb0sTc08Th1MDWu4m9kTzEkS7EkyzEkyzEki3DkizEki3DkSzDkSzDkCzCkCzCkCzBjyvAjyvAjiu/jSq+jSu+jSu+jSu9jCq9jCu9iyq6iiuyhjPOtIbVxKrQwa3SvZm6l1G5iSbCjR/FkB7Ikh/GkyLBnEbbxpLVx6bYy6/c0bbg1Lvj18Dl2sTn3srp4Mzq4s/t5NLu5tXv59fv6Nnx6tvy693z7N7z7ODz7eHz7eL07uP07uP17uT07+Tz7+T07+X07+b08Ob18Of18Of28ej28ej28ej28ej28ej28ej28ej28ej28ej38un28ej28ej28ej28ej28ej28ef18ef18ef28ej18ef08Of18Ob18Ob28Ob18Ob08Ob18Of28ef28ej28ef28ej38en28+r38+r38+v39Oz49e349e359u769/D7+PH8+PP7+PP7+PP8+fT8+fT9+vX9+vX++/b++/f//Pf//Pj+/fn+/fn+/fn+//v+//3+//3+//3//vjx68vAnVHHly/HljDFki/HlC7Jli7Jli7Jli7Jli7Ili/Ili/Jli7Kly7MmC7RnTDWoDPQmzDAjy69n2D//ef9+vP8+fT8+PP8+PP8+PL7+PD7+PD7+PD7+PD7+PD69+/69vD59u/69u/69/D69+/79/H79/L79/L79/H79/D69/D79/H69vH69vH59u/59u759u759u759u749e349e349e349e339Oz39Oz28+v28+v18ur28un28Oj18Of07+bz7uX07uTy7OHy7ODw6t3w6tvv6Nnt5tbr5NPp4s/m38zk2sbi18Lf1Lvc0LXYzK/Zw4/Hn0PHlCPIkyDEjx+8jCjDoFvTwZ/QxLHSxrXTybjVyrzVy73WzL7Wzb/Yzr/XzsDYz8HYz8HZ0MPZ0MPa0cPa0cTa0cTb0sXb0sXb0sbc08bc08bc08bd1Mfd1Mfd1Mfd1Mfd1Mfd1Mfd1Mfe1cje1cje1cje1cje1cje1cje1cjd1Mfd1Mfd1Mbd1Mbe1MTp1rbCn1nBkjHDki3Eky3Fky3Fki3Eky3Eky3DkizEkizEkSzDkizDkSzCkSzBjyvBjyvBjyvAjSvAjSy+jSu+jSu+jSu9jCq9jCq5iS67l1LXwJzRw7HRwqrQuI24jzy+iyPFkCDIkh/GkiPBm0fPuoXMvpvSxqbYzK/e0bbi1r3k2cLn3cfo38vr4c7t5NLu5tTu59bv59fw6drx6tvz69z07N/07eHz7eL07uP07uP17uXz7+X08OX08OX08OX07+b18Of18Of18Oj28ej28ej28ej28ej28ej28ej28ej28ej38ej28ej18Of18Of18Ob08Ob08OX08OXz7+Tz7uTz7+Ty7uPz7uPz7uP07uPz7uLy7eLz7uPz7+T07+X07+X18Ob28ej28ej28ej28un28+r39Ov39ez59u769+/69+/79/L79/L7+PP8+fT8+fT9+vX++/b++/b++/b++/b++/f+/Pj+/fn//vr+//3+//3+//39/vz+//bt3bC7kj7Jli/Jli/Jli/Jli7Jli/IlTDIlTDIlTHHlDDFki7Gki3Lly3SnC/ZojHcpDPYoTPFmDnbw47//O39+fP9+fT8+PP8+fL8+fH69+/69+/69+/69+/69+/59u759u759u759u759u769+769vD69vH69/D69+/69+/69+/69+/69+/69vH69/D69+/69+/69+/59u759u749e349e349e339Oz39Oz28+v28+v18+n28en28Oj18Of07+bz7uX07eTy7OLx6+Dw6t7w6dru59js5dXq49Hp4M7m3crj2cPf1bzb0LXWyqzRwaDQuIHFnELHlSTJkyDCjyO8lD7UvZXSxbDRx7bTybnVyrzXzL7Wzb/XzsDYz8HYz8HYz8LZ0MLa0cPa0cTb0sXb0sXc08bc08bc08bd1Mfd1Mfe1cfe1cfe1cje1cjf1snf1snf1snf1snf1snf1snf1snf1snf1snf1sng18rg18rf1sne1cje1cjf1sjf1sbk17/av4m+kjrElC/Eky3Fky7FlC3ElCzEky3Gki3Fky3Eky3Eky3DkizDkizDkizDkSzCkC3CkCzCkCzAjyvAjivAjSy/jSu+jSu+jSu9jCu3izTPtIPUxrHRxLHVw6jMrHC3ii/FjyHIkSDHkyO/lj6+o2W9qHjEsobNvJXSw6HYyq3c0LXi1rzl28Po3srr4s/s5NHu5dTu5tTv59bw59nz6tzz697z7ODz7eLz7eL07uPz7+T08OX08Ob07+b08OX07+b18Of18Of17+j18Oj28ej28ej28ej38Of28eb18Ob07+b28OX28Ob17+X07+T07uPz7uPz7uPz7eLy7ODz7ODz7N/y7N/y69/y7N/x69/x697x7N7x7N7y7N/y7ODz7eD07uP07+X08OX18Ob18Of28ej38un39Ov49ez59u759u769+/79/H8+PP9+fT8+fT9+vX9+vX9+vX++/b++/f//Pj+/fn+/fn+/fn////+//39/vv9/vr+//XdwoXAlDfJli7Jli7Jli7GlS7CkC28iiq2gyapdh6hbRmqdiC2gCTBiyjKlCzQmjDVnzXToj7YuXf479H9+fD7+PH7+PD69+/69+/59u769+369e359uz59e369e359e349e349ez49ez49e349e349e349e359u759+369+/59u759u759u779vH79/L69/D69+/59u759u749e349e349e349e329Oz39Oz28+v18ur38un28ej18Of18Of07+bz7uTz7eLz7ODx6t7w6Nru59bs5NPq4s7n3srj2cPe07rYy63Qw6HJuZPBr4S6pHO3mli9kzfIliPJlSG9kTPQsnfWxq3SxrbTybnVyrzXzL7XzsDXzsDYz8LYz8LZ0MPa0cPb0sTb0sXc08bc08bc08bc08bd1Mfd1Mfe1cjf1snf1sng18rf1snf1snf1sng18rg18rf1snf1sng18rg18rg18rf1snf18rg18rg18rh2Mvg18rf1snf1snj18XXvYvAmEfEky7FlSzFlC7FlC3FlSzFlSzFlCzEky3Eky3Eky3Eky3Eky3Eky3Eky3DkizDkizDkizCkSzCkCzBjyvBjyvAjivAjiu/jSu+jSu7ii7AnVzcyajTxrLRxLDUwJ3BnVbBjiXHkSHIkyO+jCayhy2xjTuzk0q1mVu4oWvArIDFtIzOvZnVxqbbzrHg1Lri2MDn3cfq4czs49Du5dPw59fx6dzz69707N/07OH07eD07uLz7+Tz7+Ty7uT08OX08OX18eb18eb18Of08Ob18Ob18Of18Of18Ofz7+Xz7+T17+T17+T17+T07uPz7eHz7N/y697y6t3x6tzx6dvw6Nrv59bv59fu59bu59Xu59fu59bu59bu59bu59fv6Njx6try6tzz7N/07uD17+P18OX28ef38un49On39Ov49ez49u359u769+/8+PL8+fT8+fT8+fT9+vX9+vb++/f9/Pj+/Pj+/fn+/fn+/fn+//7+//3+//39/vz+//XPtXu/kzfIlS3Hky3AjSm2gyKvfRy3hCK9iSi5himibxuSYA+jcB2vfym1iTbAmE3ZuHbp1Z7889P++ur6+O759u359ez49Ov49Or38+n58+n48uj38uf38uf38uj28un38+r38+n28un38+r38+r49Ov49ez49ez59u369+769u759u749e/59u/69u/59u749e359u749uz49e349e349e339Oz29Oz29Ov28+r28er28ej28ej18Ob08OXz7uPy7OHy697x6dvu5tfr49Ho38rk2sPf1LrazbHRw6PJuJHErnvCpmi6mVCzjj6thzSrhTC1iy3IlSTHlCTEoFPYw5/VyLXTybnWy73WzL7YzsDYz8HZ0MLZ0MPa0cTb0sXb0sXb0sXd1Mfd1Mfd1Mfd1Mfe1cjf1snf1snf1sng18rg18rg18rg18rg18rg18rh2Mvh2Mvh2Mvh2Mvh2Mvh2Mvh2Mvg2Mvg2Mvh2Mvh2Mvh2Mvh2Mvh2Mvg18rm2cTBoWHAkzbHlS3Gli3HlS3Gli3GlSzHlS3FlSzGlC3FlC3FlC3Eky3Eky3Eky3Eky3Eky3Eky3DkizDkizDkSzCkSzCkCzCkCzBjyzAjizAjiu/jC25jTrRtoTYybHTxrTUxK3Wuoe5jDPFjyTFlC3YsWLPsG3CoVu0kUatiDmwijizjTq4k0O+nVfEqW3HsH/JuJDNwJ/Wyazc0LXi177n3Mbq4czt5NPv6Nbx6dny6tvz7N3z7N7y7ODz7eHz7uP07uP07uP07+Tz7+T17+X08OX18OX28Ob18OX07uTz7uPz7uPz7eLz7eHz7eHz7ODy693y6dvw6Nru5tju5dXt5NPr4tDp4c3o4cvn38rn38nn38no38rp38rp4Mvq4czq4s7s5NHt5tTv6Njx6tvz7N7z7eH07+P28ef28uj28+n39Ov49ez49e369+/8+PL8+fT8+fT8+fT9+vX++/b+/Pj9/Pj+/fn+/fn+/fn+/fn+//3+//3+//3+//3///n38tHQs3DGlzjEkCq7hyW6hybFkzDJlS/Kli3Jli/FkjOcbiG1lljcxpf66MH//d3/++b++ev79u349ez39On28eb18OT07uDz7N7y6tvx6Nrw6dnv6Njw6Njw6Nnw6drx6tzy697z7eDz7uL08OT18eX28ej28+n38+v49Oz59O359O339O749e349e339Oz39Oz39Oz39ev39Oz38+v38+z29Ov28+r28un28un28ej28Of07+Xy7eLw6t3v6Nns5NPo4M3j2sTe07vXyq3Twp3Ru4vKsHbBpGG5mlGykkaqiTytijy6mErKplnYtm3lx4TqzIfFmDS+kzbZvonVyLPUyrnWy73Yzb/Zz8HYz8HZ0MLa0cPb0sTb0sXc08bc08bd1Mfe1cje1cje1cje1cjf1sng18rg18rg18rh2Mvh2Mvh2Mvh2Mvh2Mvh2Mvi2czi2czi2czi2czi2czi2czi2czi2czi2czi2czi2czi2czi2czi2czh2Mvm2sbfw4vHm0TIli/Ily7Jli7Ili3Ili3IlS3Hli3IlS3HlS3GlS3GlC7GlC3Fky3Fky3Eky3Eky3Eky3DkizDkizDki3DkS3DkS3CkSzCkCzBjyvAjiy+jC26k0vaw5vXybXTxrTYxqnIpGK/jSzHn0vlzp7j1bXr2rPz3Kz02J7rzIjcum7Nqly+m02wjkKtjECykke4mVC+oVzEqmzMtYHRvZLUxaLZzbDf07vk2cPp38jr48/t5dLu59bv6dry6t3y7N7z7OD07eH07eL07uLz7+Lz7uL07uL07uL07eLz7eHz7eHz7N/x693w6tzv6dnv59Xu5NLq4s/p38vl28bk2MHh1bzg07Tg0a3fzqXfzaLfzaDgzqHhzqPh0Kjg06/h1bjj2L7m3MXo4Mrr5M/t59Tw6dny69317eH17+X28ej28+r39Ov49e369/D8+PL9+fT8+fT9+vX9+vX//Pf//Pj+/fn+/fn+/fn+/fn//vr+//3+//3+//39/vz9/vz+/vb49NXWtW7HmDrFkSzIlS7Jli/Jly3Jly3Jli7IlTGtgC/Ms379+eT/+u78+O379+369ev48+j28OTz7N/w6dru5tXs5NDp4cvo3sXn3MHl277l2rzl27zn273n3cHo3sXp38nq4s/s5dPu6Nfw6tvy7N/z7uL18OX38uj48ur48uv38+v39Oz39Oz39Oz39Oz39ez49Oz39Oz28uv38er38un28ej18eb07+Tz7eHy6t3v59nq49Lm3cng1r3bz6/VxqDNuo3GsH2/pmy4m1u0lEu3k0K9lj7IoUXXslzlxn3q0JTp1qjp2rjp277m2b7q2bTOrGDAoV/dyqfUybfWy73Yzb/ZzsDa0MLZ0MLa0cTb0sTc08Xd1Mfd1Mfe1cje1cjf1snf1snf1sng18rg18rh2Mvh2Mvh2Mvh2Mvi2czi2czi2czj2s3j2s3j2s3j2s3j2s3j2s3j2s3j2s3j2s3l2szk2szj2szj2s3j2s3j2s3j2s3i2czm28njzaPBmkvJli/Jli7Jli7Jli7Jli7Jli7Jli7Jli7IlS3IlS3IlS3IlS3HlCzGlC3FlC7FlC7Eky3Eky3Eki3Eki7DkizDkizDky3CkSzCkCzBjyvBjiy5izTHpWjdy6/WyLbVx7PXvIu7k0XRs3Tq2bTl2sLo3MTp3sbs4Mfs4cfv4cXv4L7w263t1ZnnyYLcuGTNpUrAmT+5lkC0k0a1l1O6oGPDqnPKs4HQvJDWxp7azqze07fj2MHm3sjr4c/s5dTv59fx6Nnx6dvy69zy7N3y7N7y69/y697y6t7y6t3y69zw6dnv6Njt5tXr49Ho4Mvm3Mbj177h07XdzKfYxZnUvovLsnbEqGS/n1W9nE28m0q9nEu/n1DDplzIsG7SvIXZxpbez6bi1LTk28Hn4Mnr5NHv6Njz69307uL28Ob28en39ev49e369+/79/H8+PP8+fT9+vX++/b+/Pf//fn+/fn//vr//vr//vr//vr+//3+//38/vz7/vz9/vz//vr///f799nbvnvFlTLJli7Ili3Ily3Jly3Ily7Ili68iiqqfzLTwZb++Of69u348+n38OXz7d7v6Nfq4s7m3MXk17re0q7by6TWwpPQu4PNtHfMsnHLsG7MsXLNtXnPuobVw5Xay6Tf0a/k2Lvm3MTq4czt5dPv6dny7N/17+P18Ob28ef38ej28+n38+r48+v39Or49Or48un18ef07+X07eLy697u59jq49Hl3cjh1bvazK7RwZ3JuY3BrXu6oGO6mlC7lz++ljXHnj/SrVfZvXTlzZPv27D15sT06Mny5svx5s3u5c7q4c7o383m3sro3cThzaLRv53VybTWzLvZzsDaz8Ha0MLa0cPb0sTc08bd1Mfe1cje1cje1cjf1snf1sng18rg18rh2Mvh2Mvh2Mvi2czi2czi2czi2czj2s3j2s3j2s3k287j2s3k287k287k287l3M/k287k287l287i1sTe08Dg2Mjk287k287k287j2s3j2s3n3MnjzaO9l0nJmDDKmC7Kly/Lly3Kly3Jli7Jly3Jli7Jli7Jli7Jli7IlS3IlS3IlS3IlS3HlCzHlCzGky3Gky3Eky3Eky3Eky3Eky3DkizDkizCkCzDkCzBjy25jz3TuYrazLTVybfbyKnFrH7l1bHp3cPp38vp4Mzq4c7r49Hs5dLt5tPv59Px6NHy6M/06M326cv46cfz4rnq1aDdxIDWtmfNp0zEmji+lje8mUS7nFO8o2bBrHjKt4vQ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8en28On28ej28ej28Of27+bz7uXz7uXy7uTy7eLz7eLy6+Hx69/w69zx6tvh2cjVy7rZzr/b0MLc0cPc08Xd1Mbe1cff1sjg18rg1szh2Mvi2czj2s3j2s3j2s3k287k287l3M/l3M/l3M/l3M/m3dDm3dDn3tHn3tHn3tHn39Ln3tTn3dPn3tLn3tHn3tHo3tTo3tTo39Tn39Lo39Lo39Lo39Lo39Lp4NPo39Lo39Ln3tHo39Lo39Lo39Lo39Lt4M7r1avFmDrMmjDLmS/Mmi/Lmi7Lmi7LmS/LmS/LmS/KmC7KmC7KmC7Jly3Jly3Jly3Jli7Jli7Jly3JlS/FlDHNplvixZDbwpLfzKno1rvfzrLgz7Lg0r/c0MHaz8DXzbzUzLvVy7rq4tHx6tny69vy69zz7N307N707N/z7eD07uP17+T17+T08OX08OX08OX08OX08Ob18Of28ej28ej28uf28ub28ef18eb28eX17+T18OP48OH479347tr47NX468/0473u2KXly4ncu2vOqE3Alja1jDKrhTSkfzOZciGicxKzfxC7hRC/hw/IjxHUmhndoxzVmQzVlgXWlwXTlQXZnA3SlgTUlQTTlwXfoxflqyTjqyTlrCTmrSXmrSXjrCbeqCnXqDfJq13QwZbd0rfr487y69r38OT68+r79u369+/8+PL9+fT9+vX++/b++/b//Pf//Pj+/fn+/fn+/fn//vr//vr///////7+//3+//39/vz9/vz+/vz//vr//vb99trixX/aqkPhrDrirDjeqTrWqEblzI799tj69ef27+Lv6NXj2sHUx6PJsGvMpEHbpyziqyXpsSbstCbstCTutCXutSTttCTtsyTssyXssiXssyTrsibosSXkrR/gpxnUmQvNkwnGjgvAiw29hxC0gBKldROjeiOuhzC3jjG/ljbJo0nSsmXexITw26v56sX779L88tn889/58+P38+f28+r39Oz39Oz39Oz39Oz39Oz39Oz28+v48+v48+v18ur29Or38ur38en28ej17+j07+b07+Xz7+Ty7uPz7OLy7OHx697v59nc0cPYzr3c0MHc0cPd08Xe1cfe1cjf1sng18ng18rh2Mvi2czj2s3j2s3k287k287l3M/l3M/m3dDm3dDm3dDm3dDm3dDn3tHn3tHo39Lp39Pp39Xp39Xp39Xn39Pn39Lo4NPo39Xp39Xp39Xp39Xp4NPo4NPo4NPp4NPp4NPp4NPp4NPp4NPp4NPp4NPq4NPp39Lq39Dv3brElzvOmjDOmjDOmjDMmjDOmjDNmy/Lmi/LmS/LmS/LmS/LmS/KmC7KmC7Jly3Jly3Jly3Jly3Ili/ElTjVtnzo2L/m2MTj1sXi1cbg1cXg1MTe08Xd0sTb0cHZz77Yzr3Vy7rj2svz69307N/y7N/z7eDz7eH07uP07uPz7+T08OX08Ob18ef18eb28ej28ej38un38un58un48+r38un38un38un38uj38un38un38un38uj18eb18OX17uP07eD17dz269bz6M3y5MTu3bfm0aXZwIrIpVm0hympdg6udwe3gArGjhTWnh3kqiXmqyXmqiLYnBDUlQXTlAPQkgXVlwvPkgTQkgPQkgPYnRLiqCPiqiPlqyTmrCToriXnryTnrybjri7Ur1HUwYzb0LLo4Mrv6Nj17uL28ej58+z69u77+PH8+PP8+fT9+vX++/b++/b//Pj+/fn+/fn//vr//vr//vr///7///7///7+//3+//3+//3+/vr//vr//vr///X999ngxITRqVLSqk7XtWrt2qT/+t/++ez59en17uHv59Th177TxZ7QsV7crjvosSrstCfutSXutSTutSTssyTssyTssyTrsiTnsSXkrSTapR3PmxrJlxnMmBTTmwvZnQbdngfZmwjPlAnEjAq6ggmueAateRC4iyvOrGDewoDt1Z335Lf568j37dj17uH18Of38en48uv39Ov39Ov39Oz39Oz49e349e349e349e349e339Oz39Oz49Oz29Ov29Ov28ur28ur28en28ej18Of18Ob07+bz7+Xz7uPz7eLy7ODt5dfYzb/az8Dc0cLc0sTd1Mbe1cjf1sng18rh2Mvh2Mvi2czj2s3k287l3M/l3M/l3M/m3dDn3tHo3dHn3dLn3tPn3tPn3tPp39To39Tp39Tq4NXq4Nbq4Nbp4Nbp4Nbp4NXp4NXp4Nbq4Nbq4dbq4dXq4dTp4NXp4NTq4dXq4dbp4NPq4dTq4dTq4dTr4dPt4dDt4M/u4c/y3bbHmTzPmzDPmzDPmzDOmzDPmzDNmzDNmzDOmjDNmjDNmjDMmS/MmS/LmS/KmC7KmC7KmC7Jly7HljDFm0joz6Lk2Mjh18ni18nh1sjg1cfg1cfe08Xe08Xb0cLb0MHaz8DXzbzc0sP17N/07eD07uL17+P17+P07uP17+T18Ob28ef28ej28uj28uj38un38un38un48+r58+r48+r48+r48ur48+r48+r48+r48+v48+r38un28ej28Of18OX07+Tz7uLz7N7v6Njr49Hl28fe0LbWxKDJqme3iSq5hBm9hhDKkxTfpiPlqyXlqyTlqiTkqiPanhXQkgTPkALNjwXPkwrLjgXLjQPMjgPSlg7gpSHhqCPkqyTmrCTnrSToryTrsCTpsCjarkDdxYLe07Pm38vt59fx7OD08OX18er48+z69e/69/L7+PP7+PP9+vX++/b//Pf+/Pj+/fn//vr//vr//vr//v/+/v7+//7+//3+//3+//3+/vz+/vv//vr///r///j//+v/9c//9c3//uT//e/9+vP8+fH59ev27+Lw6Nbi2L7YyJvctE7nsy/utSXutSTttCTssyXqsyXnsSbjrijdqSjToyjAkyGpfxigfB2deyaigzOlgSivghDOlQfcnQPfnwHenwXVmQnFjAi9hw+8hhm1iCvGrXXUxqPg1b7o4M3u59fz7eD07+X28en48ur48+z49e349e349e359u759u749e349e359u749e349e349e339Oz39ev39Oz38+v38uv28er38un28ej18Of18Of18Of08OX07uT07uLl3dDYzr/c0cPd0sTe1Mbe1cff1sng18rh2Mvi2czj2s3j2s3k287l3M/l3M/m3dDm3dDn3tHo3tLq3tLn3dPo3tTo39Xp39Xq4Nbp4Nbq4Nbq4Nbq4Nbr4dfq4dfq4dfr4dfq4dfq4dfr4tfr4dbs4tbr4tbr4dbr4tbr4tfr4dfr4tbr4tbr4tTw4s314bzdxJTbxZ345L7WuH/HmUDPmzTRnDHQnDDPmzDPmzDPnDDPnDDQmzDOmjDOmjDOmjDNmS/NmTDJmDLDlzzEnEq8lEK8lknOsn3p2Lzi2Mvi2Mrj2Mni18nh1sjh1sjf1cff1Mbd0sTc0cPb0MLZzr7Zzr/w6Nr17uL07+T17+T17+T28Ob28ef28ej28ej28ej38un48ur48+r48+r59Ov59Ov59Ov59Oz58+z58+z59Ov59Oz58+v59Oz59Ov59Ov38un38uj28ef18Oby7uPy7ODx6dnr49Hl2sbbzrXPv525nFu7ji7FkiLXoSPlrSfnrSXlqyTkqiTiqCTgpyPanxnMjwXKjAPFiAXDhwnBhwy+gQe/gwbFiAvZniDfpSXiqSXmrCXorSXoriXrsSXrsSXgrjDjw2/l2rjo4c7t5tjx7ODz7uX08en28un49O759fD59vH7+PP8+fT9+vX++/b//Pj+/fn+/fn//vr//vr+/v////7+/v7+/v7+//3///7+//3+//z//vv//vr//vr//vj//vf+/fb//fX//Pb++/X9+vL79u748uby69rp38LizZfgsjrrtCfstCXosSfirSjcqSjSoifEmCa2jCWngSWffiybfjeljE+tmWWxn3GunXKolGCYeS+ugA/KkgfZnALcnwLYnAPgpxrVnyDEkCC6jS68n1/RwZnc0bjm3srt5tXy7N/07+X28Oj38er28+v39Oz49e359u759u/59u759u759u759u759u759u749e749e339Oz39Oz48+z49Oz28ur48+r38un28ej28ej18Of18Of07+b27+Pe1sna0MDd0sTf1Mbf1cfg18ng18rh2Mvi2czj2s3k287l3M/m3dDm3dDn3tHn3tHn3tHo39Lq4NPq39Pp39Xp4Nbp4Nbq4Nbr4dfq4dfr4tjr4tjr4tjs4tjr4tjr4tjr4tjr4tjs4tjs49fs4tfs4tjs4tjs49br4tfs49ns4tjs49jv5NTz5MnjzaPFp23MrG3EqnfjyprLq27funTNnkPQnTPOnDPOnTfPnDTQnDHQnDHRmzDPmzDPmzDPmzDOmjHKmDTHnUjgwITt1Kbly5zmzqTp2sDl2svj2szk2cvk2cnj2Mri18nh1snf1sjg1cff1Mbe08Xc0cPb0MLZzsHr4tb28OX18Of18eb18ef28ej28ej38un38un38un48+r58+z59ez69ez69ez69ez69ez69O369O359O369O369O369O369O369O359Ov59Ov48+n38uj28ejz7+Xz7eHx6dvr49Lk2sbazbPOvpm8nVnFlzPYoyjkrCfnrSTmrCXlqyTiqSThpyTfpiTaoB/FiAe9gAayeAaocQmkbwqjbAWocAatcwbLkB3ZnyTfpSTkqiXnrSboribpsSXrsSXlryzjvmLr37/r5NPv6dzy7ePz7+b08en18ur39O349O/49fD69/L8+fT9+vX9+vb//Pj+/Pj+/fn//vr//vr///7///7+//3///7///7///7+//3+//3+//3//fz//vr//vr//vr//fn//Pj//Pf/+/b++vT8+PD69en28OD16cnnzYzksjPssybgqyfHmCKvhiKifyScfjGehkuciVyNf15/dFmLf2Som3qml3Cjk2yhkWmfkGWijl2Vdy2qfRHIkQfUmQTUmgboryHqsifYoibElzG+nljOvZHa0LXl3Mjr5NTw6t7y7eP18Of38un28+v39Oz49e359u/69vH59fD59fD59e/49e349e359e/59fD59e/49e349e339Oz39Oz28+v28+v38un38un28ej28ej17+j18Of07eHb0sTc0cPe08Xg1cjh1sng18rh2Mvi2czj2s3k287l3M/m3dDm3dDn3tHo39Lo39Lo39Lp4NPq4dTq4dTq4Nbr4dfr4dfr4dfr4dfr4tjs49ns49ns49nr4tjs49ns49ns49ns49nt49nt5Nft5Njt5Nrt5Nrt5Nru5Nru5Nrt49nu5Nfy4cPXun/HpV/bwY7148bv38Pdyart3L335cTbuXbImjrJmzndt17UpkXOnDXOmzXMmjbMmjbOmzTOmzPJmjnPp1fgxpXw38Pq383q3szp3czm3M3k283k283k283k2cvk2Mvj18vi18rg18nh1sjg1cff1Mbe08Xc0MTaz8Hk3ND28Of38un38un38un38un38un48+r48+r58+v59O349e349e349e349e349e349e359u749e349e359u759u759u769+/59u749e359Ov69Ov58+r28ejz8Obz7eHx6dvu5NPm3Mjc0LTQwZ3FpmPSojnkrCjnriTnriTmrCXmrCXiqiPgqCXcoyXUmyK2fQ2jbAiWZAqDVQiCVw2WZxSdahSibhDBiiDUnCTdoyXgpyXlqyXnrSbmryXoryXirS7mwWvx5sjv6Nrx6+Hy7+Xz8ef18ur28+z38+749O/59vH7+PT8+fX9+vb9+vb+/Pj+/fn//vr+/vv9/vz///7+//7////+/v7///////7+//3+//3+//3+/v3+//z+/vv//vr//vr+/vn+/vj+/ff++/X9+vL79u358+f78NTr05LlsjPrsibSoy+1lUWwnG25qorAtZ3BuKerpJhJRjw9OS5JQS6BdlqNgF+BdVZtYkhTSTJhVjmWglKWdy+nexDBjAjSnBDosCPssibnsSvTpDXDpV/Qv5bb0Lfl3Mnr5NTv6d3y7OPz7+b08en18ur28+339O349e359fD59u/69vD59vD59vD69vH69vH59u/49e749e349e349e339Oz39Oz28+v28+v28ur28ur38er28en28ejv6Nzb0cTd0sTf1Mbg1sng18rh2Mvj2s3k287k287l3M/m3dDn3tHn3tHo39Lo39Lp4NPp4NXq4dXq4dXr4dfr4dfs4tjs4tjr4tjt49ns49nt5Nrt5Nrt5Nrt5djt5Nrt5Nru5dvt5Nrt5Nrt5Nnu5drv5tru5dvv5dvv5dvu5Nrv5Nnz5tTx2ajBmUfSrWL45sjw5dfw5dfy5dTw5dTx5dTs2LPNrW7IolPQqlnQp1LIm0PSqVjOq2nUtHHSrGDGnk3Rr2rt1KXx4snr4NDo39Ln3tHn3tHm3dDm3c/l3M7k283k2s3j2s3i2czi2czh2Mri18nh1sjg1cff1Mbd0sTb0MLf2Mv18OX38un38un48ur38+v38+v39Oz39Oz49e359e749e349e349e359u759u759u769+/69+/69+/69+/69+/69+/69+/59u749e349uz59Oz58+v38un18Of07uTy697v59bp4c3g1bzUyKjStW/dqzjnryforyToryXnrSbmrCXiqSTgpyXYoCXNliOyexefaxCcahWWZheVZxuebRqhbxmmcRe+iCDYoSffpiXhqCXjqiXkrCXlrSXmrifYqjnx1ZLz6dPx7ODy7uT08Of08en18+v28+749fD59vH69/L8+fT9+vX9+vb9+/f+/fn//vr//vr//vr//vr///7///////////////////////7///7///7///7+//3+//3+//z+/vv//vr//vr//vn//fj//PX9+fH79+399OD347HisjnqsifdrTLbuWXSxKPCvbO+ure9uba5trOKiINmY1paVUdNRjQ9NiEvJxQnIRMmIRUpIhJcUDOQfU6Wdy2jexPLmhzmrifrsibrsyferjXMsGzVxZ/d1Lvm3szt5tbw6t7y7ePz7ubz8Oj08ev28u349O749e759fD69+/69vD69vH69vH69vH69vH59e749e339Oz49e349e349e339Oz28+v28+v28+v28uv28ur28+n38unr5Nfc0sTe08Xg1cfh18ri2czi2czj2s3l3M/l3M/m3dDn3tHo39Lo39Lp4NLp4NTq4dXq4dfr4dfs4tfr4tjr4tjs49ns49ns49nt5Nrt5Nru5dvu5dvv5dvu5dru5dru5dvu5dvu5dvv5trv5tvw5tzv5tvv5tzw5tvv5tzw5tr06NX14LjUr2TNnTrTrF7258/u5dvv5dvv5drv5drv5tj05tP45sjy2a3Xu4Ts0JzdwY7v2K725cX25cbz3bfn0ajs2bbo2cLs4dPq4dTp4NPp4NPo39Ln3tHn3tHm3dDl3M7l3M/k287j2s3i2czi2cvi2Mri18nh1sjg1cfe08Xc0sTb08b18OX59Ov49Ov49Oz49Oz49e349O749e359u759u759u769+/69+/69+/69+/69+/69/D69/D7+PD8+PL7+PD7+PD6+O/69+/69+/59+759u759O348+v28ej18Ob07uLx6tvs5NLk3Mbc0bbfwn3irznpsCfpsCXoryXoribnrSbjqiTgpyTboiTTnCa3gh2jbxWjbhmgbhqfcB2lcxyndBuqdhu5gx3aoyngqCbhqSTjqiXkrCblrSfhrCzduGD46cH07d7z7+X08ej28ur28+v39O749e/59vH6+PP6+fP9+vX++/b+/Pj+/fn+/fn//vn///n//vr//vr///////////////////////////////////7///7///7///7+//3+//3//vv//vr//vr///n//fj//PT9+vH99+v+99nmw2TlsTHosSjarDfOsmvKvJ6hm5JqZ2NIRkIxLikrKCEkIhkiHxYjIBQkHxElHw8nIRAvJxY6MRtnWjyHdk6QdTO4jiTbpyjkrifnsSberzXWvH3d0K3j2sXp49Hu59rx6+Dy7eTz7+bz8Oj08ev28u338+349O749O/59e759fD69vH69vH69vH69vH59e/49e749e749e749e349e339Oz39Oz28+v18ur28+v28+v29Ov38+nn4NPd08Xg1cfh1sjh2Mvj2s3j2s3k287l3M/n3tHn3tHo39Lp4NPq4dPr4dTr4dXr4tjr4tjs4tns4tjt49ns49nt5Nrt5Nrt5Nru5dvu5dvv5dvv5tzw5tzv5tzv5tzv5tzv5tzv5tzw59vw59zw5tzw593x6Nz16tb56czz3bXoy5XWsGHOnjvUoDPQplP25Mbx59rw5tzw5tzw5tzv5trv5tnw5tjy59X05c3z5dDx49Lv5Nbu5Nju5Nft5NXt49Xq4NLt4tTr4tXq4dTq4dTq4dTp4NPo39Lo39Ln3tHm3dDm3dDl3M/k287j2s3j2szi2cvh2Mrh18ng1sjf1cfe08XZ0MP07uP69ez49e349e359u759u759u759u759u759u769+/6+O/7+PD7+PD7+PD7+PD79/L7+PH8+PL8+PP8+fL8+PH7+fD6+O769+/69+/69+/59u759Oz38un28uj18OXz7N/v6Nnq48/l28Xq0JPhskLpsCjqsSbpsSXoryXoriblrCXjqiTgpiTdpCfHjyKrdhepdByndR2fbhmseR6seB2teR63gBzXoCjhqCfiqSXjqyXjqyffqy/ctFT45bL48eD28uj28+r39Oz49e359u769vH69/L7+PP8+fT7+vX++/f+/Pj+/fn+/fn+/fn//vn///n///n//vr///////////////////////////////////7///7///7///7+//39//3+/v3+//z+/vr//vr//vn//ff+/PT++/L++un46rDguFDnsivmsCnaqjbMrmmpnH5APDQnJiEmIx0lIRgiHRIiHREmIBM3MB9HQCpWTjZbUjtgV0FfVkFZUDttWy+zjC/OnSfapibgqybZqzffyI/k2Lvm38zr5dbu593w6uLy7eX07+f08en08en28u338+749O/59fD59fD59fD59fD59fD69vH69vH69vH59fD59fD59fD49e749e339Oz39Oz39Oz28+v28+v28+v28+v28unk3dHf1Mbh1sjg18ni2cvj2s3k287l3M/m3dDo39Lp4NPp4NPq4dTr4tXs4tfs4tjs49ns49nt5Nru5Nru5Nrt5Nru5dvu5dvv5tzv5tzv5tzv5tzw593w597w593w593w593w593w593x6N7w593w593x6N316tny3rfWt3nQp1TOnj7PoDjRnzfRnzfKolDo1bPz6Nrw593x5t3w5t3x59zw59rw59nw59nx59nw5tjw59nv5tnv5tnu5dju5dju5djs4tXs4dPq4dPs49Xr4tbr4dbq4dTp4NPp4NPo39Lo39Ln3tHn3tHl3M/l3M7j2szi2czi2cvg18ng18ne1cfe1Mbb0cTw6d/69u349e349e359u759u769+/69+/7+PD7+PD7+PD7+PD7+PD8+fH8+fH9+vL8+PP8+PP9+fT9+fT9+fT9+fT8+fL6+fD69+/69+/69+/59u749e359Ov38un28eb17+Py69/v6Nbq49D0367fuVrnsCzrsibqsSXpsCXpryfnrSblrCbiqSXhpyfSmSexfBqseR2qeSCebRa1gSOwex6weyC3gR3TnSXhqCfiqibhqyjcqi/dtVL04qz79N/49On49ez49e359u77+PD7+PD6+PD69/L8+fT9+vb++/f//Pj+/fn+/fn+/fn+/fn//vr//vr//vr//vr///////////////////////////7///7///////////////////////7///7+//79//39/vv//vr//vr///n//fj//PT//Or67bnhuFPlsTDnsCvcqjLPrFqyon5VT0I5NSo/OCdRRjFeUz1kXEZeV0NTTDpHQTI/OCg3Lxs7LhFBMhBZQQy0jCrGmCbQnyXWpSnUq0ft3LTp4czr5Nbt593v6OHw6uPx7eXy7+f08en18ur28u349O/49O/59fD49fD49fD49fD49fD59vH69vH69vH69vH69vH59fD59e749e349e339Oz39Oz39Oz39Oz28+v38+v28Ofi2c3f1cfg18ni2czj2s3k287l3M/m3dDn3tHo39Lp4NPq4dTr4dfs4tjt49nt49nt5Nrt5Nru5Nrv5dvv5dvu5dvv5dvw5tzw5tzx593w593w593x6N7x6N7x6N7x6N7x6N7y6d7z6d716tv26tb06NT47NT037PQqVjQoDrSoDjWp0TZsmHWsWXTr2jcwYvy5M7y6d3y6N7x593y6N7y6N7x6Nzx6Nvx6Nvx6Nvx593x59vw59rw59rv5tnv5tnw59ns4tTr4dDu5Nfu49bt49bs49br4tXr4tXr4tXq4dTp4NPp4NPo39Ln3tHm3dDl3M/k287j2szi2cvh2Mrg18nf1cfd08Xt5dr79+769+/69+/7+PD7+PD8+PP8+PH7+PD7+PD7+PD7+PL8+fT9+fT9+fT9+fT9+fT8+PP9+fT9+fT9+fT9+fT9+fP8+fH7+PD7+PD7+PD59u759u739Oz48+v38un28ef08OTz7ODx6trz6c3y2qLgsULlryzosCbpryXpryforibmrSbkrCXkqyfcoyi2ghyveyCveyGjcRm2gySxfh+yfiC2gh7NlybfqCzfqizarUHjxnj+8sz99+T79uv69+769u/69+/8+PL8+fT8+fT9+vX9+vX++/b+/Pf+/fn//vr//vr+/fn+/fn+/fn//vr+/vr9/vv9/vz///////////////////////////////////////////////////////7+//7+/v7+//7+//3//vz//vr//vr//vn//fj//PT//ej77brkw23jsjjmsSzcrDTOrVy1pXtnYVJZU0dTTD9HQTBAOCE+MxNCMgxPOwhfRwlzVg6BXw+FZhx1VQ+9kyrImSbOnifLojjixoDw5czt5dfu6N3v6eHv6+Py7OXy7ubz8On18ev18ez28u349O/49O/49O/59fD49fD49fD49fD69vH69vH69vH69vH59fD59fD49e749e349e339Oz39Oz39Oz39Oz39Oz49Oz27+bg18zg1sjh2Mrj2c7k287l3M/m3dDn3tHp4NPq4dTr4tXr4tXr4tbs49fu5Nnu5Nrt5Nru5dvu5dvw5tzw5tzw593w593w593x6N7x6N7x6N7y6d/y6d/x6N7y6d/y6d/y6d70693469T037Tfv4DXtG/lwn3UrFjRoTvXojTXojXVp0f64Kv858D45cP569D06tzz6d/y6d7y6d3y6dzz6Nzz6d7y6dzy6dvy6dry6Nvy6Nvx6Nvx6Nrw59rw59ry59jp3c7v5dbv5tju5djt5Nfs5Nfs49bs49br4tXr4tXp4dTp4NPp4NLo39Hn3tHm3dDl3M/k287j2szi2cvg18ng1sjd08Xp4tb69+/69+/7+PD7+PH8+PL8+PP8+PP8+PL8+PL8+fP9+fT9+fT9+fT9+fT9+fT9+fT9+fT++vX++vX++vX9+fT9+fT9+fP8+fP8+fH7+PD69+/59u749e349Oz48+v48+r28ej18Ob07+P07d357M/w15bdtE7jri/nryforyjqryfqryfnriblrSbjqiq+iB6yfR+yfSGvfCGufB2zgSG0gCG1giDEkinVqUXdu2n046z+9NP99+j69+369+/69/D8+PP8+fP9+vT9+/T9+vX++/b+/Pf+/Pf//fj//vr//vr//vr+/fn//vr//vr+/vv9/vv8/vz9//3///////////////////////////////////////////////////////7////+/v7///7///7//v3//vz//vr//vr//fn//Pf/+/b//O7/+9n04Jzjv2DbrjzUqDq6mkpIOhdFNRFLOApXQgxnTg95XBGKaROWbw6ccgildgKqeAKgdhCDXQ3DmCjJmyvGnjvfxoT05sTv6Nru6d/u6+Hv7OPw7eXz7ujz7+n08ev18ez28+z38+739O/49O/59O/59fD59fD49fD49fD59fD69vH69vH69vH69vH49e759e349e349e349e339Oz39Oz39Oz39ez49Oz27+bf1svh18ni2czk28/l3NDm3dDo39Ho39Lq4dTq4dTr4tXs49bs49bt5Nju5Nnv5dvu5dvv5tzv5tzw593x593w593w597w6N7x6d7y6d7y6d/y6d/y6d/y6d/y6d/z6t/57dn34rviw4XNok3SoTvVoTjRnzzMn0HOoD7UojnYozXQoD3u2Kr67Nj06+D06uD06uDz6uDz6t/169zm2Mbg0b3z6Njt4M/v3b7v2K/76MP768/56dHz5c/z6Nby6Nry5tjp3s/w59rv5trv5tnv5tnt5djt5Nft5Nfs49bs49br4tXq4dTp4dPp4NPo39Ln3tHm3dDl3M/k287j2szh2Mrh18nf1cfm39P7+PD7+PH8+PL8+PL8+PP8+PP9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT++vX++vX++vX++vX++vX++vX++vX9+fT8+PL7+PD7+PD69+/69+/59u759u759u359ez48+r38un28ej18Ob28OP68dn86rnqzH/dtFPaqjrirDDnrivnryjnryfnrSrJkiO1gB+0gCKzgCKpeR22hCa1giK1gyPAkjn35an/+tj+9+j79u76+O/7+PD7+PH8+PL9+fT9+vX9+/X++/X++/b//Pf+/fj+/fj+/fn//vr//vr//vr//vr//vr+/vv9/vz9/v39//39//3////////////////////////////////////////////////////////////////+//7///7///7+//3+//z//vr+/fr//Pj//Pj++/b++/P+++z79c7146HevmyxkD9wUw6HZhSUbAudcQejdQSmdgOndwKpeQGqeQGuewGwfQGieBGFYRHEnkHRsFzq1Jr06s7v6tzv6uHv7OPw7eTx7ubx7ufz7+r08Ov18ez28+329Oz39O739O/49O/59fD59fD59vH59vH59vH59fD69vH69vH69vH59fD49e359O359O339Oz39Oz39Oz39Oz39Oz49ez49ez17+be1snh2Mrj2s3l3M/n3tHn3tHp4NLp4NPr4dXr4tXs49bt5Nfu5dju5Nrv5dvv5tzv5tzx593w593x6N7y6N7x6N7w6d/x6d/z6t/z6t7z6uDz6uDz6uD06+H27N756s/x2ajTrF/Uoz7YojbapDbTpUXhvXPx1prpyYnjvG3Uo0DToTzcv4D87dH16+H17OL17OL06uD06uD47N315c3z47/868325cnp0aXHpWXHqXDOt43z4cPezbTm2cbx5tjw5tnw5tjx6Nvx59zw59rv5tnv5tnu5dju5dju5djt5Nfs49bs49br4tXq4dTq4dTp4NPo39Lm3dDl3M/k283i2cvi18ni18Xj2sr9+fD9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT9+fT++vX9+vX9+vX9+vX9+vX9+fT9+fT++vX++vX++vX++vX++vX++vX9+vP9+fL8+fH8+fH8+fH7+PD7+PD69+/69+769ez59Oz48+v38un38uj38+f58uT98dj567/24J/wzXrlvmHftlHgtUzgtEzOoD+ygCO0gCKzgCWtgC27izK1gyO1gySziTf17Mr7+Ov7+O77+PD8+fL9+vL9+fP++vT++vX9+vX++/b//Pf//Pf//fj+/fj+/fn+/fr//vr+/fn+/fn//vr//vr9/vz9/f39/v3+//3+//3///////////////////////////////////////////////////////////////7///7+/v7///7///3+//3+//39/vz+/fn9/Pj+/Pj++/f8+vb9+vH9++z9+eXFt5CSaw2qegetewKtewCufACufACvfACwfQCxfgC0fwC3gAKidhKXfDrp16j27NDz7t3x7eLw7OXw7Obx7uby7+jz7+rz8Ov08ez18u328+728+739O/39O/49fD49fD59fD59fD59fD59fD59fD59fD59vH69vH69vH49fD49e349e349e339Oz39Oz39Oz39Oz39Oz39Oz39Oz07+Xe1sni2cvj2s3m3dDn3tHp4NPq4dTr4dft4dXt4tbt5Nfu5djv5dvw5tzw5tzv5tzw593y6N7y6N7y6d/y6d/y6d/z6uDz6uD06uD16+H06+H06+H17OL27N/869DlxIXPokXWojfapDTapDPWoznkxID779L679z779v/8crSrmTPoT/Ur2L45MD27eH27eH27eH27eD37d/67dn25MPbwIvXvYzv3brs2rjfypfgypzx4MP469z26t31693z6dzz6t3z6t3y6dzz6Nzy6Nzx6Nvw59rw59rv5tnv5tnu5dju5djs49bs49br4tXq4dTq4dTp4NPn3tHn3tHl3M/j2s3i2cvp2MDPwKX++fH9+fT9+fT9+fT++vX++vX++vX9+fT9+vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++vX++vX9+vX9+vX++/T++vT++vX++vX++vX++vX9+vT9+vL8+fH7+PD69+/69+/59u759u759u359ez69Ov59Ov59Ov69On79Ob89eP79eD89d799Nj+8M/+78jt2KCrgDG0gSOygSa1jES9jz21hCS2hCWugi3s2bT++ev9+e/9+fD++vP9+vX9+vT9+/P9+vX++/b++/b//Pf//Pf//Pj+/fn+/fr//vz//vr//vr+/fn//vr//vr9/vr9/vz9/v3+/v7+//3///////////////////////////////////////////////////////////////////////////7+//7+//3+//39/vz//fz+/Pv+/fr+/Pj++/f8+vb7+fT7+PK2rJKidg+1fwK1gAG1gAG0gAC0gAC1gAG2gQC3gQC5ggC7hAKdcxOsmGj68d7z7+by7+jy7+ny7ury7+ry7+rz8Ov08ez08ez18u318u328+739O/39O/39O/39O/49fD49fD49fD59fD59fD59fD59fD59vH59vD69vD69vH59u749e349e339Oz39Oz39Oz39Oz39Oz39Oz29Ovz7uXf18rj2szl3M/n3tHo39Lq4dTr4tXr4tbt49bt5Nfu5djv5tnv5tzw593w593x6N7x6N7y6d/z6d/z6uDz6uDz6uD06+H06+H16+H16+H17eD17OH17OL77tjkxYvPokbYozbapTPapjTZpTbPpU786r357+D37uP47uP88NzlzqLQsW7Ormvp17T47t/16dX05tH26M/258bu2afSsnTTuITp1bP359Ly5ND469T77tn47N316+H16+H06uD069706970697z6d/z6t3z6dzy6dvx6Nvx6Nvw59rw59rv5tnv5tnu5djt5Nfs49br4tXr4tXq4dTo39Lo39Lm3dDk3M/j2svq1bLDroX++vD9+fT9+fT9+fT++vX++vX++vX9+vX9+vX9+vX9+vX9+vX++/b++/b++/b9+vX9+vX9+vX9+vX9+vX++vX++vX9+vX9+vX9+vX++vX++vX8+fT9+fP8+fL8+fH7+PD69+/69+/69+/69+/69+/69+/79e779u379u379e769u379u379u389+z+9+ny6MazjUi1giOzgievhTrEmEqzgym4hSWygyzTvo//+9/u58rs5cb79uX++/L++/X++/b++/f//Pf//Pf//Pj//Pj//Pj+/fn//fv//fv//vr//vr//vr//vr///n//vr9/vz+/v3+//3///7//////////////////////////////////////////////////////////v/////+/v7+/v7///7+//7+//3+//3+/v3//fz//fz//fv+/Pr+/Pn8+/f7+vb8+fOonoKtfhC6gwG6gwC5gwG5hAC6gwC6gwC7hAC8hQC+hgC+hgKYcRS1o3z38uf08ez08ev08ez08e318u318u318u728+728+718u718u728+739O/39O/49fD49fD39O/39O/49fD59fD59fD59fD69fD59e/59u759u759u/59u749e349e339Oz39Oz39Oz39Oz28+v28+v28+v07+Xg2Mvj2s3l3M/n3tHo39Lq4dTs49bt5Nfu5dju5djv5tnw5tvw5tzw593x6N7y6N7z6d/z6d/06+H06+H06+H06+H17OL17OL27OL27eP27eL27eP27eP87tbgwX7Soj7bpTPcpjTbpjTZpDjYtGv+89X47+L37uT47+T57+L98tz/8dL+7cn979r57t/ez7bTv5rSuovFqXbOsn3lypv+78/77trz5tjz6Nnz6N327OL27OL27OL27OL16+H16+D16+D16+D16+H06t/z6t3z6t3y6dzy6dzx6Nvx6Nvw59rw59ru5dju5djt5Nft49fs4tfr4tXp4NPo39Ln3tHl3M/m28rfxpXFq3T+++79+fT9+fT++vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++/b++/b++/b++/b++/b++/b++/b++/b++/b/+/b++vX9+vX++/b++/b++/b9+vX9+vX++vX9+vT9+vT9+fP8+PL8+fH7+PD7+PD7+PD7+PD89/D79+/7+O/79/D7+O/89+/89/D7+PD9+O7479e+nl60gyS0hCWofCnOpVmvgy64hSa0hSq+ombjzpaxj0ytikfTvY/9+eb//Pf//Pf//Pj//Pj//Pj//Pj//Pj+/fn+/fn//vr//vv//vr//vr//vr//vr//vr+/vr+/vz+//3+//3+//3////////////////////////////////////////////////////////////////+/v7+/v7///7+//3+//3+//3+//3+//3//v3//fz+/Pv+/Pv9/Pn8+/j++/SfknGygg++hwC+hgC+hgC+hgC+hwC+hwC/hwDBiADBiQDBiQOUbxPBspD59ez29O/39O/39O/39O/29PD39PD39PD49fH49fH39PD39PD49fD49fD59vH59vH59vH49fD49fD59vH59vH69vH69vH79fD59e749e349e349e339Oz39Oz39Oz28+v28+v38+z28+v18+v28uv38+r17+Xh2M3k287m3dDp4NPq4dTs49bt5Nft5Njv5tnv5trw59vx593w5tzx6N7y6d/z6d/06uD06uD06+D17OH17OL17OL27eP27eP37uT37uP27eP37uT37uT77tXnyYPToz3cpjTcpjTcpjTZpDniv3v+89j58OT47+X47+X58Ob68Ob58OX58Ob57+b68OT88Nz9787857375rz98s/158337N3x5tr37N757uL47eP37eP37eP37eP27OL27OL27OL27OL27OL16+H16+H069/0697z6t3y6dzy6dzy6dzx6Nvx6Nvw59rv5tnu5djt5Njt49jt49fr4tXp4NPo39Ll28zq2sHJqm3JrWz+/O39+fT9+vX++vX++vX9+vX9+vX9+vX++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++vX9+vX9+vX++/b++/b++/b++/b9+vX++/b++vX9+vX++vX++vX9+vP9+vP8+fL9+fL8+fL9+PH8+PH8+fL8+fL8+fL9+fL/+/D/++n/+eL++uHMsXe0gya1hCWwgSfIoVesgjS3hSe1hSmziz6/lkO4iCe2hii4kkXx6cr//Pf//Pj//Pj//Pj//Pj//Pj//fn+/fn//vr//vr//vr//vr//vr//vr//vr//vv9/vr+//3+//3+//3+//3///////////////////////////////////////////////////////////////////7+/v7+/v7+//7///7+//3+//39//3+/vz//fz//fz//fz+/Pv+/Pv//fSYimO3hQ/CiQHBigHBiQHBigHAiQDAiQHAiAO+hwa8hwm4hg2IaBnJvaL69+/39vL49vH59vH59vL39vL59vL59vL59vL59vL59vL59vH59vH59vH59vH59vH59vH59vH59vH59vH59vH59vH69vH59fD69e749Oz39Oz39Oz39Oz39Oz39Oz28+v28+v38er18ur18en28On28ej17uTj2s7l3M/n3tHp4NPr4tXs49bu5djv5drw59rx59zx593x593y6N7z6d/z6uD06uD17OL17OL17OH27eH27eP37eP37uT47+X47+T38OP58OH57t/78OD878/dtGLYpTrdpzTdpzXdpzXapTnYs2n/9dX68eT58Ob58Ob68ef68eb58Ob58Ob68Ob68Ob68OX88eL46c715sv98Nfj07n369z27eD47+P68Ob57+X37uT37uT37eP47uT37eP37eP37eP37eP37eP17OL17OD06970697y6dzy6dzy6dzy6dzy6dzx6Nvw59rv5tnu5dju5djt5Nfr4tXq4dTn3tHo3Mvv2rnAn1vOs3H+/O3++vX9+vX9+vX9+vX9+vX9+vX9+vX9+vX++/b++/b9+vX9+vX++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b++/b9+vX9+vX9+vX++vX++vX++fX9+fT9+vX9+vX9+vX++vP68tzNu5C7o3DbzqXaw4mzhCy2hSa2hSi+lUi3jT63hie2hii1iTa7jze4iCe5iCeyhzHn1q3//fX+/fn+/fn+/fn+/fn+/fn//vr//vr//fz//vv//vr//vr//vr//vr//vv//v3+//3+//3///7///7+//3///////////////////////////////////////////////////////////////////////////7+/v7///7+//7////+/v7+//3+//3+/v3//fz//fz//fz8+Oubhle6hg7EiwLCigPAiQS8iAa7hwi4hgupfA2YcBGQbyGTezyNgF3e2c37+PL69/P69/P69/P69/P69/P69/P69/P69/P69/P69/P69/L59vH59vH59vH59vH69/L59vH59vH59vH59vH69vH59vD59u759u749e339Oz39Oz48uv38+v38+r38un38un28ej28ej28Of38Of18Ob17OLl3NDm3dDp4NPr4tXs49bt5Nfu5djv5tnx59zx6Nzy6d3y6N7z6d/06+H06+H16+H17OL17OL27eP37uT37uT37uT47uT57+X47+X78eL26MvYxaX/9dHs0ZjWpD/dpjfepzXepzbeqDbcpjjRpk7667/78uX78uj68ef78uf78ub78ef68ef68ef78ef78uf99ODp053PtH/88dT57Nr06Nn68eT68Ob68Ob58Ob47+X37uT47uT47uT47uT47uT47uT37eP37eP27eP27OL37OH0697z6t30697z6t/z6d/z6d/y6dzx6Nvw59rv5tnu5djt5Nfs49br4tXp4NPr4M/x2rG1kknXvX7+/O79+vX9+vX9+vX++/b++/b9+vX9+vX9+vX++/b++/b++/b++/b++/b//Pf//Pf++/b/+/b/+/b//Pf//Pf//Pf//Pf//Pf++/b++/b//Pf//Pf++/b++/b++/b++/b++/b9+vX9+vX9+vX9+vX9+vX++vX++vX9+/P9+/P9+vT++/DTvI6rgTCvgSyyi0PmwXuyhza1hSe3hia0hii3iCm5iCa4hyeyhSzAlD61iS25iSi1hyzNtID//+/+/fj+/fn//vr//vr//vr//vr//vr//vr//vr//vr9/vz9/vz9/vz+//3+//3+//3///7///7///7+/v7///////////////////////////////////////////////////////////////////////////7///7+//7+//7////9//7+//3+//3+//3//v3//fz//fz18eCchVG4hxG6hwmtgBGkfBuWdSKIbCmJczunl2vJupbd17rp5M728uX6+fP7+fX8+fT8+fX8+fX8+fX8+fX8+fT8+fT7+PT7+PT69/P69/L69/L69/L69/L7+PP7+PP69/L69/L69/L69vH69vD59u749e349e349e328+v28ur38er28ur28un28ej18Of07+b07+X07uT07uP07uLz697m3tHn3tHp4NPr4tXt5Nfu5djv5tny5try6N3y6N7z6d/z6uD06uD06+H17OL27OL27eP37uT37uT37uT47uT47+X57+X58Ob58Ob98t/gx5br2q725LHZr1ndpzneqDXeqDXeqDXfqDXdpzbVpUPt1p/88+T68+j68+j78+j78uj78uj78uj78uj78uj98+X87MrVrV/Vs3L78NTx59f37eH78ef78ef68ef58Ob68Ob68Ob58Ob58Ob58Ob57+X47uT47uT47uT37eP37eP37eL27OH16+D06+D06uD06uDz6uDz6t3y6dzw59rw59rv5tnv5tnt5Nfs49bt4tbt4tDw16m1kUfgxoz//O/9+vX9+vX9+vX++/b++/b9+vX9+vX++/b++/b++/b++/b++/b//Pf//Pf//Pj//Pf//Pf//fj//fj//Pj//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pf//Pf+/Pb//Pb//Pf//Pf//Pf//Pf++/b8/Pb++/b++/b++/b++/X++/X+/PHTu4mygyi1hCWxhCvYs2ewiDu2hSi4hia4hya5iCa6iCe6iCi1hSnCl0SyhzG5iCi2hyu4mlz//uf//vn//vr//vr//vr//vr//vr//vr//vr//vr//vv9/vz9/vz9/vz+//3+//3+//3+//3+//7////+/v7///////////////////////////////////////////////////////////////////////////7///7+//3///7+/v79//7+//3+//3+//3+//3+/vz//fzr59yAcVCCaCaWfDumkVy0pn7Oxaju6Nb/+/L9+/j9+/r9+/n8+vf8+vb7+vb7+vb8+vb9+vb9+vb9+vb8+fX8+fX8+fX8+fX8+fX7+PT7+PP69/P7+PP7+PP7+PP7+PP69/L69/L59vH69vH69vD59u749e349e339Oz28+v28un38en18Oj08OX07uTz7uTz7OLx7ODx693w6tvx6tnv6Nfo39Hn3tHp4NPs49bu5djv5tnw5try59zy6N7z6d/06uD06+H17OL17OL17OL27eP37uT37uT47+X57+b57+X47+X58Ob58Ob78eb989zYu4D567bfvXrZpjzfqTbfqDbfqDbfqDXfqDXfqDbbqDzs0If/9tj99Ob79On89Of+9eX+9eT89Of78+j78+n+9uLt2qrSpk/rzpL/9OH88+b88uj88uj78ej78uf68uf68eb68Ob58Ob58Ob58Of58Ob57+X57+X47+T47uT47uT37eP37eP27OL17OL16+H16+Hz6uDz6t3y6t3x6Nvx6Nvw59rv5tnv5tnu5Nft49fu49Dpzpi1kUfq1J/+/O/9+vX9+vX9+vX9+vX9+vX9+vX++/b++/b++/b++/b//Pf//Pf//Pf//Pj//Pj+/Pj+/fj//fj//Pj+/Pj//fj//fj+/Pj+/Pj//fj//fj//fj//fj//fj//Pj//Pj//Pj+/Pj+/Pj+/Pf//Pf+/Pf//Pf//Pf//Pf//Pf+/fb//vXf0KSyhi+3hSW1hSbBmkyzjUK2him5hya6iCe6iCe6iCe6iCi5iCm/lkSxiDe5iCm4iCq0j0X67sz//vj//vr//vr//vr//vr+/vr+/vv+/vv+/vv+/vz9/vz9/vz9/vz+//3+//3+//3+//3///7////+/v7//////////////////////////////////////////////////////////v////////////////////////7///7+/v7///7///7+//7+//3+//3+//3+/v319O/RzsXl4dbu7OP59/L//fn//fr//fv//fr+/fr9+/r9+/r9/Pn8+/f8+/f8+vb7+vf8+vf9+fb9+vb9+vb9+vb9+vX9+vb8+fX8+fX7+PT7+PT7+PT7+PP7+PP69/L69/L59vH69vH69vH59e/49e739Oz39Oz28+v28un18Of28Ob07+T07uLz7N/y697w6dvu59fs5dPs49Dq4czo38rl3Mvo39Lr4dTs49bu5djw59rx6Nvy6N7z6d/06uD16+H17OL17OP27eP27eP37uT47+X47+X58Ob58Of68Ob68ef68ef78uf+89/x3rfWvYT97q/UqVPdqDjgqTbgqDfgqTbgqTbgqTbgqTbfqTfXq0zmx4f66r/+9NL88Mrw2q3t2K3/+Nz/+N/78dT88MLmyoXWrlz557j+9On88+r98+n88+n88+n98+j88+f88uj88uj78ef78ef68ej78ef68Ob68OX58OT57+X57+X47uT47uT37eP27eP27OL27OL06+H069/z6t7y6t3y6dzx6Nvx6Nvw5tru5djt5Nfx5M7au3u4k0by47P+++/++vT9+vT9+vX9+vX9+/X++/b++/b++/b//Pf//Pf//Pj//Pj//Pj//Pj//Pj+/Pj+/fn+/fn//Pj+/fn+/fn+/vj+/fn+/fn+/fn+/fn9/Pj9/Pj+/fn+/fn+/fn+/fn+/fn+/fn+/fn//fn//Pj//Pj//Pj//Pj//Pj+/vj+/fjt4b22jkC1hCe2hSapgDLJole3hym5iCa6iCe7iSe6iSe6iCi5iCithDPGnU26iCm6iSm3jDbl1av//vf//vr//vr//vr+/vr9/vv+//3+//39/v3+/v3+//3+//3+//3+//3+//3+//3+//3+//3///7///////////////////////////////////////////////////////////////////////////////////////////////////7///7///7+//3+//3+//3+//3+//3+//z+//z9/vz+/vz//fz//f3//fz//fz//fz//fz//fz+/Pv9+/n9/Pj++/f8+/f9+/f9+vb9+vf++vj9+vb9+vb9+vb9+vb8+fX8+fX8+fT8+fT8+fT7+PP69/L79/L69vH69+/59u749e739O728+v28+v38uv28ej07+bz7uP07eDz693w6dnu5tXr4s/o4Mnm28Hk17nh0rDfzqnh0rfr39Dt4dXu5djv5tnx6Nvy6dzz6d/16t706+D17OL17OL37uX37uT37uT47+X47+X58Ob68ef68ef68ej78uj68ef78uf668rSsG7q05jrzYDapz3fqTfgqTbgqTbgqjfgqjfhqjfhqjfhqzbeqTnapz/esVbmwG/juGHWqUvetV7n05Pm0pjdvnXjt1vaqkfZuGr/+NL+9er99Or99Or99Or99Or+9Or98+n98+n98+n88uj88uj78uj78uj78ef68ef58Ob58Ob68Ob57+X47+X47uT47uT47uT37eP27OL16+H06uDz6uDz6d/y6N7x6Nzw5tvv5dru5dbz4cTNp12/mUr07sT9+ez8+fH8+fH9+vP9+vT9+/P9+vX++/b++/b++/b//Pf//Pj//Pj//Pf//Pj+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr+/fn+/vj+/vj9/Pj+/fn//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn+/fn78dO5llK0hCi2hCaieCvNpVu3hym5iCa6iSe6iSe6iSe6iSe5iCipfy7OpVa5iSq8iSi5iSzVv4v//vP//vr//vr+/vv9/vz+//39/vz+//3+//3+//3+//3+//3+//3+//z+//z+//3+//3///7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//3+//3+//3+//3+//3+//3+//3+//3+/vz//v3//fz//fz//fz//fz//fz//fz//fv//fv+/Pv9/Pr++/j+/Pj9/Pj//Pj++/f++/f++/f++/f9+vb9+vX8+fT8+fT8+fT7+PP7+PP69/L79/L79/H69vH59e/49e339Oz38+r28ej07+by7uPy7ODw6drt5dTp4c7l3MXg1bjczqjUv4rOs27EoU+7lDzDpmjv3sTu49Xv5tjw59nx6Nvy6dz06uD17N/17OH17OL27eP47uT47+X37+X38eb58Ob68ef68ef78uj78uj68+j78uj88+j98tLdxITv1ZLVq1HgqjjgqTbhqjbhqzbhqjfhqjfhqjfjqjbiqzbiqzbiqjfgqTneqDreqTrgqjneqjvaqUDbqULdqD3gqjjfqTrctFv88cL/9+f+9ev+9ev99uv+9Or+9Or+9Or99Or+9Or98+n88+n88+n88+n88uj78ef78ef68ef68ef58Ob57+X68Ob57+X47uT47uT37uT27OL16+H16+H06uDz6d/y6d3x6Nvx5trz5tXo0KLGnEjLp1347s389ur6+O77+O/7+PD8+fH9+vL++/X9+vX++/b//Pf//Pf//Pf//Pj//Pj+/vj+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr+/fn+/fn+/fn///n//vr//vr//vr//vr+/fn+/fn//vr//vr//vr+/fn+/fn+/fn+/fn+/fn//vn//um8o2q0hCq2hSesgjLBmUy2iCy6iSe6iSe6iSe7iCe7iCe6iCiwhTPJoFG6iy+7iie6iSnGqGr69+X9/vn9/vz+//3+//39/vz9/vz+//3+//3+//3+//v+//3+//3+//3///3+//z///7///7////////////////////////////////////////////////////////////////////////////////////////////+/v7///////7///7///7///7+//3+//3+/v3+//3+//3+//3+//3+//3+//3+/v3+/v3+/vz+/vz+/vz+/vz//fz+/fz+/vz//fz//fz+/Pn+/fn+/Pj//Pf//Pf++/f++/f++/f++/f++/b9+vX8+fX8+fX8+fT8+fT7+PP7+PP79/L69/D59e749e348+z38un18Obz7+Ty7ODw6drs5dPn4Mvi2L/d0K3WwIjDpFm4kTO1iSC5iRi7iRW6lEDz3rfw5NTq383q4NDy6dzz6t3069/27OD27eH37eP37uT57+X58Ob58Ob58Ob68ef68ef68ef68ef78uj88+r98+n98+j158fhxYPv4JrTpknhqjfhqzbiqzbiqjbiqjbiqjbiqjbjqjbjqzXjqzXjqjblqjbkqjbiqjXiqjbiqjbiqjbjqjbjqzbjqzXiqjfdqkDhv3P+9M//9+j+9ev+9ev+9ev+9ev+9ev+9ev+9Or+9Or88+n99Or99Or88+n88+n88uj78uj78uj68ef68ef68Ob57+X47+X47+X37uT37eP27OL16+H16+H06uDy6d7x6Nzx59v159TlypDFmUDVtXD579T58+f59ev69u789/D7+PD9+vL9+vX9+vX9+vX//Pf//Pf+/Pf//fn//vr+/fn+/fn+/fn+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr+/fn//vr//vr//+/OuYmyhC23hyayhC62izy+kzy4iCi6iSe6iSe7iCe7iCe6iCi0hy/AlkfBlUK7iSm8iSq2k0708Nb+//r+//39//39//3+//3+//3+//3+//3+//3+//v+//3////+/v7+/v7///3///7///7///7///////////////////////////////////////////////////////////////////////////////////////////////////7///7+//7///7///7+//7+/v7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///3+/v3+/vz+/vz+/fz+/fr+/fn+/fn//Pj//fn+/Pj++/f++/f++/f++/f++/f9+vb8+fX8+fT8+fT8+fT7+PT8+PP69+/59u749Oz48uv38un18Oby7eHw6tzs5dPn4Mvf1rvYyqDLsW+5kzTAkB7FkBTFjxHGjxDEjQ60iCHx2KDy5tHw5NHw5dXz6t3069717OD27eD37eL47uT47+X68Ob68Ob68ef68ef78uj78uj88+n88+n88+n99Or+9ev/9ubx3bTkw3Lt03rYp0DiqjbiqzbjqzXkrDXkqzXjqjXkqzbkqzbkrDbkrDbkqzblqzbkqzbjqjXkqzbkqzbkqzbkqzbkrDbkrDXkqzbjqzbbqT7jvm/57Lz/+OP/9+v+9uz/9uz+9uz+9uz/9uz+9ev+9ev+9ev99Or99Or98+n98+n88+n78uj78uj68ef78ef58Ob58Ob57+X47+X37uT37eP27OL27OL06+Hz6d/y6d7x6Nz36NLfvXvFmUDewIHx59Dz7d328eX48+n69e379+/8+fH9+vP9+vT++/b+/Pb+/Pf+/Pj+/fj+/fn//vr//vr//vr+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vn//vr//vr//vr//vr//vr//vr//vr//vv//vr//vr///Xo17KxhS+5iCa2hiixhjK7k0S3hyq6iSe6iSe8iCe7iCe7iCi5iCq/lELAmU67iSu8iimuhjfv4bf+//j+//39//39//3+//3+//3+//3+//3+//3///7+/v7//////v/+/v7+//3+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////7///7///7///7////////////+/v3+//3///7+//3///7///7+//3+//3+//3+//3+//3+//3+//3+//3+//3+//39/vz+/vv+/fr//vr+/fn+/fn+/fn//fn//Pj+/Pj++/n/+/n++/f9+vb9+vX8+fT8+fT7+PP8+PP69/D59u759e358+z38un28Oby7N/v6dnq49Dk2sLazavLtHnBmjnHlyPJlRrLlBbMlRXSmhnUnBnCkBnmxnz15tDv5NTv5tfz6t3069/27OL27eH47+P57+X58Ob68Ob78ef78uj78uj88+n88+n88+n99Or99Or+9Or+9er/+OXu1aHbrErhrkDgqjjjqjbjqjbkrDXkrDXkrDXkrDXkrDXlrTblrTblrTblrDXkrDXkrDXlrTblrTblrTbkrDXkrDXkrDXkrDXkrDXkrDbjrDbdqj3atF7y5L7/+ef+9+z/9+3++O3/9+3/9+3/9uz+9ev+9ev+9ev99Or99Or99Or99Or88+n88+n78uj88uj78uj68Ob68Ob57+X47+X47uT37eP27OL17OL06+Hz6uDy6N746M/YsmfHnELdwYDk2brr487x69r17+L48+n79u37+PD8+fH9+vT+/Pb9/vX+/vj+/fn+/fn+/vj//vr//vr+/fn//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr//vr///v//vv//vr//vr//vr///n///n///n//vr//vr//vr//vr//vv//fz//vr//vr///j07c+xhzO5hye5iCa3izSzjEG2iCq6iSe7iCe8iCe8iSi8iSm8iSm/lEHAm1S5iiu8iye0iDDexpH+//f+//39//39//3+//3+/v7+//3+//3+//7+//7///////////////7///7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7////+//3///7///7///7+/v7///7+//3+//3///7+//3+//3+//3+//3+//3+/vz//fz//fz//fz+/fr+/fn+/fn+/fn+/fn//Pj//Pj//Pj++/f9+vb9+fX8+fT7+PP8+PP79/L69vD59e359Ov38er28Ob07N/v6Njo4Mzf1rrVxZjCo1bMnjDRniPXoSHhqSbmrSrmrSniqiLNlA3Uq0735srw5tfx6Nr069717N/27OL47uT67+X78Ob68Ob78ef88uj88uj88+n88+n99Or99Or+9ev+9ev/9uz/9+v/+d7tz5DdqT3jrDbjrDXkrDXkrDXlrTblrTbkrDblrDflrTbnrTbmrTbmrTbnrTblrTblrTblrTblrTblrTblrTblrTbkrDXlrTblrTblrTbkrDXlrDfcqULizZX/+uH++Oz++Oz++O3++O3/+e7+9+3/9+z99+z/9uz+9ev/9uz99Or99Or99Or88+n88+n98+n78uj68uf58ef58Ob68Ob57+X37eP37eP27eP17OL06+Hy6d346MrNoUnLnDbIplfWxZXg1bjp4szw6dj17+L38+n59+78+fH9+vT++/b+/Pf+/fn+/fn+/fn+/fn//vr//vr//vr//vr//vr//fz//vv//vr//vr//vr//vr//vr//vr+//v9/vz9/vz9/vz9/vz9/vr//vr//vr//vr//vr//vr//fz+/vz+//39/vz//vr//vr//vr59d+9l062hym6iCaxhC22j0S3hyq7iSa7iSa7iCe8iSi8iSi8iSizhzPRrGW5iSy8iye7iivGqGb///H+//z+//3+//3+//z+//3+//3///7///7///////////7///7///7///7+//7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///7///7+//7+/v7+//7///7///7///7///7+//79//3+//3+//39/vz+//3+/vz9/vz9/vz+/vv+/fn+/fn+/fn+/fj+/fj//Pj//Pj++/f9+vb9+vX8+fT8+fX8+PT79/H59u749ez48+r28ef07eDw6dnp4Mze1bjTwI3Lp1LYpjHiqyzlrSvlrSrlrSrkqynfpR7OkgfJmTHy27D06Nfy6d306+D27OH37eP57+X57+X78Ob78ef78ef88+n88+n99Or99Or99Or+9ev+9uz+9+z/+Oz/+OX66Ljftl7hqznmrDflrTblrTblrTblrTblrTblrTblrTbmrjforjforjforjforjfmrzbnrjfnrjfmrjforjforjfmrjfmrjflrTbnrTbnrTjmrTflrTbeq0Hx26D/++H9+e7++e79+e79+e79+e7++e7/+O3++O3++O399+z+9+z/9uz/9uz+9ev+9Or99Or99Or88+n78+j78uj68ef78ef58Ob47+X37eP27eP27OL06+Hx5tXv2rPMnDzPnSvEmTHHql/XyJ/j2b7s5NH07d/28uf69u38+PD9+vT++/b+/ff9/fn+/fn+/fn//vr//vr//vr//vr//vr//vr9/vr9/vr9/vr+/vr//vr//vr//vv+/vz9/vz8//3+//3+//39/vz9/vz9/vz9/vz+/vz//fz+/vz+/vz+/v3+//38/vz9/vz9/vz9/vv8+efLrW2zhy27iCevgSq5kUO4hyq7iCe7iCe8iSi8iSi9iSi9iSe3hyrClD28iim9iye+iym+mlH58tv///v///7+//3///3///7///7+/v7///////////////////7////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7///7///7///7+//79//3+//3+//3+//39//39//3+//39/vz9/vv+/vr//vr//vn+/vn+/fj+/fn+/Pj//Pj++/f++/b++/b9+vX9+fX8+fP7+PH69+/49ev38un17+Tz7N3r49Di2L7bxIzWrk3irjLnrizmrivlrSvkqyviqSranxzKjAa9iRvixYb36tTz6d716+H37eP37eP57+X68Ob78ef78ef88uj88+n99Or99Or+9ev+9ev/9uz+9uz++O3++Ov89tjdu3Peqz7krTbmrDjmrTfmrTbmrjfmrjfmrjfmrjfmrjfnrjborzfprjfprjforzbosDforzfnrjbnrjforjfpsDforzfnrzborzfprzfprzforjfnrjfjr0HnxXj+99X++u7++u/9+e79+e/9+e79+e7++e7++e7++e7/+e7/+O3/+O3+9uz/9uz+9ev99Or99Or99Or98+n88+n78uj78ef58Ob47+X47+X37uT27eP16+L569js1KbOnTjWoSfRoCnGokXNuYXe07Pq4Mvy69v28eX69ez7+O/9+vP/+/b//ff+/Pj9/Pj+/fn+/fn//vr//vr//vr//vr//fv+/vr9/vv9/vv9/vr//vr//vr//fv+/v3+//38//3+//3+//39/vz9/vz9/vz+//3+/v3+/v3+//3+//3+//3+//39//3+//39//39//z//vDTwIyyhjG7iCa1hyu1ijW6hym7iCe8iSi7iCe8iSi9iSe8iSe8iSi8iim9iye9iye+jCi6kULo3rv///j+/v7+/v7///7///7///3///7///////////////////////////7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7///7///7+//3+//3+//3+//3+//3+//3+//3+//39/vv9/vv//vv//vr//vr//vr//vr+/fn//fn//Pj//Pj++/f++/b++/b9+vX8+fT8+fH69+759ez38uj17+Pw6Nfq4cnnzo/dsELmsC3orizmrivlrSrjqivgpyrTmRy+gwiveQ+7lEz46M7z6d727OL37eP47uT57+X68Ob78ef78uj88+n99Or99Or+9ev/9uz/9+z/9+3+9+z++O3++er69c3WrlnjrTjlrTblrTfmrTbnrjfmrjfnrzfosDfnrzfosDjpsDfpsDfqrzjqrzfpsDfpsDbpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfprzforzjmrzrcrUn04qv//OX/+u3++u/++fD9+e/9+e79+e79+e7++e7/+e7++O3++O3++O3/9+3/9uz/9uz+9ev+9ev+9Or99Or88+n88+n78ef58Ob47+X37+T37uT27OL77dXmy5PTojbmry/hrS7TqULNtnff0q/q4Mrz69z38eX59Ov7+O/9+fP++vX++/b++/f+/fn+/fn+/fn+/fn//vr//vr//vr//fz//vr+/vv9/vv9/vr//vr//vr+/vv+//3+//z8//39//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+/v7+//3+//3///be0ay1ijm7iCa6iCi4iCq7iCi8iSi8iSi8iSi8iSi8iie8iSe9iii9iye9iye/iybBjSe8kTrfz5////X+/v7////+//7+//7+//7+//7///////////////////////////7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////////////////////////+/v7+/v7///7///////////7///7+//3+//3+//3+//3//v3+//3+//3+//3+/v39/f3//fv+/fr//vr//vr//vr//vr+/fn//fn//Pj//Pj//Pf+/Pb++/b++vT8+fH69+/59e348un27uDx6NTt1JHhsTzpsSzpsCznryvlrSrkqivepivQlyOvdgyXYwd8UQ/s2bz16tz16+H37eP57+X58Ob68ef78uj88+n99Or99Or+9ev/9uz/9uz++O3++O3++O3++O3++ur59MrUq1HkrjjnrTbmrjfmrjfnrzfnsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDbpsDbpsDfpsDfpsDfpsDfpsDfpsDfosDfkrjzkvmr257j/9+D+++7++u/++u/++u/++u/++u/++u/9+e79+e7/+e7++O39+O3+9+3/9uz/9uz+9ev99Or99Or99Or88+n68ef68ef58Ob37+X37uT17OH968rYt23bpzLqsy7sti/fsUHYvHjj1rTr487z7N728eb49ez69+/8+fP9+fT9+vX++/f+/Pj+/fn//vr//vr//vr//vr//vr//vr//fz//vv+/vr9/vr9/vz9/vr+//z+//3+//v+//39/vz+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///nu5Mm3j0O7iCe8iSi8iSi8iSi8iSi8iSi8iSm8iSm8iSm8iCm8iCm+iSjBjSnIkizPmTDKnkPgypT//vP////+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////////////+/v7///7///7///7///7+//3+//z+//v+//v9/vz9/vz9/vz9/vz9/vz9/vz9/vz+/vv//vr+/fn+/fn//Pj//Pj++/f++/b9+vX8+fL7+PD69u748+n27+D23qTgtEXptC/rsyzqsSvoryvlrCvepi3CiyOhbRKXZRR8Tw7EqHz769T27OL37eP57+X68Ob78uj78uj88+n99Or+9ev+9ev/9+z++O3++O39+O39+e79+e7+++v588bUqlDkrjnmrjfnrzfosDfosDfnsDfpsDfpsDfpsDfpsDfpsDfpsDfqsTjqsTjpsDfpsDfpsDfpsDfpsDfpsDfnsDforzjpsDfpsDfpsDfpsDfpsDfpsDfpsDfpsDjkrj7Uq1Tv4bH+/ev9++79++7+++7++u/++fD++u/++u/++u/9+O//+O/++O7++O3+9+7/9uz99+z99uv+9ev99Or88+n88uj88uj68Of57+b47uT57eDw2KjRpETgqy/psi3tti3jtDvkxHXu373v59X17uL28uj49e37+PL8+fT9+vX9+vb++/f9/Pj+/fn+/fn+/fn+/fn//vr//vr//vr9/vz9/vz+//3+//3+//3+//3+//3+//3+//39/vz+//3+//3+//3+//3+//3+//3+//3+//3+/v7+//7///7+//3///7+/v7///////////z++em9m1a6iCi8iSe8iSe9iia8iSe3hCWyfiOveyGseB+ochymcRuteSG2hCvAjzbNoErWt3by69H///n///////////////////7+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////+//7///7+//3///7///7///3///3///3+//3+//3+//3+//3+//3+//39/vz+//z+/vv9/vr//vn//vn+/fn+/fn//Pf++/b8+fT8+fL7+PD69u358+j98MjgvWXnszLrtSzrtCzpsSvmrivfqC63ghylcRibahqHWRSsh0ry3bz27OH47uT57+X68ef78uj88+n99Or99Or+9ev/9+z++O39+O39+e79+e79+e79+e/+++z588jWq1LnrznosDforzjpsDfpsDfosDfpsDfqsTjqsTjqsTjqsTjqsTjqsTjqsTjqsTjqsTjrsDjrsTjqsTjqsTjpsTjqsDjqsTjqsTfqsTjqsTjpsDfpsTjqsTjqsTjpsDjgrkb47Kj+/t/++97++eP//O/++/D9+vD9+/D9+u/9+u/++fD++e/++e79+O79+O3/+O3++O3+9uz+9ev99Or98+n78ub78eX68eX58Ob57+T979rfv4THmDTaqC3nsC3tti3ltDnqx3T158by69718Ob28+v59vD7+PP9+vX9+vb++/f9+/f9/Pj+/fr//fv+/fv+/Pr+/fr//vr//fv9/vz+/vz+/vz9/vz9/vz+//3+//3+//3+//3+//3+//3+/v3+/v7///7///7+//3+//3+/v7+//7///7///7///7///7////+///+//7///7///bfwonCkjXIkyvIkizCjCm4gyOreBqseR20gSO4hCe3gyewfifEmEzgxpPo2bPz58b99t////f///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////7///7///7+//7+//7///7///7///7///7+//3+//3+//39/v3+//3+/vz+/vv//vr//vr//vr+/fn+/Pj++/f9+vb9+vX9+vP7+PD69e389eL66LbhulvlsjXrsy7qsiznryziqy64gxyqdhyebRqPXxWjdSnUt4f77tv57uP57+X78uj88+n99Or99Or+9ev+9uz++O3++O39+e79+e7++u/++u/9++/+++7899neumzmrzrpsDfqsDjpsDfpsDfpsDfqsTjqsTjqsTjqsTjqsTjqsTjqsTjqsTjqsTjqsTfssTfrsTfrsTfqsTfqsTjqsTfqsTfqsTbrsTjqsTjpsTjpsTfrsTjqsTjqsTjkrzzbsE7o0IXu2pjexo389dH//uv9/PD9/PH9+/D9+vD++fD++u/++e/9+e/9+e/++e7++O3+9+z/9uz+9ur+9On58OT88+f78ub58Ob67+P/8M2/oGSphjrNni/jrS7rtC3gsjzr0In67tb07+X38uv49O/59vL7+PT9+vX9+vb++/f+/Pj+/Pj+/fr//fv//fz+/fz+/vv+/vv//vz+//3+//3+/vz9/vz9/vz+//3+//3+//3+//3///7+//3///7////+//7///7///7///7////+//7+//7///7///7///79/v79/v7+//7///7///r17s7Kp2TFmkO/lEG/l0/Fm1CzhC+7iCq8iSm9iim9iim7iSu7lEf38dX///n////////////////////////////////+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//3+//3+//3+/v7///7+//3+//3//fz//vr//vr+/vr+/fn+/fn//Pj//Pf++/b8+fT8+PP59vD49Ov89N/56bnlwGffsEHksDTmry/hqy66hB2ueh6gbxqTYxepeCWsiEb76cn57+L68Ob78uj88+n99Or+9ev+9ev+9+z++O3++e79+e7++fD++u/++u/9+/D9++///Orv2p7hr0TosDnqsDjqsTjqsTfqsTjqsTjqsTjqsTjqsTjrsTjqsTjqsTjrsjjrsjnrsjftsjftsjfssjfqsTbqsTjrsjfssjfrsjfssDjqsTjqsTfrsTbssTfqsTjqsTjpsTnmsDvisEHgumHbuGzdxo/z7c/+/u/+/fH+/PH++/D/+vH++fD++fD++fD++fD9+e7++O3++O3++Oz/9+v+9un99On88+n78uj68eb88d3x26yYfkhyWyrDmTXaqC3frTHctVX25rj58uL28ur38+359PH69/P7+PT9+vb9+vb++/f++/f9/Pj+/fn//vr//fz9/vz9/vz9/vz+//z+//3+//3+//3///3+//3+//3+//3+//3///7+/v7///7///7////////+/v7///7////+/v7+/v7///////7///7////9/v7+/v7///7+//3///z+/fT07tDu4LHt5L3y683z36yxhje7iSq9iim9iim9iyi9iyi2iTLVw5n///T///////////////////7///7////////+///+/////v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//3+//3///7+//39//39//3+//3//vr+/vr+/vr//vr+/fn//Pj//Pj/+/f++/b8+fT69/L59fD59Oz79eb88dPu26LlvmTer0HapzS5hSCxfR+icBuWZhqufCSrfSnWuYf77tv68OX78uj88+n+9ev/9uz+9uz++O3++e79+e7++fD++fD9+/D9+/D9+/H8/PD+/e/89c7gu2jlrz7qsDnqsTjqsTjqsTjosTjqsTjrsTftsjftsjfrsjfrsjfrsjftsjftsjfusjntsjjtsjftsjftsTntsjjssjfrsjfrsjfrsjfrsTbssjfrsjfssjfqsTjstT/nsD7irkDiwHH26bnz58Hy6sb//uf/++T+++n+/O/9+/H9+/D++vD++fD++fD++u/9+e7++e7++O3/9uz+9ev99Or99Or88+f+8uHx3bngw4lqThNROQa3kDHPojXTrE3v3aL79eL49ev49e749fD59vL7+PT8+fX9+vb++/f9/Pj9/Pj+/fn//fr//fz9/vz9/vz9/vz9/vz9/vr+//3+//3+//z+//3+/v7+//3+//z+//3+//3+/v7///7///7///7///7+/v7///7///7///////////////7///7///7///////////////////////7///v///n///r///ft2rCwhTW8iiq8iym9iyi+jCi9iye5iizJqmr8+OP//v////////////////////////7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+//3+//3+//3+//3+//39//39/vz+//39/vr+/vr+/vr//vr//vr+/fn+/fn//Pj++/f9+vb8+fT69/L49fD49e769Ov89eL78dD46Ljiw3y1hzCzgCKkch2YaByxfyWygCSyjEju3Lb98eP88uj98+n+9ev/9uz++O3++O3++e/++fD++fD++/H9+/H+/PH+/PH9/fL+/vL//+v16LThsk7osDvqsTjqsTfqsTfrsjfssjftsjftsjftsjftsjftsjftsjfuszjuszjuszjuszjuszftsjftsjftsjftsjfssjftsjfssjftsjftsjftsjftsjfrsjjruEfwwlvgt1vw2Z7+/N3//t/o2abqz43jyInr3rf9++v+/PD+/PH/+/H++vH9+vD++fD++u/++u//+O3++O3/9uz99ev99On+9OL047zSsG7DmUKRZwx/WgipiDfNsWvx4rP89uD49u349fD59vH69/P79/X8+fX8+vb8+vj9+/n+/Pr+/fn//vr//fv//fz//fz//fz+/vz+//z+//3///7///7+//3+//3+//3+//3+//3+//3///7///7///7+//7+/v7+/v7///////7///7//v////////////////////////////////////////7///////////////////v27s2uiD67iim9iyi+jCi+jCi+jCi9jCrGn0/07dL///////////7////////////////+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7+//3///7///7///7///7///7+//39/vz9/vr+/vr//vr//vr//vr//vr//vr//vr//fn9+vb9+vX7+PT7+PP69/L69vH59vD49e799+fs3rK0iju1giOlcxyaahyzgCW0gSOmeyzRtID98eD78uj99Or+9ev+9+3++O39+e79+e/++fD/+vH9+/H+/PH+/PH+/fH+/vP//vP///P//N/ozIPjr0DrsTjrsTfssjfssjftsjftsjftsjfuszjuszjuszjuszjuszjvtDnvtDnvtDnutDjuszjuszjuszjuszjuszjtszjqsTvssjrusjftsjftsjfssjfnsT3ww13755D85aL+88P//9ncyZHJqV3WvH79+Nb//u/+/fH+/fL+/PH++/H9+/H++fD++vD++u//+e7++O3/9+3+9uv+9ef98tPcvXrasFqufhilcwSTaAq2o3L78dT9+On59vH49/L69/P69/P7+PX7+ff8+vb8+/f9/Pn+/Pv+/Pv+/fn//fr//fv//fz+/vz+/vz+//z+//z+//3+//3///7///7///7+//3+//3///7///7///7///7///7///7+/v7+/v7///7+//7///////////////////////////////////////////////////7///////////////37+enEo2S8iym+jCe+jCi/jCjAjSbIlS/NpVDz7ND///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///////7///7+//3+//3+//3+//3+//3+//3+/vv+/vv+/vv+/vv+/vv+/vv//vr//vr//vr//fn+/Pj++/f9+vb9+vX8+fT8+fT7+PP++u3k17Gxhzq1gyShcRqebx20giW1giSleifQsnv89OP68ef88+n99ev99+z++O3++e7++fD++fD++vD++/H+/PH+/fL+/vL///P//vT//vT//+336bzjtVTqsTztsTjtsjftsjfuszjuszjuszjuszjuszjuszjvtDnvtDnwtTnvtTnvtDnvtDnvtDjutDjvtDnvtDnusznoskLvyWztv1btsznuszjuszjtsjftsjjnsT7gs07esVHZsVrt1I7kz5P78cH8+t3//+7//vP+/fP+/vL+/fH+/fL++/H++vH9+u/++u/++e/++O3/9+3+9ev/9dzozpfbs1zGmTWodQaueAKechGroIj7+PL6+PT7+PT7+fX8+fX7+vb7+vf9+/r9/Pn+/Pn+/Pr//fz//fz//vv//fz//vz//vz+//3+//3+//3+//3+//3+//3///7///7+//3///7+//3+//7+//7///7///////7///7///7+/v7///7///7+/v7//////v////////////////////////////////////////7///////////////7//vjl0qTGmUDIli3JlSrMlyvVoDPUoz/avn39+eX////////////////////////+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///7////////+/v7///7///7///7+//3+//3+//3///7+//3+//3+//3+//39/vz+/vv//vr//vr//vr//vr//fn//Pj//Pj++/f++/f9+vX+/O/e0aevhTa0gyadbhiicx+0gye0giagdCXYvIb++un68ej88+n+9uv++O3++O3++e/++fD++fD9+/D+/PH+/fL+/vP///P///P//vT//vT//+/+88/pvmXvt0TtsjfuszjuszjuszjvtDnuszjuszjuszjvtDnvtDnvtDnwtjnwtjnwtjnwtjnwtjnwtjnwtTnwtTnrtD7rv1/+8LTsynTtszrvsznvtDnuszjuszjtsznsszvrsjvpsD3gs1Hmyoj//eb//vL//vP//vT///P///P///P+/fL+/PH9+/H9+/D++/D++u/9+O3/9+3+9ur15brUrmHar1SvfQ6wegGzfAGkdQ+dkHX9+vT7+vf7+vf8+vn8+/f8+/f9+/j+/Pv9+/r//fz//fz//fz//fz//v3+//3+//3+//3+//3+//3+//3+//3+//3+//3+//7///7///7///////7+/v7////////////////////+//3+//3///7///7////////+/f////////7///7///////////////////////////////////////////////779+Hbvn/QokTZpz/bqD/Wp0LXsmH179D///n////////////////////+///9/////v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v////////7///7///////////////////7///79//39//7+/v7+//3+//7+/v3+//3+//3+//39/vz9/vv9/vr//fz//vv//vr//vr+/fn+/fn+/Pn+/Pn//vHWyJyugzK1hCmZahapeSK1hSevfyaWahvPrW7u5cP++Of88+n/9ev/+O3/9+7++O/++fD/+vH+/PH+/vL+/vL///P///P//vT//vT//vT//+zr3K3jtFDrsjruszjtszjvtDnvtDnvtDnvtDnvtDnvtDnvtTnwtjnwtTnwtTrwtjnwtjnwtjnwtjnvtjnutTzqtD7gsEzq2Zj48sXgu2futT3vtTrvtDnvtTnvtTnvtDntsznrsj7os0ffu2v16r3//+///vT//vT//vT///P//vT///P+/vL+/vL+/PL++vH++fD++e/8+O3/9+3/9+j457rbtF63hxmyfAK2fwG4gAGqeA+XhF/8+O79+/r9+/r+/Pv+/Pv9/fz8/fv9/vz//fz+/vz9/vz+//3+//3+//39//39//3+/v7+//3+//3///7///7+/v7///7///7///7+/v7////+/v7+/v7////////////////////////////////////////////////////+//7///////////////////////////////////////////////////////z//e/z5sTfy5rdyZXu37j++uf///r//////v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+/v7+//7+///+/v7+/v7///7///7///7+/v7+//39/vz9/vz+//z+/v3+/vv+/vr//vr//vr//vr//vr//vn//u/VxJCvhDGzhC2UZhKvfyW3hiiqeyOfcRyvgzG1kU/t3rj+9+f+9ev/9+3/+O7/+u/++vD++/H+/PL+/vL///P///P//vT///P//vT+/vT///D48s7itVLtsjruszjutDnvtDnwtTnwtTnvtTnvtTnwtTrwtjnwtjnwtjnwtTnwtjnwtjnwtjnvtjrrtD7ktVLt0Ifz5rf49Nn58tD246Hks0nttTvwtjnwtTrwtTnvtTnqsj7gtlzrzoz888z//ur///T//vT//vT///P//vT//vT//vT///P+/vL+/PH++/H9+vH8+u/8+e7++Ov99tfpy4bDlCyzfgS4fwG6gQG7ggCuew2Uf1H18uX+/fv9/fv8/fv9/fv+/vz+//3+//3+//3+//3+//3+//3+//3+//3+//3+//3///7+//3+//3///7+//7+//7///7+/v7+//7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3///j///P///L///b///3///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///7///////7///7+//7+/v7+/v7+//7+//3+//3+//3+//z+/vv+/vv///r///f89t/e0a3z5bzXvHywhS6yhS6PYhC2hSi3hieldR2ygiq3hiezhCmykE3v5MX89+399ur++O3++u/++u/++/H+/PL+/vL///P//vT//vT///P+/vT+//X8/O/6+NnmvF7sszzvtDnvtTnvtTnwtjnwtjnwtjnwtjnwtTrwtjnwtjnvtjnwtjnwtjnxtjnrtD7tvljszYX56bv//+v///b///f9+uP/9LjjtUvttTvwtTrttD3ttD3ns0LkvWf99cj//+r//vT+/vf+//b///X//vT+/vT//vT//vT//vT//vT//vP+/fL+/PH9+/H9+e/++ur778jnyIG/kCi3gAe6ggG8ggG8gwC7gwKufhCNeEXr6Nr+/v39/v39/v3+//3+//3+//3+//3+//3///7+//7+//7+//3+//7///7///7+//7+//3+//3+//7+//3+//7///7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7///7+/v7///7///7///7////+/v7+/v7+/v7+//3+//3+//3+//3+//z+//n59uXHr3uviDuzjUG5kkW0hyy2hiyicxy4hyi4hyijchq2hiy5hye3hieyhzHbzKL//PP8+O3++O3++u/++e//+vH+/PH+/vL//vT//vT//vT//vT+//X+//b8++306cbxyG3qtD/wtTnwtjnutjnwtjnwtjnwtjnwtjnwtjnwtjnwtjnwtjnwtjnwtjnxtTnktU3y35///Ob//vX//vj///r//vf59dvjw3jqtD/ttTzouE70z3PhtlrmxHT78Mf//vD+/vf//vn+/vn+//f+//b+//b+//X//vT//vT//vT//vT//vT+/vL+/PD/++z/+eX/+tnbt2zClC6zgA6wfg2rew2meA+idhKheBqVdCeEdVHn5Nr///7///7///////7///7///7+//7///7///7///7////+/v7////+//7///7+/v7///7///7+//7//v/+/v7////////////////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///7///7+//3+//3+//3+//3///ns5Mixjkm3hyqqeyKgcRy4iCq6iSi5iCi6iCi5hyifbxe2hi25iCe6hye2iTLfz6X//vf+/Pb99+/9+O7++u//+vH//fL+/vL///P///P//vT+//X+//b+//b+//X//eTtyHXos0HwtjnwtjnwtjnwtjnwtjnwtjnxtTnxtTnxtTnxtTnxtTnxtTnxtTnwtjnrxGj/+tb///T///n///n///j//vT79NTjvW7qs0Dks0ft14/9+9Ls3Lb799n///T///n+/vf+//b+/vT///T///b+//b+//b//vT//vT//vT//vT///P//fH//Ovy6Mj76brr0ZiyijOVbRKFYRCIaiWVfkSkkWavo4XBuaTY0sPx7+j+/vv+//3///7+/v7///7+//3+//7+/v7///7+/v7//////////v////////7///7///////////////////////////7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///7+/v7///////////7///7///7+//3///jn372uiD65iCmndx2mdx64iCm6iSe6iSe6iSe5iCmcbRa1hi65iCi5hyi3izbj1Kz//vn//vr+/Pf8+PD9+fD++vH+/fH+/vL//vT//vT//vX+//b+//b+//b+//b//+7uzYTotEjwtjnwtjnxtTnxtTnxtTnxtjnxtzrytjrytjrytjrytjrytjrytjrytjrptkrw1479+eD///P///L8+ej89+b168TawH7ixHLy4Zj067j58M7+/Or///b//vn///f///H589Ty6sDy5sL+/e3+//b+//b///b//vT//fX//vT///L//u3z577ixYbZuXfEr36sn33IvaHm4Mnu7Nz08uX6+fH+/vn///3///3///7///7+//3///7///7+//3///7///7+/v3+/v7+//7///////////////////7+//7+/v7///////////7///7//v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+//3///jl3LSshTi4iCuicxqtfiK5iCi6iSe6iSe6iSe5iCibbRS1hi65hyi4iCm2jDrm2LL+/vr+/vr//vv+/fj8+fH9+fD+/PH+/vL//vT//fX//vX+//b+//b+//b+//f///H246XmtU7wtjnwtjnxtTnxtTnxtTnxtjnytjrytjrytjrytzrytjrytjrytjrytjrvtT3ms0jtzYL98cHz5bft2anz6Mr/9sn/97v65JLqxWzZt2vj0qj///L///r+//f//ub257Lgu2rSr2Lr4Lr///H+//f+//b+//b//vT//vT//vP//+7/+t3jzZvmyo3r1qf8+eT///n+//z+//7+//7///7+///+//////////////7///7///7///7///7///7+/v7///////7///////////////////////////7///7///////7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/////v////////7///7///jm1KWuhTW5iCycbBa2hSe7iii7iie6iSe6iSe5iCiabBS1hi65iCi4iCq3jz/q3rn9/vr9/vv+/fz+/fz+/fj9+/P9+/H9++/7+uz59uf08N77+OP69Nv//un///H//+r15KDkskjxtjnwtjnytjnytjrytjnytjrytjrytjrytjrytjrytjrytjrytjrytjrytjrytjvrtUHjt1nxy3X22JD+/eDx5sPfxofgsk/stUPzy2v36bj///P///L999XryoPks0zlsUbryn3//ur//vb+//f+//b+//b//vT//vT//u/y7tTk17Lx5Lvx48L+/O7///v///7///7///7///7///7///////////////////7///7///7///7////+/v7+/v7///////////////////////////////////7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9//////////////////////jky5mwhTS5hy2ZahW5iCm7iii7iie7iia6iSe2hieabBW1hy26iSi5iSu4kUPv4r/9/vv+//3+/v7+//3+//v+/vn9/PP69+n7+un59+L08Nf26sjm0Jzz5rT47MX77LvpwGLrtEDwtjnxtTnytznytjrytjrytznytjrytjrytjrxtjzvtT3utT3utD7stULttUPwt0LttT/ntk7twWDmxXn9+Nz68M7966jjs07ltE3jwXLz4bn///D58s/lw3Pos0XvtDvouVf67Lj///L///X//u/+/u/+//T//vT//vP+++bz683y6cz38Nr+/PP///z///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////////+//jcwIuzhzK5hy2aaxa6iSm7iii7iii7iii6iSiygyacbha2hy26iSi4iSq4k0fz58b+//z+//3+//3+//3+//3+//3///v+/fb+/PP//vL///L//+z66LXWsV7pu1rquVDrtT/wtjrwtjnxtTnxtTnytjrytjrytjrytjrxtjvvtT3suEjvxV3xw1jwwVn71oL114v003npu1fp0IL345HnwWn87rXv04rkt1jht2D44qv//eb//+///drkw3jps0PwtTrwtDjhs1T06rn///H49Nzo2avr3LH///D//e7//unz7dP17NP49ej///r///7////////////////////////9/////////////////////////////////////////////v///v////////////////////////////////////////////////////////7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///fVuH61iDG5iS6bbBe7iSm7iSm7iii7iii5iSmugCaebxe4iCy6iii4iSq5lUv27Mz+//z///7///7///7///7+/v7///3///z//vr+/fb//vT//vL899ffwXvhskvqsz7vtTvwtjrxtjnxtjrytjvxtzrxtjvwtTzvtT3rtUXkt1b00XzyzXDuvk/uvE7oxXX677j13JviyXz866HowmfouVHlvWTbuWvmyYn46sL+/er//u/79c/tzoDruU7wtj3xtTnwtTrnvWL788v///H069HRwZnz68r//+379tfk17Dl2r77+Oz///z////////////+/v7//////////////////////////////////////////////////////////////////////////////////////////////////////////v///////v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////bNrm+3iS+4iC2dbhi7iCm8iSi7iSi7iii5iSmqfCWhchq6iCu7iSi4iSu6l0/78NP///z///7///7///7///7+/v7///7+//7///7///z+/vj+/fX//vD/+9nw3KPu0YXvwV3qtEDwtjvxtjrxtjrwtjzntkvvyXTty4Dy2Jj97rr88LP20nnqulDovmTrzo/06briypDs1ZT35Jvz0Xvyz3n02pj99s7//+z///T//uv34avpwGnrtkfxtjvxtjrvtTvotEbhwn348tn///X//+///+n//+bx7M7dzqzv5Mf///P///3///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////bGo2G6iS23hSqhcRq7iSm8iSi8iSi8iii6iSmoeSKldBu8iSq8iSi4iSu5mFP+9Nn///3///7+/v7+//7+//7//v/////+/v7+/v7///7///3///r//vb+/e/9+eH/+dD3247rw2fqvFTos0PqtUHotUjx0Yj++dr/++j//fD//u/s3LPgwn7v0on466706rj69Mj05K/746Xs043xz4Dt0o7//d39+Nv58tD678Tu1ZLnt1DutT/ytjvxtjzrs0DmuVnu0Ir89NH//vH///X//u/59uHq4sbu4sT6+On///j///7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////W+mVO7iiu1gyandh27iim8iim8iym8iym7iSi0gya0gyS8iSm8iSi4iSu5mVf/+eD///7////+/v7+//7+//7///////////////7///7///////////z9++/r3r7h0Zz02ZTp0Iz576jw0Hvrw2roxXr/9dD+//f+//v///z+//v///T69eH79tjs2KXu26f568Dx4rX55rb12pnxx27mwGn77bjsy33luFXsuUvstkLvtj3utT7rtEHls0npwWr36r7//un///T///P7+ejo4cbq4cL18d////n///3///7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////vK2kke8iyq5hia1giS9iii9iye+iym9iym8iim9iSm8iSi9iSi9iie9jC26m1z//eb///7////////////////////////////////////+//////////////39+/H07NDeyI7bt2fkx3j06bP++tr9++X///P+/vr+//3+//3+//3+//z///v+/vj9/PD//vD9++z79+f89+Do16jyzX3jumHt04ryzXjnt07stkHttkDstkbovl/mzIf56r7+++P///L///X59ubx6dDj28P49OX+/fb///z////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//////7/+ee3kEK9jCi+iyq9iim9iye+jCi+iyi9iyi8iym+iim+iifAiyXIkyvKlzS+omb//+3///7////////////////////////////////////+/v7+/v////////////3///j//eb57sfl0J3Qu4vt4b//++f///b///r+//v9/vz+//3+//3+/v7+//3+//7///7///3///z///j//uv78c7z57/47sr98MTrzo7ryX/w0Irz3J7988L//9///+3///f+/fj59+707+P38+X///T///z////////////////+///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//////758d62j0K9jCm+jCi+iym9iiq7iCm2hCaygCSyfyW5hSjAjCzJljXMnT3In0zh0Kj///b//////////////////////////////////////////////v////////////////////7///3///b//uv37dLx6tf28+j6+vH+/fb//vn//vn//vr+/vv9/vz+/v3+/v3+//7+//7+//3+//3+//3+//z+//z///f//+///+v//+78+enw69nt6dv7+vL//vv//vv///z///3////////////////////////////+///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////79++7Fp2i6jjTAjiq7iCewfR+reByufCKndh+aaRinei+2jEPRrGbkxobv37L9+uv///3///////////////////////////////////////////////////////////////////7///7///7///3///z+/vr6+fP7+/P7+vL6+fH7+vL7+fT+/fn9/vr//fz+/vv9/vv9/vz9/vv+/fr9/vr9/vr9/vz9/fn7+/T7+/T+/vf+/fT+/vj///z///3///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z59d/bwITAlDu8jDC1hCS8iim9iym8iSq0hjLmz6H//Oj///X///b///n+//3////////////////+///+//////////////////////////////////////////////////7///////////////////////7///7///7///7///7//v3+/fz+/v3//v3+/v39/fz+/Pv7+/b6+PP7/Pf+/vz//v3+/v3+/v3+//7///7///7////////////9/////v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//////////7///r8+ebx6L/fw4O5ii2+jCi+jCi+iyi6iSy2lVHr4sb///3///////////////////////////////////////////////////////////7//////////////v/////+//7///////////////////////////////////////////////////////////////////////7///3///3///////////////////7///////////////////7///////////////////////////////////7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/+/////////////////////v7/++jCp2+5iy6/jSm+jCi+jCi+jCm1hy7Ir3////f///7//////////////v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///////////////////v////////////////////7////////////////////////////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////////////////////////89d7An2C6iy2/jSm+jCi/jCjEkCrCkjHHq3P///T///7//////////////v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///////////////////v////////////////////7////////////////////////+///+//////////7//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////OzGrnq3izG/jSnAjCfFkSjQnDHImTjhypj///j///7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v58tvHqWfCkjfOmS/ZpDfUojvUtGz48db///3////9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//////////////////////n489bYunzQplDQp1DWtnD17s7///b+///////9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//////////////////////////z//ev978n+8s3//+r///r+///+///////+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/+/v7///////////////////3///z///z///3///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///////////////9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///////////////+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7//////////////////v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
! Sécurité
!! Mots de passe
Quelques liens pour [[estimer leur robustesse|https://nothing2hide.org/fr/verifier-la-robustesse-de-votre-mot-de-passe/]] simplement , ou [[calculer plus précisément|https://www.ssi.gouv.fr/administration/precautions-elementaires/calculer-la-force-dun-mot-de-passe/calculer plus précisément]] leur force.
Une méthode parmi d'autres pour les définir est [[celle suggérée par la CNIL|https://www.cnil.fr/fr/generer-un-mot-de-passe-solide]] , elle consiste en:
* choisir et mémoriser une phrase d'au moins une douzaine de mots (avec au moins un nombre, une majuscule, un signe de ponctuation ou un caractère spécial/ponctuation)
* prendre la première lettre de chaque mot, garder les chiffres et la ponctuation
''Exemple'': si la phrase est " C'est a 14 ans que j'ai arrêté d'aller chez le coiffeur ! ", le mot de passe correspondant sera " C'ea14aqj'aad'aclc! "
!! Au collège: le réseau pédagogique (Scribe)
Le réseau pédagogique du collège est une inter-connexion des ordis du collège permettant de disposer de certaines facilités (espaces de stockage, documents, applications, etc…)
Ce réseau pédagogique est ainsi accessible à tout le monde (élèves, enseignants, personnel), les ressources disponibles sont évidemment adaptées à chaque rôle (les élèves n'ont donc pas accès aux ressources profs) mais uniquement dans l'enceinte du collège (pas d'accès extérieur, depuis internet).
La connexion au réseau pédago (gérée par ''Scribe'') se fait par identifiant et mot de passe. Les identifiants sont en principe au format “prénom.nom” et un mot de passe est obligatoire.
L'environnement de “bureau” informatique offert par Scribe permet de retrouver le même profil sur tous les ordis du collège. Ci-dessous un petit résumé des disques réseau et de leur visibilité:
[[Les disques réseau avec Scribe|http://dupatynum.go.yj.fr/dokuwiki/lib/exe/fetch.php?media=les_repertoires_sur_scribe.pdf]]
(en cours de rédaction pour expliciter:
* les disques réseau
* les fonctionnements par groupes
* la distribution/relève de documents à la classe ou au groupe
* etc…
)
!! Les grandes lignes (numériques)
Déjà, il faut définir ce que l'on nomme “Environnement numérique”.
En gros et vite fait, disons que c'est tout ce qui peut être accessible par le biais d'un ordi ou assimilé (ordi, smartphone, tablette, implant neuronal cyber-bidulé, et j'en passe). Cet environnement (par le biais d'une connexion) peut être accessible de manière strictement interne au collège (cas du [[réseau pédagogique Scribe|le réseau pédagogique Scribe]]), ou depuis partout via une connexion internet (cas de cette documentation, du [[site du collège|site du collège]], de [[pronote|pronote]], etc…)
Vu qu'il existe un environnement “interne” au collège et un environnement “universel”, il est nécessaire -à des fins de sécurité/confidentialité- de réaliser une identification et un contrôle d'accès propres à chacun d'eux, ce qui implique identifiants et mots de passe.
Les ressources numériques de ces environnements, elles, peuvent être d'ordre logiciel (les plateformes, les documents informatiques, les programmes, les informations) ou matériel (les ordis, les imprimantes, les périphériques et accessoires).
Les ressources matérielles peuvent éventuellement être réservables sur certains créneaux horaires et incluent la salle informatique, les classes mobiles, le pack de tablettes, le laboratoire mobile de langues, etc...
Les ressources logicielles, quant à elles, peuvent être:
* [[Spécifiques à Scribe|Spécifiques à Scribe]] dans l'enceinte du collège : Disques réseau, distribution/relève de documents, contrôle centralisé de salle, etc...
* Accessibles via [[l'E.N.T.|E.N.T.]] : [[PIX|PIX]], [[Moodle|Moodle]], [[pronote|pronote]], [[Pearltrees|Pearltrees]], trousse numérique, etc...
* des [[Ressources utiles en ligne|Ressources en ligne]] : des outils pratiques (sans rien à installer, un navigateur internet suffit), des liens vers sites et pages, ...
Bon... là, le plus dur va être de ne pas se noyer puis de ne pas se perdre.
Structuration en cours...
Les ressources matérielles du collège, pour la plupart réservables via [[pronote]] comptent:
* la salle informatique:
** 16 postes élèves
** 1 poste prof avec contrôle centralisé ([[Veyon]])
* les classes mobiles:
** 2 x 16 pc portables sous windows 10
** 1 x 16 pc portables sous linux
* le pack de tablettes ipad et un mac mini
* le laboratoire mobile de langues (Balibom)
* des enregistreurs numériques
* des casques audio, micros et webcams
* ...
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H1pRRPERnFrkSuGMz6ji6U6awdOLl9pJXXne254f+1B+zLYftB6BbPBcJpfifTlYWV86ko6nkwy452k8gjJU5IByQfivSPhZ+0V+z3qt0vhvS9dt1kb520RBfW0+OjGNQ4J9Nygj2r9RKKVLEypx5GrrzMsu4hxOBofVZxjUp/yyV7en/Bufm9/ZP7VfxsX+zNRPiCxsJflma9jTSYdp67wqxlx7AN9K/Ry1iMNtFG2CyIFOPYVLRWdWt7Wy5UkuxxZlmjzHkiqUacY3soq29r3+4/Pv9vj4ZeMPGPxo06+0DwnrmuWS6JBE1zpunTXEYcTTkqWRSMgEHHuPWvq/9lrRtQ8PfADwbp2q2NzpmoQWrrNaXkLRSxnzXOGRgCDgg8jvXqtFOddzpxptbGuLzipi8BSwEoJKn16vRr9QooormPnj/9k=
AAABAAEAAAAAAAEAIAAIIQQAFgAAACgAAAAAAQAAAAIAAAEAIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////A////wf///8K////Df///xHs7t8U7vDjF+nr2xji5c8b4+bRHN3gxh7j5tEc4+bRHOvt3hru8OMX7vDjF////xH///8R////Df///wr///8G////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wn///8s9fbvUNvew4HM0aqrwceYzba9huevtnn2qLBu/p+oX/+Vn07/i5Y+/4KOL/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/go4v/4uWPv+Vn07/n6hf/6ixb/+xuH3+usGM9MfMoeHS1rTC4eTNnPj582////9M////K////wgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8B////IeXn013L0KievMKPz621dvCcplv/i5Y+/3+KKf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9/iin/i5U9/5ymW/+yuX7+w8ib6NTYt7/t7uGH////T////yH///8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8K4+XQTsTKnaGzuoDcoKlg+4qVPP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4qVPP+hqmP/u8KO99DVscvu8OOD////P////woAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/jptV/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2FtG/96hib/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4aSNv/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7O7i/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/n6df/+Pn0/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////77Ek/9+iij/fooo/36KKP9+iij/oapjdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigbf4op7n6KKP9+iij/fooo/6eubf/j5tL/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/09i9/2JwHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9seCD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/7e/l/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7O7i/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/n6df/+Pn0///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/vz/naZc/36KKP9+iij/fooo/4WQNPyYolQiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoootX6KKP9+iij/fooo/4yXP//f4cv/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/3CNUv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9hbRv/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/+jr3P/v8ej/7/Ho/+/x6P/v8ej/7O7i/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/n6df/+Pn0/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79/+rq2f+Hkjb/fooo/36KKP9+iij/lJ5N2wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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6P/v8Of/gI5C/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/92giX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/p693/7O7i/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/n6df/+fr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/R07D/fooo/36KKP9+iij/fooo/5ymW2EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAp+iijgfooo/36KKP9+iij/sLd8/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/4uPQ/2NyHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9jbxz/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/7O7i/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/6WsaP9+iij/fooo/36KKP+JlDv1foooCgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiiKfooo/36KKP9+iij/iZQ6/97hyv/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/6Ona/52oav9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/bnoh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/hpE2/+Xm1f/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/m59T/hJAy/36KKP9+iij/fooo/5SeTacAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigofooo/H6KKP9+iij/fooo/8nOp//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/6Ona/+Tm1P9wgTT/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3mFJv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5GbSf/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/8PHmf9+iij/fooo/36KKP9/iyr+h5I3KwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooos36KKP9+iij/fooo/6GrZP/j5tL/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/6Ona/+Tm1P/X28D/YHAa/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2RwHf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+epl3/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/x8ub/mKFT/36KKP9+iij/fooo/5GbSNIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooQn6KKP9+iij/fooo/4CLK//a3ML/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/6Ona/+Tm1P/k5tT/kqFb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ueiH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/rbR3/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/9zfw/9+iij/fooo/36KKP9+iij/kpxJTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooAn6KKM9+iij/fooo/36KKP+2vIX/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8Of/6Ona/+Tm1P/k5tT/5ObU/3GGLv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/d4Ml/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8DFlv/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/qrJx/36KKP9+iij/fooo/4yXQOl+iigCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKF9+iij/fooo/36KKP+FkTX/3uHK/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P9jeRv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YW0c/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/T1rb/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b27v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/+bn0/+Cji//fooo/36KKP9+iij/jphCbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAl+iijlfooo/36KKP9+iij/wcia/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/Izqr/X3QX/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2h0Hv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+EjzH/5OXS/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/uL6I/36KKP9+iij/fooo/4aRNfN+iigJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iihwfooo/36KKP9+iij/kJpF/+Ljz//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/k6Nd/19vGv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9veyL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/nqdd/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/+3t3v+JlDv/fooo/36KKP9+iij/jJdAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigJfooo536KKP9+iij/fooo/8zPq//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/3mOOP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/doIl/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7i+iP/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7/yc6l/36KKP9+iij/fooo/4aRNfV+iigJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooocH6KKP9+iij/fooo/5WfTf/j5dH/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/5ebV/+Tm1P/i5tL/wM2u/6bAo/+btZH/kquB/5encv+SpGn/lKVq/5CkZv+crnr/qLmN/7fKrf/f5dP/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+rs4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P9ugij/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/X2bz/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz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KP9+iij/s7qB/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////z8+v+Nl0D/fooo/36KKP9+iij/hpE1bwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAR+iijgfooo/36KKP9+iij/yc+n/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/e4s7/iJtP/2h/Iv9fdBj/YG0b/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ccij/dYQ2/6axef/s7uL/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9fhzP9gbhr/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/b3sh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/f4sp/9ncwP/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////xsyh/36KKP9+iij/fooo/4WQNO5+iigEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iihTfooo/36KKP9+iij/kZtH/+Lk0P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/666h/9xhi3/YHYY/2BuGv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/ZHQd/4eVTP/W3ML/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+4zbb/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3N/I/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5ylW//l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////r79/+KlTz/fooo/36KKP9+iij/g44wVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooow36KKP9+iij/fooo/8fLo//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/p69//mKZl/2h8Iv9fbxn/YGwb/2BsG/9gbBv/YGwb/2BsG/9hbRz/ZnId/2p2H/9seCD/bnoh/3B8Iv9xfSL/cX0i/3F9Iv9xfSL/b3sh/2x4IP9qdh//ZnIe/2JuHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/Ym4b/3uNRv/P1Lb/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/u8CY/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/93gyX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/IzKP/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////////////////////wsia/36KKP9+iij/fooo/4uVPdgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooMn6KKP9+iij/fooo/4eRN//h487/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/9bj1/+BmWP/ZHMd/2BsG/9gbBv/YGwb/2FtG/9odB7/b3sh/3aCJP96hib/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/eoYm/3aCJP9veyH/aHQe/2FtG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YHAa/3qNOv/b4cr/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/7i9k/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Rm0f/5ebT/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////b38P+DjjD/fooo/36KKP9+iij/foooMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKKF+iij/fooo/36KKP+6wIz/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/5KykP9ddS3/YGwb/2BsG/9kcB3/bnoh/3eDJf99iSj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP99iSj/d4Ml/215If9jbxz/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YXcZ/42fVv/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+7wJf/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/wcaZ/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////////////////////////////////////srl+/36KKP9+iij/fooo/4iTOa8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKBd+iij6fooo/36KKP9/iyr/3N/G/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/3qccP9ebR//Y28c/256If94hCX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3iEJf9seCD/Ym4c/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9fcBn/Z4Ag/8rRsf/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/vcKa/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2RwHf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/kJpG/+Tl0//l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+/////////////////////////////////////////////////////////////////+nr2/9+iij/fooo/36KKP+Aiyv9foooFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iih4fooo/36KKP9+iij/rLNz/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/4KjeP9mdCH/dIAk/32JKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JJ/9zfyP/ZnId/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gdxj/kqJc/+/x6P/v8ej/7/Ho/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/83Rsv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9mch7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8jMpP/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////////////////////////////////////////////////////oapi/36KKP9+iij/fooo/4GNLXsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooo2H6KKP9+iij/fooo/9TXuP/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/9zgyP9zijn/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP92giT/aHQe/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/19wGf93ijX/6u3i/+/x6P/v8ef/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/e4Mv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/aHQf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5qkWP/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+/////////////////////////////////////////////////////////////////////////////////9jcvv9+iij/fooo/36KKP+FkDTlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooOH6KKP9+iij/fooo/5KcR//j5dL/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+fqGD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP93gyX/Z3Me/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2t8Jv/S28b/5+nZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2p2H/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4KNLv/W2r3/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+///////////////////////////////////////////////////////////////////////////////////////9/fz/ipU8/36KKP9+iij/fooo/36KKDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJl+iij/fooo/36KKP/Axpf/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/f4sz/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP90gCT/ZHAd/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/XHgz/7jCmf/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P9hbRz/YGwb/2BsG/9gbBv/YGwb/2BsG/9seCD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+1vIX/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+/////////////////////////////////////////////////////////////////////////////////////////////////7nAi/9+iij/fooo/36KKP+FkDSiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAl+iijxfooo/36KKP9/iin/3N7G/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo1//u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/vMOR/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JKP9veyL/YW0b/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9jbx3/tryR/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/ZHAf/2BsG/9gbBv/YGwb/2BsG/9gbBv/bXkh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Wn1D/4+XS/+Xm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+///////////////////////////////////////////////////////////////////////////////////////////////////////q7Nz/fooo/36KKP9+iij/gY0t936KKAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iihafooo/36KKP9+iij/o6xn/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+bo2P/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/6Wua/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3qGJv9odB7/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2FtHP+4vZT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/2p2J/9gbBv/YGwb/2BsG/9gbBv/YGwb/297If9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+FkDP/2NzA/+Tm1P/l5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////5qjVv9+iij/fooo/36KKP9+iihaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooor36KKP9+iij/fooo/8zQq//k5tT/5ObU/+Tm1P/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+ao1f/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3F9Iv9hbRv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YW0c/8THo//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P95gzn/YGwb/2BsG/9gbBv/YGwb/2BsG/9veyH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/xMme/+Tm1P/k5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//b17v/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Kz6f/fooo/36KKP9+iij/hI8xtwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooDH6KKPd+iij/fooo/4OPMP/h487/5ObU/+Tm1P/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/m6RZ/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/eoYm/2ZyHv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ibh3/1de8/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/kppc/2BsG/9gbBv/YGwb/2BsG/9gbBv/b3sh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/sLd8/+Tm1P/k5tT/5ebU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9vfw/4CMK/9+iij/fooo/4CLK/p+iigMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKFR+iij/fooo/36KKP+qsXH/5ObU/+Tm1P/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/6evbf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP99iSj/bXkg/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2dyIv/h5dD/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+jZ/7vCmv9gbBv/YGwb/2BsG/9gbBv/YGwb/297If9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/oKli/+Tm0//k5tT/5ObU/+Xm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+gqWH/fooo/36KKP9+iij/foooVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiiofooo/36KKP9+iij/zdCr/+Tm1P/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/Axpj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP90gCT/YW0c/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/c34y/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+jZ/+7w5v/p697/YGwb/2BsG/9gbBv/YGwb/2BsG/9veyH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/mKFU/+Hjz//k5tT/5ObU/+Tm1P/l5tT/5ebU/+Xm1P/o6dj/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ys+n/36KKP9+iij/fooo/4KNLq0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigHfooo8n6KKP9+iij/gYws/+DizP/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/5ejX/4CMK/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3mFJv9kcB3/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/+Ol1j/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+jZ/+7w5v/v8ej/7/Ho/2JuHf9gbBv/YGwb/2BsG/9gbBv/b3sh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/lJ1M/9/izP/k5tT/5ObU/+Tm1P/k5tT/5ebU/+Xm1P/p6dn/+vr1/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/w5P9/iin/fooo/36KKP+AjCv2foooBwAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooS36KKP9+iij/fooo/6avbP/k5tT/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+iq2X/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fIgn/2dzHv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/7q/lf/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+jZ/+7w5v/v8ej/7/Ho/+/x6P9teCr/YGwb/2BsG/9gbBv/YGwb/215If9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/lJ5N/97hyv/k5tT/5ObU/+Tm1P/k5tT/5ebU/+Xm1P/p6dn/+vr2/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////r69f/z8+j/m6VZ/36KKP9+iij/fooo/36KKEsAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJJ+iij/fooo/36KKP/Jzqf/5ObU/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/ys+q/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP99iSj/anYf/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ibh3/3uHL/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+jZ/+7w5v/v8ej/7/Ho/+/x6P/v8ej/hY9M/2BsG/9gbBv/YGwb/2BsG/9seCD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/d4Ml/2BsG/9gbBv/YGwb/2BsG/9ibh3/ZG8e/2dyIf9qdSX/cn0x/3yHPv+JklD/m6Nr/7W7kf/W2cP/8/Tu/////////////////////////////////////////////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po/8LImf9+iij/fooo/36KKP9+iiiSAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAB+iijWfooo/36KKP9+iij/3eDH/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P+PmUT/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9teSH/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3R+M//k5tT/5ObU/+Tm1P/k5tT/5+jZ/+7w5v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/7m/lv9gbBv/YGwb/2BsG/9gbBv/a3cg/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/e4cn/2NvHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9kcB//dYA1/5KbX/+7wJv/5ObZ//7+/f///////////////////////////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/i5Mz/fooo/36KKP9+iij/g44w3gAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAB+iigcfooo/36KKP9+iij/lJ9N/+fo2f/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/usCN/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/297Iv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/pqx5/+Tm1P/k5tT/5+jZ/+7w5v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ef/YGwb/2BsG/9gbBv/YGwb/2l1H/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2h0H/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9lcSH/goxI/7K5kP/k5tj//////////////////////////////////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po/4yXP/9+iij/fooo/36KKP9+iigdAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAfoooYX6KKP9+iij/fooo/7nAjP/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Dizf+GkTX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/cX0i/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2FtHP/a3cX/5+jZ/+7w5v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/2dyI/9gbBv/YGwb/2BsG/9odB7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3J+I/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2t2KP+ZoWr/19vG//39/P///////////////////////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P+ttXb/fooo/36KKP9+iij/foooYQAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAH6KKKZ+iij/fooo/36KKP/X277/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/sLd9/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9yfiP/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/dH80/+7w5v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+Bi0b/YGwb/2BsG/9gbBv/ZnId/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3qGJv9hbRz/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ocyX/nKNu/+Lk1v///////v79//X07P/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/zdGr/36KKP9+iij/fooo/36KKKYAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAB+iijpfooo/36KKP+BjCz/6uzf/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9zfx/+DjjD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3J+I/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/+5v5j/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/vcKd/2BsG/9gbBv/YGwb/2NvHP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9qdh//YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/dH81/7a7lP/t7eH/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/+rq2f9/iin/fooo/36KKP+AiyvsAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAB+iigjfooo/36KKP9+iij/n6hg/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/srmA/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/cHwi/2BsG/9gbBv/YGwb/2BsG/9gbBv/ZHAf/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P9hbRz/YGwb/2BsG/9gbBv/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP93gyX/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/ZnEi/52kbv/l5tX/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/lZ5O/36KKP9+iij/fooo/36KKCMAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAfoooWn6KKP9+iij/fooo/77Ek//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9/izP+Ikzj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9ueiH/YGwb/2BsG/9gbBv/YGwb/2BsG/+PmFr/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/b3ot/2BsG/9gbBv/YGwb/3uHJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/ZnIe/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YW0d/5ScYf/i49H/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/29u7//v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/7G4fP9+iij/fooo/36KKP9+iihaAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAH6KKJN+iij/fooo/36KKP/V2bv/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/wMaX/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2x4IP9gbBv/YGwb/2BsG/9gbBv/YW0c/+Pl1P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/56ncf9gbBv/YGwb/2BsG/94hCX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/doIl/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YW0c/5ScYv/n6Nn/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/39u///v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/Kzqb/fooo/36KKP9+iij/foookwAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAB+iijKfooo/36KKP9+iij/5unY/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+apFj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/aXUf/2BsG/9gbBv/YGwb/2BsG/94gzr/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/n6dz/YGwb/2BsG/9gbBv/dYEk/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2l1H/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/ZHAg/6ivfv/w8OT/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/39u///v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/4uPM/36KKP9+iij/fooo/3+LKswAAAAAAAAAAAAAAAD///8AAAAAAAAAAAB+iigIfooo+36KKP9+iij/jZhC/+/x5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/19q+/4SPMf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JJ/9mch7/YGwb/2BsG/9gbBv/YGwb/9LWvf/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/2p2J/9gbBv/YGwb/3F9Iv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3yIJ/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/bHgq/8nNrP/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/39u///v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Lz6P+Hkjf/fooo/36KKP9/iin8foooCAAAAAAAAAAA////AAAAAAAAAAAAfoooOH6KKP9+iij/fooo/621eP/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/Bxpn/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/e4cn/2NvHP9gbBv/YGwb/2BsG/9xey//7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+Zomn/YGwb/2BsG/9teSH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9zfyP/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/iJFQ/+jp2f/z8+j/8/Po//Pz6P/39u///v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/oapj/36KKP9+iij/fooo/36KKDkAAAAAAAAAAP///wAAAAAAAAAAAH6KKGV+iij/fooo/36KKP/HzKP/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/6aua/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP94hCX/YW0b/2BsG/9gbBv/YGwb/8nNr//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/5+nd/2BsG/9gbBv/Z3Mf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/a3cg/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9mciL/wcWh//Pz6P/39u///v7+//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po/7rAi/9+iij/fooo/36KKP9+iihlAAAAAAAAAAD///8AAAAAAAAAAAB+iiiQfooo/36KKP9+iij/2NzA/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/h48//lZ9P/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3N/I/9gbBv/YGwb/2BsG/9ueSz/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P9teCv/YGwb/2NvHP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2ZyHf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/+Ollj/+Pn2//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/O0qz/fooo/36KKP9+iij/foookAAAAAAAAAAA////AAAAAAAAAAAAfooou36KKP9+iij/fooo/+Xo1v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9vexf+KlT3/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/bnoh/2BsG/9gbBv/YGwb/8vQs//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/qbGA/2BsG/9gbBv/fYko/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9jbxz/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/296Lf/k5tf///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/4OLK/36KKP9+iij/fooo/36KKLsAAAAAAAAAAP///wAAAAAAAAAAAH6KKOV+iij/fooo/4OPMf/u8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/1tm8/4eSN/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9ncx7/YGwb/2BsG/9xey//7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x5/9hbRz/YGwb/3iEJv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/Ym4c/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2RwHf9odB7/a3cg/256If9xfSL/dIAk/3WBJP93gyX/eIQm/3iEJv95hSb/eoYm/3iEJv94hCX/doIl/3SAJP9yfiP/cHwi/2x4IP9odB//ZHAd/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/Y28e/7/Fof////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Hx5v+AjCv/fooo/36KKP9/iinmAAAAAAAAAAD///8AAAAAAH6KKBF+iij/fooo/36KKP+cpVv/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vt4f/b38b/h5I3/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/e4cn/2JuHP9gbBv/YGwb/9fbw//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/e4U9/2BsG/9xfSL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2RwHf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9jbxz/anYf/297If90gCT/eYUm/32JKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP99iSf/eIQl/3J+I/9seCD/ZHAd/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/n6Zx//7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Tz6f/8/Pn/k51L/36KKP9+iij/fooo/36KKBEAAAAA////AAAAAAB+iig8fooo/36KKP9+iij/tLuE/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+vt4f/v8ej/7/Ho/9vfxv+JlDv/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP92giT/YGwb/2BsG/94gzr/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6uzg/8rPrv9gbBv/aXUf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9pdR//YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9mch7/bnoh/3SAJP97hyf/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP97hyf/c38j/2l1H/9hbRv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/+DjEj/+/z6//////////////////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Tz6f/8/Pn//////6qxcf9+iij/fooo/36KKP9+iig8AAAAAP///wAAAAAAfoooWn6KKP9+iij/fooo/8bLov/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+vt4f/v8ej/7/Ho/+/x6P/v8ej/4OPO/46YQv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/215If9gbBv/YGwb/+bp2f/v8ej/7/Ho/+/x6P/v8ej/6uzg/+Tm1P/k5tT/aXQl/2NvHP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/cn4j/2BsG/9gbBv/YGwb/2BsG/9jbxz/bHgg/3SAJP98iCf/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fYko/3SAJP9odB//YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3WANf/z9O7///////////////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Tz6f/8/Pn///////////+8wpD/fooo/36KKP9+iij/foooWgAAAAD///8AAAAAAH6KKHl+iij/fooo/36KKP/T17f/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/n6dr/m6Va/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/ZHAd/2BsG/+KlFP/7/Ho/+/x6P/v8ej/6uzg/+Tm1P/k5tT/5ObU/6KqdP9gbBv/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3yIJ/9ibhz/Y28c/256If94hCX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3qGJv9ueiH/Ym4c/2BsG/9gbBv/YGwb/2BsG/9gbBv/bXgq/+3u5f////////////////////////////////////////////////////////////////////////////n59f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////zNGq/36KKP9+iij/fooo/36KKHkAAAAA////AAAAAAB+iiiYfooo/36KKP9+iij/3eHJ/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+7w5v+xuH7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3mFJv9gbBv/Y28e/+/x6P/v8ej/6uzg/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/Ym4d/3eDJf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/eoYm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JJ/9wfCL/Y28c/2BsG/9gbBv/YGwb/2BsG/9qdib/6+zg//////////////////////////////////////////////////////////////////n59f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////9zfxP9+iij/fooo/36KKP9+iiiYAAAAAP///wAAAAAAfooot36KKP9+iij/fooo/+bp1//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/87TsP+Ikzn/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/bnoh/2BsG/+wt4n/6uzg/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/4mSUP9seCD/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JJ/9veyH/YW0c/2BsG/9gbBv/YGwb/2p1Jf/r7OD///////////////////////////////////////////////////////n59f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn////////////////////////////r7d3/fooo/36KKP9+iij/foootwAAAAD///8AAAAAAH6KKNZ+iij/fooo/4CLK//t7+T/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/5unY/6SsaP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9jbxz/bHcp/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/e4cv/bHgk/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3uHJ/9qdiD/YGwb/2BsG/9gbBv/anYm/+7w5f////////////////////////////////////////////n59f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////+/v4/36KKP9+iij/fooo/36KKNYAAAAA////AAAAAAB+iijyfooo/36KKP+OmEP/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/0NW0/46ZRP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/eIQl/2BsG//T17z/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/42WU/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3WBJP9jbxz/YGwb/2BsG/9teSn/9PTu//////////////////////////////////n59f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn///////////////////////////////////////////+JlDr/fooo/36KKP9+iijyAAAAAP///wB+iigBfooo/36KKP9+iij/m6VZ/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7+P/wMaX/4mUOv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9pdR//hY5K/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/T17z/gY42/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fIgn/2p2H/9gbBv/YGwb/3R/Mv/7/Pn///////////////////////n59f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////////////////////lJ5N/36KKP9+iij/fooo/36KKAH///8AfoooA36KKP9+iij/fooo/6aua//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/r7eH/vMOR/4uWP/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/2t3J//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/7G4fv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/cHwi/2BsG/9gbBv/goxD//////////////////n59f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////////////////////////////////////56nXf9+iij/fooo/36KKP9+iigD////AH6KKAV+iij/fooo/36KKP+vt3z/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/s7uP/xMme/5ihU/9+iin/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9zfyT/vsOc/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/e4Mn/hI8y/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP92giX/Ym4c/2BsG/+ao2f///////n59f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn///////////////////////////////////////////////////////////+nsG3/fooo/36KKP9+iij/foooBf///wB+iigIfooo/36KKP9+iij/ub+L/+/x6P/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/2NvA/7O6gv+SnEr/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/6Stcf/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/7K5f/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3qGJv9kcB3/YGwb/7i+kv/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////////////////////////////////////sbh8/36KKP9+iij/fooo/36KKAj///8AfoooCn6KKP9+iij/fooo/8HHmf/v8ej/7/Ho/+/x6P/s7eL/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9rdwv+8wpH/o6tm/4yWP/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+OmEP/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/f4sz/hpE1/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/e4cn/2VxHf9jbx3/19m+//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////////////////////////////////////////////////////7rBjP9+iij/fooo/36KKP9+iigK////AH6KKAx+iij/fooo/36KKP/Jzqf/7/Ho/+/x6P/r7eH/5ObV/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/297E/8nOp/+4vor/qLBv/5ylW/+UnUz/ipU8/4SPMf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/9PXuP/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/7S7g/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP98iCf/ZXEd/215KP/u7uL/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn////////////////////////////////////////////////////////////////////////////DyZz/fooo/36KKP9+iij/foooDP///wB+iigNfooo/36KKP9+iij/zNGs/+/x6P/r7eH/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ebV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+VnV7/YGwb/2RwHf9odB7/bXkh/3N/I/95hSb/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+zuoH/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/g487/iJM4/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3uHJ/9kcB3/jJVQ//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////////////////////////////////////////////////////xsyh/36KKP9+iij/fooo/36KKA3///8AfoooDn6KKP9+iij/fooo/9LWtf/r7eH/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+Wnl//YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2JuHP9qdiD/c38j/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/kpxK/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/7m/jP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/eoYm/2NvHP+9wpf/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////////////////////////////////////////////////////////////////////83SrP9+iij/fooo/36KKP9+iigO////AH6KKA5+iij/fooo/36KKP/Q1bP/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+gp27/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9hbRz/a3cg/3eDJf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/Y28D/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/m6Nf/kpxK/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP93gyX/Z3Mh/+fo1v/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn////////////////////////////////////////////////////////////////////////////////////////////O067/fooo/36KKP9+iij/foooDv///wB+iigQfooo/36KKP9+iij/0NOx/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+psX3/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/aHQe/3iEJv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/uL6K/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/o6tr/+/v4/9vew/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/3J+I/+DjUT/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////////////////////////////////////////////////////////////////////0NSx/36KKP9+iij/fooo/36KKBD///8AfoooEH6KKP9+iij/fooo/9TYuf/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+zuYz/YW0b/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/b3sh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5ehUv/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/p6tv/+/v4////////////o6xm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/a3cg/8LHn//z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////////////////////////////////////////////////////////////////////////////////////9favP9+iij/fooo/36KKP9+iigQ////AH6KKBB+iij/fooo/36KKP/U2Ln/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/CxqH/YW0c/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9pdR//fYko/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Aiyv/3+LM/+Tm1P/k5tT/5ObU/+Tm1P/p6tv/+/v4/////////////////+vt3v+AjCv/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/32JJ/9yfSz/7+/j//Pz6P/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn////////////////////////////////////////////////////////////////////////////////////////////////////////////X2rz/fooo/36KKP9+iij/foooEP///wB+iigQfooo/36KKP9+iij/1Ni5/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/Q1Lb/ZXEg/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2p2H/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8XKoP/k5tT/5ObU/+Tm1P/p6tv/+/v4////////////////////////////tr2G/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/d4Ml/5ykaP/z8+j/8/Po//Pz6P/z8+j/8/Po//Pz6f/8/Pn/////////////////////////////////////////////////////////////////////////////////////////////////////////////////19q8/36KKP9+iij/fooo/36KKBD///8AfoooEH6KKP9+iij/fooo/9HVtf/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5+jZ/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/d38r/a3cn/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/cn4j/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+qsnL/5ObU/+Tm1P/p6tv/+/v4//////////////////////////////////b38f+Hkjf/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP92gSr/5ObS//Pz6P/z8+j/8/Po//Pz6f/8/Pn//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9PXtv9+iij/fooo/36KKP9+iigQ////AH6KKA9+iij/fooo/36KKP/O0q//5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/j5tP/eYM6/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2NvHP99iSj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/j5lE/+Tm1P/p6tv/+/v4////////////////////////////////////////////x8yh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fYkn/5WeXP/z8+j/8/Po//Pz6f/8/Pn////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////O067/fooo/36KKP9+iij/foooD////wB+iigOfooo/36KKP9+iij/ztOv/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/maFn/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/dIAk/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/e4Mj/+/v4//////////////////////////////////////////////////z8+v+Qm0b/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP96hir/3N/G//Pz6f/8/Pn/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ztOu/36KKP9+iij/fooo/36KKA7///8AfoooDn6KKP9+iij/fooo/8rOqP/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/v8Sf/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/ZXEd/3eDJf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/zNGr////////////////////////////////////////////////////////////2t3B/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/56lZv/8/Pn//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8jNo/9+iij/fooo/36KKP9+iigO////AH6KKAx+iij/fooo/36KKP/JzqX/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/3N/J/2ZyIf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9mch7/dYEk/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/620dv////////////////////////////////////////////////////////////////+osW//fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9/ii//7e/k///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////GzKH/fooo/36KKP9+iij/foooDP///wB+iigLfooo/36KKP9+iij/wcea/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/32IQf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2VxHf91gST/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+JlDr//v79////////////////////////////////////////////////////////////8vPp/4aRNf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7nAjf//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////vcOR/36KKP9+iij/fooo/36KKAv///8AfoooCX6KKP9+iij/fooo/7rBjP/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/7K5jv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/Ym4c/3F9I/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/+Xn0//////////////////////////////////////////////////////////////////Q1bH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Llj7//P37/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7S7gf9+iij/fooo/36KKP9+iigJ////AH6KKAZ+iij/fooo/36KKP+xuH7/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+Di0f9kbx//YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/bXkh/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/Cx5n//////////////////////////////////////////////////////////////////////6mxcP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/9LXtf////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////39+/+qsXD/fooo/36KKP9+iij/foooBv///wB+iigEfooo/36KKP9+iij/qLBv/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5/+AiUX/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9mch3/eIQl/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/o6tm///////////////////////////////////////////////////////////////////////29/H/jplD/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+ep13///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////39+//09Or/oKlh/36KKP9+iij/fooo/36KKAT///8AfoooAn6KKP9+iij/fooo/6CoYP/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//AxqT/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2FtG/9wfCL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4aRNf/+/v3//////////////////////////////////////////////////////////////////////+Xo1P+CjS7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/+rs3P////////////////////////////////////////////////////////////////////////////////////////////////////////////39+//09Or/8/Po/5iiU/9+iij/fooo/36KKP9+iigC////AAAAAAB+iij6fooo/36KKP+UnUz/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//r7eL/a3Yo/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2ZyHf95hSb/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/6+3d////////////////////////////////////////////////////////////////////////////zNGr/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+2vYb///////////////////////////////////////////////////////////////////////////////////////////////////////39+//09Or/8/Po//Pz6P+OmEL/fooo/36KKP9+iij6AAAAAP///wAAAAAAfooo4H6KKP9+iij/g48w/+Tm0//k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/oql3/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/256If99iSj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/9PXtv////////////////////////////////////////////////////////////////////////////////+5v4r/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/h5I2//r69/////////////////////////////////////////////////////////////////////////////////////////////39+//09Or/8/Po//Pz6P/y8uf/gIwr/36KKP9+iij/fooo4AAAAAD///8AAAAAAH6KKMJ+iij/fooo/36KKP/f4cr/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/5OfY/2RvH/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/Y28c/3eDJf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+8wpD//////////////////////////////////////////////////////////////////////////////////Pz6/6SsZv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/O067///////////////////////////////////////////////////////////////////////////////////////39+//09Or/8/Pp//Pz6P/z8+j/5+fU/36KKP9+iij/fooo/36KKMIAAAAA////AAAAAAB+iiijfooo/36KKP9+iij/2dvA/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObV/+zt4v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/5efaP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/aHQe/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/pq9r/////////////////////////////////////////////////////////////////////////////v38//X07P/u7uH/nKVZ/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/mqRX//////////////////////////////////////////////////////////////////////////////////39+//09Or/8/Pp//Pz6P/z8+j/8/Po/9rcv/9+iij/fooo/36KKP9+iiikAAAAAP///wAAAAAAfooohH6KKP9+iij/fooo/9HVs//k5tT/5ObU/+Tm1P/k5tT/5ObV/+zu4//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/97h0P9ibh3/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/bnoh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5agUP///////////////////////////////////////////////////////////////////////v38//X07P/z8un/8/Lp/+zs3v+XoFH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/n6df///////////////////////////////////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+j/8/Po//Pz6P/N0Kr/fooo/36KKP9+iij/fooohQAAAAD///8AAAAAAH6KKGZ+iij/fooo/36KKP/HzKP/5ObU/+Tm1P/k5tT/5ObV/+zu4//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/+/x6P+VnWT/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9hbRv/c38j/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+GkTX//////////////////////////////////////////////////////////////////v38//X07P/z8un/8/Lp//Py6f/z8un/7Oze/5egUf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/s7qB//////////////////////////////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/v8ST/36KKP9+iij/fooo/36KKGYAAAAA////AAAAAAB+iihHfooo/36KKP9+iij/ub6K/+Tm1P/k5tT/5ObV/+zu4//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/+/x6P/k59j/Y28e/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9ibhz/d4Ml/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo//j58////////////////////////////////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/s7N7/mKFS/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4eSN//+/v3///////////////////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po/6+2eP9+iij/fooo/36KKP9+iihIAAAAAP///wAAAAAAfoooIH6KKP9+iij/fooo/6Staf/k5tT/5ObV/+zu4//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/+/x6P/v8ej/oal3/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9jbxz/eYUm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/t7uH//////////////////////////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp/+7u4f+hqWL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/7O7f//////////////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P+apFf/fooo/36KKP9+iij/foooIQAAAAD///8AAAAAAH6KKAF+iij0fooo/36KKP+Mlj//5ObV/+zu4//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+/w5//v8ej/7/Ho/+/x6P/v8ej/6+3i/2dyJP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9kcB3/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/4+bR/////////////////////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8vHn/620dv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/+Llz/////////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/hpE1/36KKP9+iij/fooo9H6KKAEAAAAA////AAAAAAAAAAAAfoooy36KKP9+iij/fooo/+fp2f/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/7vBnf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9lcR3/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/9rewf///////////////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/wcaX/4CMK/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/i5c////////////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/5+jV/36KKP9+iij/fooo/36KKMsAAAAAAAAAAP///wAAAAAAAAAAAH6KKKB+iij/fooo/36KKP/d4Mj/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P96hD7/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9lcR3/fIgn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/X2rz//////////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/W2Ln/iJM4/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/9PXt//////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po/9XYt/9+iij/fooo/36KKP9+iiigAAAAAAAAAAD///8AAAAAAAAAAAB+iih1fooo/36KKP9+iij/zdOu/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/a3cn/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9kcB3/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/09e2/////////////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp/+jo1v+dplv/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/lJ5M//////////////////////////////////39+//09Or/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/Bx5j/fooo/36KKP9+iij/fooodQAAAAAAAAAA////AAAAAAAAAAAAfoooSH6KKP9+iij/fooo/7i/iv/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/o6p6/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9jbxz/eoYm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/87Trv///////////////////////v38//T07P/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8vHn/7zBj/+BjS3/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8PJnP////////////////////////////39+//08+r/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/rLJz/36KKP9+iij/fooo/36KKEkAAAAAAAAAAP///wAAAAAAAAAAAH6KKBd+iij/fooo/36KKP+ao1f/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/296Lv9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9hbRv/eIQl/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/S17X//////////////////f38//T06//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D/6+3d/5qjVv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4uWPv/5+fX///////////////////////39+//08+r/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po/5GbRv9+iij/fooo/36KKP9+iigXAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAfooo336KKP9+iij/f4sq/+rt4P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/9baxP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/dIAk/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/19q8/////////////f38//T06//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////9/vz/x82i/4WQNP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4GMLP/e4cj///////////////////////39+//08+r/8/Lp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po/+rr2/9+iij/fooo/36KKP9+iijfAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAH6KKKd+iij/fooo/36KKP/c4Mf/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+iqXf/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/b3sh/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/9ncv////////f38//T06//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////09ez/sLd7/3+KKf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4KNLv/V2bn///////////////////////39+//08+r/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/U1rT/fooo/36KKP9+iij/fooopwAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAB+iihvfooo/36KKP9+iij/x8yj/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/dYA2/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/aHQf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/h5M3//f38//T06//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////////////////////o6tn/pKxn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5egUf/m6db///////////////////////39+//08+r/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/usCL/36KKP9+iij/fooo/36KKG8AAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAfoooN36KKP9+iij/fooo/6y0dv/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/5OfZ/2FsHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/Y28c/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/6OrZ//T06//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////////////////////////////////////j5dD/o6xm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9/iin/o6tm/9jbvf/+/v3///////////////////////z8+v/08+r/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po/6CpYP9+iij/fooo/36KKP9+iig3AAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAH6KKAZ+iij5fooo/36KKP+JlDr/7vDl/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5+na/+7w5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/77Dov9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/3WBJP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/+nq2f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////////////////////////////////////////////////////n6df/rrV3/4GNLf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4yXQP++xJP/7/Hl//////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Dw5P+EjzH/fooo/36KKP9+iij5foooBgAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAfooov36KKP9+iij/fooo/9/jzf/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+Sm2D/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2x4IP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4GMLf/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////////////////////////////////////////////////////////////////////09ez/wMaW/4+aRf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+BjS3/p7Bt/9ncv//9/vz///////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//Pz6P/Y2rz/fooo/36KKP9+iij/fooovwAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAH6KKHt+iij/fooo/36KKP/Gy6L/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/cXww/2BsG/9gbBv/YGwb/2BsG/9gbBv/YGwb/2NvHP98iCf/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+OmEL/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7/4OPL/7C3e/+Hkjb/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/f4sq/5ymW//Jzqb/9vfw//////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//Pz6P/z8+j/usCL/36KKP9+iij/fooo/36KKHsAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAB+iig1fooo/36KKP9+iij/pKxn/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6Ove/2BsHP9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/90gCT/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/naVb//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38/93gx/+0u4L/kJpG/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4WQM/+lrWn/zNGr//T17P////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po/5mhVP9+iij/fooo/36KKP9+iig1AAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAfoooAn6KKO5+iij/fooo/4GNLv/r7eH/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/87Tuf9gbBv/YGwb/2BsG/9gbBv/YGwb/2BsG/9odB//fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7C2ev/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/j5M//xMic/6mwb/+PmUP/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4iTOP+jq2b/wceX/+Hkzf/9/fz///////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//Pz6P/z8+j/8/Po//Dw5P9/iyr/fooo/36KKP9+iijufoooAwAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiirfooo/36KKP9+iij/2NzB/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+ttIj/YGwb/2BsG/9gbBv/YGwb/2BsG/9gbBv/eIQm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP/Cx5n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp/+vr3P/V17j/wMSU/6yzdP+cpVn/jJY//3+LKv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+JlDr/maNW/6uzc//Axpb/19q8/+3v4f////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6P/z8+j/8/Po//j48v/U2Lf/fooo/36KKP9+iij/foooqwAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooZn6KKP9+iij/fooo/7i/iv/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/jJVW/2BsG/9gbBv/YGwb/2BsG/9gbBv/anYf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/2Nq8//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/y8ef/6OjX/93exP/U17b/ztGs/8fLoP/Hy6D/wcWW/8DFlP/IzaP/ztOu/9XYuP/a3cH/5ObR/+/w5P/6+/f///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//j48v//////rbR2/36KKP9+iij/fooo/36KKGYAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKBp+iij+fooo/36KKP+KlT3/7fDl/+/x6P/v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/3aBN/9gbBv/YGwb/2BsG/9gbBv/YGwb/3qGJv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/f4sq/+7u4f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/8/Pr///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+j/8/Po//j48v//////+/z5/4WQNP9+iij/fooo/36KKP5+iigaAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooxn6KKP9+iij/fooo/9zgx//v8ej/7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P9odCX/YGwb/2BsG/9gbBv/YGwb/2p2H/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5OdS//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/8/Pr///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Po//j48v///////////9rewf9+iij/fooo/36KKP9+iijGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKHN+iij/fooo/36KKP+7wY//7/Ho/+/x6P/u8Ob/5ufX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/r7eL/YGwb/2BsG/9gbBv/YGwb/2BsG/93gyX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+vtXj/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/39/H///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v////////////////+wt3v/fooo/36KKP9+iij/fooocwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiggfooo/36KKP9+iij/jplD/+7x5v/u8Ob/5efX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/3ODN/2BsG/9gbBv/YGwb/2BsG/9mch7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/zNCp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v/////////////////9/vz/iJM5/36KKP9+iij/fooo/36KKCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKM1+iij/fooo/36KKP/c4Mj/5efX/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/8zQtf9gbBv/YGwb/2BsG/9gbBv/cX0j/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/foop/+rq2v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v//////////////////////3N/F/36KKP9+iij/fooo/36KKM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iih6fooo/36KKP9+iij/tbuF/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+1u5H/YGwb/2BsG/9gbBv/YW0b/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5egUf/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v///////////////////////////6y0df9+iij/fooo/36KKP9+iih7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooH36KKP5+iij/fooo/4aSNv/g48//5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/qbB//2BsG/9gbBv/YGwb/2l1H/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+7wI3/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v////////////////////////////f48v+Cji//fooo/36KKP9+iij+foooIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iii8fooo/36KKP9+iij/zNGs/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/56mcP9gbBv/YGwb/2BsG/9yfiP/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/3+DI//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//Pz6f/z8+n/8/Pp//j48v/////////////////////////////////L0Kn/fooo/36KKP9+iij/fooovAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooXH6KKP9+iij/fooo/6OsZ//k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P+UnGD/YGwb/2BsG/9gbBv/e4cn/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/kpxJ//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//Pz6f/z8+n/8/Pp//j48v//////////////////////////////////////mqNW/36KKP9+iij/fooo/36KKFwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAp+iijyfooo/36KKP9/iyr/3N/G/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/jpdX/2BsG/9gbBv/ZnId/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7zBjv/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//j48v//////////////////////////////////////6+3d/36KKP9+iij/fooo/36KKPJ+iigKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooomn6KKP9+iij/fooo/77Ck//k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/4iRTf9gbBv/YGwb/2x4IP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKf/l5tL/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6f/z8+n/8/Pp//j48v///////////////////////////////////////////7a8hf9+iij/fooo/36KKP9+iiibAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKDh+iij/fooo/36KKP+JlDr+4uPP/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tm1P+GkEr/YGwb/2BsG/9zfyP/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+fqF//8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8+n/8/Pp//j48v////////////////////////////////////////////j58/+EkDL/fooo/36KKP9+iij/foooOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooyn6KKP9+iij/fooo/8nOp//k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tm1P/k5tT/iZJO/2BsG/9gbBv/eYUm/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/0NOv//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Pp//j48v/////////////////////////////////////////////////GzKH/fooo/36KKP9+iij/foooygAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKFt+iij/fooo/36KKP+XoFL+5OXT/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tm1P/k5tT/5ObU/4uVUf9gbBv/YW0b/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/jZdA//Lx5//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v/////////////////////////////////////////////////+/v3/j5pF/36KKP9+iij/fooo/36KKFsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigGfooo5n6KKP9+iij/fooo/9PXt//k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5tT/5ObU/+Tm1P+NllP/YGwb/2RwHf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8HGl//z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v//////////////////////////////////////////////////////19u8/36KKP9+iij/fooo/36KKOZ+iigGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKH1+iij/fooo/36KKP+nr23/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/k5xc/2BsG/9odB7/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4eSNv/u7uH/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v///////////////////////////////////////////////////////////52mXP9+iij/fooo/36KKP9+iih9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigVfooo+H6KKP9+iij/fooo/9favv/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/52la/9gbBv/bHgg/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+8wY7/8/Lp//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v///////////////////////////////////////////////////////////9/iyf9+iij/fooo/36KKP9+iij4foooFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJh+iij/fooo/36KKP+or27/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P+ss4D/YGwb/256If9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Ikzj/7e3g//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v////////////////////////////////////////////////////////////////+ep13/fooo/36KKP9+iij/fooomAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigefooo+n6KKP9+iij/fooo/9nbwf/k5tT/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/vcOa/2BsG/9veyL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/wMWV//Py6f/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v/////////////////////////////////////////////////////////////////j5dD/fooo/36KKP9+iij/fooo+n6KKB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJh+iij/fooo/36KKP+rs3X/5ObU/+Tm1P/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/9DUtf9gbBv/cX0i/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/j5lE//Dw5P/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v//////////////////////////////////////////////////////////////////////oqtk/36KKP9+iij/fooo/36KKJgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigjfooo/H6KKP9+iij/f4op/9ncwv/k5tT/6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/i5dH/YW0b/3J+I/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8/Srv/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v//////////////////////////////////////////////////////////////////////4+XQ/36KKP9+iij/fooo/36KKPx+iigkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKKB+iij/fooo/36KKP+mrmz+6Orb/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/2ZyIP9xfSL/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/5+nXv/z8un/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v///////////////////////////////////////////////////////////////////////////5ymW/9+iij/fooo/36KKP9+iiigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigkfooo/H6KKP9+iij/foop/9rew//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P9xfC3/cHwi/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4OOMP/k5dH/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v///////////////////////////////////////////////////////////////////////////9bau/9+iij/fooo/36KKP9+iij8foooJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJR+iij/fooo/36KKP+YolT87vDl/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/gYtC/297If9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP++w5L/8/Lp//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+v/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v////////////////////////////////////////////////////////////////////////////z8+v+Qm0b/fooo/36KKP9+iij/fooolAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigVfooo8H6KKP9+iij/fooo/8/Usf/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/5egYf9teSH/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+ZolX/8vHn//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v/////////////////////////////////////////////////////////////////////////////////HzKH/fooo/36KKP9+iij/fooo8H6KKBUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKHZ+iij/fooo/36KKP+Llj786+3h/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P+1u47/anYf/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+EjzL/4+XQ//Py6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v/////////////////////////////////////////////////////////////////////////////////29/H/h5I2/36KKP9+iij/fooo/36KKHYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigIfooo4H6KKP9+iij/fooo/7/Gl//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/293H/2dzH/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/yMyj//Ly6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48v//////////////////////////////////////////////////////////////////////////////////////tLuC/36KKP9+iij/fooo/36KKOB+iigIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKFh+iij/fooo/36KKP+BjCz/4uXR/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P9vein/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/rLR1//Ly6f/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////j48v/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48///////////////////////////////////////////////////////////////////////////////////////5ObR/3+KKf9+iij/fooo/36KKP9+iihZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigBfooow36KKP9+iij/fooo/5+oX/vu8Ob/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/f4lA/32JKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/lZ9P/+7v4//4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////f38/5agUP9+iij/fooo/36KKP9+iijDfoooAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKCp+iij6fooo/36KKP9+iij/zdKu/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/52ma/93gyX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/iZQ6/+Xn1P/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////8TKnf9+iij/fooo/36KKP9+iij6foooKgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfooohH6KKP9+iij/fooo/4aRNfzo6tv/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/T1rv/cn4j/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/go4v/9ncwP/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////+/x5f+DjzD/fooo/36KKP9+iij/fooohAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAh+iijcfooo/36KKP9+iij/rbV2++/x5//v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37/4GLPf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/f4sq/87RrP/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////7//v+iq2T/fooo/36KKP9+iij/fooo3H6KKAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooRH6KKP9+iij/fooo/36KKP/T17j/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37//////+cpGj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/8XKn//4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////M0ar/fooo/36KKP9+iij/fooo/36KKEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiijfooo/36KKP9+iij/h5I3+ufq2v/v8ej/7/Ho/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6evd/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37////////////xcmn/3yIJ/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7zCkP/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Tz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////u8OP/hJAy/36KKP9+iij/fooo/36KKKMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooEH6KKOV+iij/fooo/36KKP+krGj37vHm/+/x6P/v8ej/7/Ho/+/x6P/v8ej/6Orc/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37//////////////////39/P+Aizb/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7vBjv/4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Pz6v/9/fv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////9/vz/m6VZ/36KKP9+iij/fooo/36KKOV+iigQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iihJfooo/36KKP9+iij/fooo/8nOpv3v8ej/7/Ho/+/x6P/v8ej/6erc/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37////////////////////////////pq5y/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/7/Ek//4+PL///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48///////////////////////////////////////////////////////////////////////////////////////////////////////v8WU/36KKP9+iij/fooo/36KKP9+iihKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKJd+iij/fooo/36KKP+BjC394OPO/+/x6P/v8ej/6erc/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37/////////////////////////////////9fawf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/gIwr/8fMov/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48///////////////////////////////////////////////////////////////////////////////////////////////////////4ePM/4CLK/9+iij/fooo/36KKP9+iiiXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigJfooo1n6KKP9+iij/fooo/5CbRvfq7d//6erc/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37////////////////////////////////////////////l6FS/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/g44w/9DUsf/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48///////////////////////////////////////////////////////////////////////////////////////////////////////9PXt/4yWP/9+iij/fooo/36KKP9+iijWfoooCQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKC9+iij4fooo/36KKP9+iij/qbFw9uTl0//k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/k5tT/5ObU/+Tm1P/r7N7//f37/////////////////////////////////////////////////8rPp/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/jJY//93fxf/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////v79/6GqYv9+iij/fooo/36KKP9+iij4foooLwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooaH6KKP9+iij/fooo/36KKP/CyJv75OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5tT/5ObU/+Tm1P/r7N7//f37///////////////////////////////////////////////////////4+fP/hJAy/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/maJV/+jp2P/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////////73Dkf9+iij/fooo/36KKP9+iij/foooaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiiofooo/36KKP9+iij/f4sq/9PXt//k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/r7N7//f37/////////////////////////////////////////////////////////////////7S7gf9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/s7mA//Dw5v/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////////9bau/9+iij/fooo/36KKP9+iij/foooqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooDX6KKNZ+iij/fooo/36KKP+Gkjb53N/G/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5ObU/+Tm1P/r7N7//f37///////////////////////////////////////////////////////////////////////p69v/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+Hkjf/z9Ku//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////////+nr2/+EkDL/fooo/36KKP9+iij/fooo1n6KKA0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigmfooo8X6KKP9+iij/fooo/5KdSvXg4s3/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tm1P/r7N7//f37/////////////////////////////////////////////////////////////////////////////////56nXv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+gqWH/6OnY//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////T17P+OmUP/fooo/36KKP9+iij/fooo8n6KKCYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKE5+iij+fooo/36KKP9+iij/oqtk9OLl0f/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/r7N7//f37///////////////////////////////////////////////////////////////////////////////////////V2Lj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4aRNv/GyqD/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////v8+f+cpVr/fooo/36KKP9+iij/fooo/36KKE4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooeH6KKP9+iij/fooo/36KKP+wtn315OXT/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/r7N7//f37/////////////////////////////////////////////////////////////////////////////////////////////f38/4uWPv9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/6iwbv/o6dn/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////7//v+psXD/fooo/36KKP9+iij/fooo/36KKHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iiijfooo/36KKP9+iij/fooo/77DlPfk5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/r7N7//f37//////////////////////////////////////////////////////////////////////////////////////////////////////+/xZX/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/lp9P/9favP/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////////+4voj/fooo/36KKP9+iij/fooo/36KKKMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooBn6KKMJ+iij/fooo/36KKP9/iyn/x8yk+eTl1P/k5dT/5OXU/+Tl1P/k5dT/5OXU/+Tl1P/r7N7//f37////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Tr/4GMLP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP+OmEL/yMyj//Ly6P/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////Fyp7/fooo/36KKP9+iij/fooo/36KKMJ+iigGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigQfooo1n6KKP9+iij/fooo/3+LKv/N0a375OXU/+Tl1P/k5dT/5OXU/+Tl1P/r7N7//f37//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+utnj/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4uWPv/DyJr/8PDl//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////N0qz/fooo/36KKP9+iij/fooo/36KKNZ+iigRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKB9+iijkfooo/36KKP9+iij/gYws/tHVs/vk5dT/5OXU/+Tl1P/r7N7//f37////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Tr/4eSN/9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/k51L/8jMo//w8OX/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////T2Lb/f4sq/36KKP9+iij/fooo/36KKOR+iigfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooLX6KKO1+iij/fooo/36KKP+CjS7709e3++Tl1P/r7N7//f37///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f4sr/go4v/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKf+hqWL/09a1//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////Y273/gYws/36KKP9+iij/fooo/36KKO1+iigtAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iig3fooo9X6KKP9+iij/fooo/4GMLPvS1bT6/f37/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f37/9rdwf+Nl0D/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/hZE0/7K4fv/j5dD/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////Y273/gYws/36KKP9+iij/fooo/36KKPV+iig3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKEJ+iij2fooo/36KKP9+iij/f4op+9favPn//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f37//Pz6v/y8un/7u7i/7/ElP+TnUz/fooo/36KKP9+iij/fooo/36KKf+YoVP/xMmd/+3u4f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////Y273/gYws/36KKP9+iij/fooo/36KKPZ+iihCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooQn6KKPl+iij/fooo/36KKP9/iin70NSx9v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Pz7//Pz6v/y8un/8vLp//Ly6f/y8un/8vLp/+jp2f/Z3MD/09a2/9zexf/s7N7/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////R1rP/gYws/36KKP9+iij/fooo/36KKPl+iihCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iihOfooo+H6KKP9+iij/fooo/36KKP3Jzqby/////////////////////////////////////////////////////////////////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////M0av/f4sq/36KKP9+iij/fooo/36KKPh+iihOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKEJ+iij2fooo/36KKP9+iij/fooo/77Ekuz//////////////////////////////////////////////////////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48//////////////////////////////////////////////////////////////////////////////////////////////////////////////////DyJv/fooo/36KKP9+iij/fooo/36KKPZ+iihCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooQn6KKPN+iij/fooo/36KKP9+iij/r7d66P3+/P///////////////////////////////////////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8+f/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////3+/P+2vYb/fooo/36KKP9+iij/fooo/36KKPN+iihCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iig3fooo636KKP9+iij/fooo/36KKP+ep13m+vr3/////////////////////////////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////r79/+nsG3/fooo/36KKP9+iij/fooo/36KKOt+iig3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKCt+iijkfooo/36KKP9+iij/fooo/4+ZRObz9Ov//////////////////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48/////////////////////////////////////////////////////////////////////////////////////////////////////////////P06/+ao1b/fooo/36KKP9+iij/fooo/36KKOR+iigrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooHH6KKNR+iij/fooo/36KKP9+iij/hJAy7ebo1fn//////////////////////////////////////////////////////Pz6//Pz6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////////+bp1v+Ml0D+fooo/36KKP9+iij/fooo/36KKNR+iigcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigPfooovn6KKP9+iij/fooo/36KKP9/iyr3z9Ov6f///////////////////////////////////////////Pz6//Py6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////////9PXtv+DjjD+fooo/36KKP9+iij/fooo/36KKL5+iigPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAZ+iiidfooo/36KKP9+iij/fooo/36KKP+ttXbe/f78/////////////////////////////Pz6//Py6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////f38P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//j48////////////////////////////////////////////////////////////////////////////////////////////////////////f78/7i/if9+iij/fooo/36KKP9+iij/fooo/36KKJ1+iigGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKHV+iij9fooo/36KKP9+iij/fooo/5CaRuDy8+n+/////////////////Pz6//Py6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b28P/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//n59f//////////////////////////////////////////////////////////////////////////////////////////////////////8vPp/52mXP9+iij/fooo/36KKP9+iij/fooo/X6KKHUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooSX6KKO9+iij/fooo/36KKP9+iij/gYws79ncv+v//////Pz6//Py6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//n59f//////////////////////////////////////////////////////////////////////////////////////////////////////3N/E/4iTOP1+iij/fooo/36KKP9+iij/fooo736KKEkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigkfooo1H6KKP9+iij/fooo/36KKP9+iij+rbR12PDw5v/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//n59f/////////////////////////////////////////////////////////////////////////////////////////////////8/Pr/ucCL/3+KKf9+iij/fooo/36KKP9+iij/fooo1H6KKCQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAt+iiihfooo/36KKP9+iij/fooo/36KKP+Jkzri4OLL9vLy6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//Py6f/z8un/8/Lp//n59f/////////////////////////////////////////////////////////////////////////////////////////////////r7d3/lqBQ/X6KKP9+iij/fooo/36KKP9+iij/fooooX6KKAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKGR+iij2fooo/36KKP9+iij/fooo/3+KKfm5vone8fHn//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//Py6f/z8un/8/Lp//n59f////////////////////////////////////////////////////////////////////////////////////////////7+/f/GzKH/gYws/X6KKP9+iij/fooo/36KKP9+iij2foooZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooKH6KKM5+iij/fooo/36KKP9+iij/fooo/4yWP9zf4crz8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//n59f///////////////////////////////////////////////////////////////////////////////////////////+rs3P+bpFj7fooo/36KKP9+iij/fooo/36KKP9+iijOfoooKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigFfoooh36KKP1+iij/fooo/36KKP9+iij/f4op+q60d9nv7uL/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T06//9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//Py6f/z8un/8/Lp//n59f//////////////////////////////////////////////////////////////////////////////////////+/v4/73Dkf+AjCv9fooo/36KKP9+iij/fooo/36KKP1+iiiHfoooBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iig+fooo4H6KKP9+iij/fooo/36KKP9+iij/hZAz59LVs+zy8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/4+PP//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/+/vz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Py6f/z8un/8/Lp//n59f//////////////////////////////////////////////////////////////////////////////////////3eDH/4+aRft+iij/fooo/36KKP9+iij/fooo/36KKOB+iig+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKA9+iiiafooo/36KKP9+iij/fooo/36KKP9+iij/maFT0ubn1ffy8un/8vLp//Ly6f/y8un/8vLp//Ly6f/5+fX//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//n59f/////////////////////////////////////////////////////////////////////////////////y9Or/q7Nz+36KKP9+iij/fooo/36KKP9+iij/fooo/36KKJt+iigPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKD5+iijXfooo/36KKP9+iij/fooo/36KKP9/iin1rbR21e3u4f/y8un/8vLp//Ly6f/5+fX//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/z8un/8/Lp//n59f////////////////////////////////////////////////////////////////////////////n69v+/xZT/go0u+36KKP9+iij/fooo/36KKP9+iij/fooo136KKD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooB36KKIF+iij5fooo/36KKP9+iij/fooo/36KKP+BjCzrv8WU3/Hx5//5+fX//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8/Lp//n59f///////////////////////////////////////////////////////////////////////v79/83SrP+Ikzj5fooo/36KKP9+iij/fooo/36KKP9+iij5fooogX6KKAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooKX6KKMB+iij/fooo/36KKP9+iij/fooo/36KKP+GkTXf1Ni32P///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f//////////////////////////////////////////////////////////////////////297C/5GbR/V+iij/fooo/36KKP9+iij/fooo/36KKP9+iijAfoooKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooUX6KKNx+iij/fooo/36KKP9+iij/fooo/36KKP+IkznZ0dWy3v7//v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f////////////////////////////////////////////////////////////7//v/X27z/lqBQ9X6KKP9+iij/fooo/36KKP9+iij/fooo/36KKNx+iihRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigGfoooc36KKPB+iij/fooo/36KKP9+iij/fooo/36KKP+Hkjbez9Sw2v7//v///////////////////////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f///////////////////////////////////////////////////////v/+/9favP+SnEn0fooo/36KKP9+iij/fooo/36KKP9+iij/fooo8H6KKHN+iigGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigUfooolH6KKPp+iij/fooo/36KKP9+iij/fooo/36KKP+FkDPcwseZzfv8+f7//////////////////////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f/////////////////////////////////////////////////7/Pn/ztKt/o+ZRPB+iij/fooo/36KKP9+iij/fooo/36KKP9+iij6fooolH6KKBQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigefooomH6KKPp+iij/fooo/36KKP9+iij/fooo/36KKP+AiyvtrLR1zPLz6ff//////////////////////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f////////////////////////////////////////////L06v+7wo76hJAy9n6KKP9+iij/fooo/36KKP9+iij/fooo/36KKPp+iiiYfoooHgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigefooomH6KKPp+iij/fooo/36KKP9+iij/fooo/36KKP9+iij6lqBQytzfxdr//////////////////////////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f//////////////////////////////////////4eTN/6Wtae1/iyr8fooo/36KKP9+iij/fooo/36KKP9+iij/fooo+n6KKJh+iigeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigefooolX6KKPV+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/go4v4bG4fcrw8ufz/////////////////////////////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f////////////////////////////Hy5//Axpb4ipU78H6KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij1foooln6KKB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigSfoooeX6KKOV+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/o2XQNHGzKHK+fn1+P///////////v7+//b27//y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8+n/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f/////////////////5+fX/0dWy+piiVOh+iij+fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKOV+iih5foooEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigGfoooW36KKMx+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKPeQm0bNxcqez+7v4/ny8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//n59f//////9vfx/8/UsPudplvngIsr+n6KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooozH6KKFt+iigGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooNH6KKJd+iijwfooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij7jJY/0ba8hcrh483q8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp/+nq2f/HzKHvlqBQ43+KKfx+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKPB+iiiXfoooNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooCX6KKFx+iii+fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/4KNLuWbpFjLxcqf1+rr2/jy8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp/+vr3f/O0qz5p69s5YaRNex+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooovn6KKFx+iigJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKCF+iih4foooyX6KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij9hZAz2pukWMi+w5LP3+HJ7fHy6P/y8un/8vLp//Ly6f/y8un/8vLp//T07P/9/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8vLp//Ly6f/y8un/8fLo/+Lkzf/HzKLxpaxo3ouUPOV+iij9fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKMp+iih4foooIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB+iigefoooc36KKMh+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9/iyrvjZdA0KSsZsXAxZXP293B5fHx5/79/fz///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+P/z8un/8vLp//Ly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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooBH6KKDR+iihtfooop36KKOB+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iijgfooop36KKG1+iig0foooBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooGH6KKEV+iihxfooonn6KKMp+iij0fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo9H6KKMp+iiiefooocX6KKEV+iigYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfoooAX6KKCJ+iihDfoooYn6KKIJ+iiihfooowH6KKOB+iij3fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij/fooo/36KKP9+iij3fooo4H6KKMB+iiihfooogn6KKGJ+iihDfoooIn6KKAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH6KKAF+iigEfoooBn6KKAh+iigLfoooDH6KKA1+iigOfoooDn6KKBB+iigQfoooEH6KKBB+iigQfoooDn6KKA5+iigNfoooDH6KKAt+iigIfoooBn6KKAR+iigBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
/9j/4AAQSkZJRgABAQAAWgBaAAD/2wBDABQODxIPDRQSEBIXFRQYHjIhHhwcHj0sLiQySUBMS0dARkVQWnNiUFVtVkVGZIhlbXd7gYKBTmCNl4x9lnN+gXz/2wBDARUXFx4aHjshITt8U0ZTfHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHz/wAARCAH0AfQDASIAAhEBAxEB/8QAGwABAAMBAQEBAAAAAAAAAAAAAAMEBQIBBgf/xAA8EAEAAgECAggCCAUDBAMAAAAAAQIDBBEhMQUSEzJBUWFxIoEGFEJSYpGhsSMzwdHhU3LxJDWy8DRDgv/EABoBAQADAQEBAAAAAAAAAAAAAAACAwQFAQb/xAArEQEAAgIBBAEDBAMBAQEAAAAAAQIDEQQSITFBURMyQiJhcYEjUpEUM7H/2gAMAwEAAhEDEQA/APswAAAAAAAAAAAAAAAAAAAAAAAAAAcXy1petbTt1uTyZiI3J5dgPQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUekJ+Okei8oa+f4tY/Cycyf8UrMf3O9Lqd9seSfaVxjLul1PLHkn2lRxeV+F0r09wuAOkpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGdrp/j/KGizdZP/UW9oYubP+L+1mL7kADjtK5pdTyx5J9pXWMuaXU8seSfaXS4vK/C6i9PcLoDpqQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmaud9Rf8A98GmytRxz392DnT+iP5W4vKMByWgABc0up5Y8k+0rrGXNLqeWPJPtLpcXlfhdTenuF0B01AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAyc3HNf/AHS1mRed72n1lzufP6arsXmXIDlrwAAAFzS6nbbHkn2ldYy5pdTttjyTw8JdLi8r8Lqb09wugOmoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGNPGWxadqzPox3M58/b/AGvxewBzVwBEbztAAnx6TLfnHVj1Wsejx042+KfVpx8XJf1pCb1hQpjvknalZlZx6GZ45LbekLsRERtEbQ9bsfCpX7u6qcsz4c0rFKxWN9o83QN0RrsqAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABT1Wpmt4pjnlO8/wBlnHeMlItHiqrmre80jzCU1mI27AWogAAAAAAAAAOMs7Yrz+GWS1s284bxEbzMSpY9HktxttWP1c7mY75LxFY2uxzER3VnePDkyd2szHn4L+PS4qeHWnzlOhj4M+by9nL8KePQ+OS3yhZpipjj4KxDsbseHHj+2FU2mfIAuRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEOpzdjj4d6eSW1opWbWnaIZWbLOXJNp+UeTJys/wBKuo8yspXqlxM7zvKzo83Uv1J7tv3VhyMd5x2i0NExuNNkQ6XN2uPj3o4SmfQUvF6xaGSY1OgBJ4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAr6rN2VNq963L0QveKVm0vYjc6QazP17dnWfhjn6yqg4GTJOS02lriNRoAQepMGWcWSLeHKWpExMRMcYljr2izbx2duccm/hZumeifanJXfdbAdZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5yXjHSbW5Qysl5yXm1ucptXm7S/VrPw1/WVdxuXn+pbpjxDTjrqNgDGsAAHtbTS0Wrzh4ETruNbFkjLji0eLtnaPN2eTqz3bfu0Xe4+X6tN+2S9emQBeiAAAAAAAAAADyZiI3mdoQ31eKn2utPoha9afdOnsRM+E4o310/YpEe6G2py353mPbgzW5uOPHdOMdpadrVrHxWiPeUNtXir4zb2hmzMzO88RltzrT9saWRij2uW10/Yp+co/ruX8P5K4zzycs/kl0V+Fj67l/D+R9dy/h/JXHn18v+0veivwsfXcv4fye/XsvlT8lYP8A0Zf9jor8LX16/jWr2NfPjjj81QSjlZo/J50V+F2NfXxpMfN3GtxTzi0fJnicczLHt59OrUrqMVuV4+fBJExMbxO8MdLirm33xxb3hfTm2mdTXf8ACM4o+WoI8Pa9X+LEb+iR0az1RtTPYASeAAAAAAAAAAAAAAAAAACtrM/Ur1Kz8VufpCyqZdH17TbtJ3nzhRyPqTTWOO6dNb7qIsW0WWOW1vaUdsGWvOlvycW2HJXzDRFon2jAVpAAAADS0ubtcfHvV4SzUmDLOLJFvDx9mjjZvpX3PiUL16oao8iYmImOMS9d1lAAAAAABWy6ulOFfin9FPJnyZe9bh5RyZMvLx07R3lZXHMr+TVYsfj1p8oVb63JbuRFY/OVYc/Jy8l/E6WxjrD217Xne1pmfV4DLMzPlYAAAAAAA9rW152rWZ9oIjfgeCxTR5Ld7aseqemixx3pm36NNOLlt60hOSsKCSmDLfu0n58GlTHSndrEfJ21U4EflKucvwoV0N571oj24pq6LHHembLI014uKvpCb2lxXFjp3aRHydg0RER2hAAegAAAAAAAAAAAAAAAAAAAAAAADy1a271Yn3hFbS4bfY29kwhalbfdG3sTMeFW2hpPdtaPfiitobx3bVn9F8U24mK3pKMloZdtNmrzpM+3FHNZrziY92w8mInmz24FfxlOMs+2ONW2DFbnSPlwRW0WKeU2r81FuDkjxO0oyw40ObeOzt4cYXFL6lalotjyRvHLeFyN9o35t/G+pWvTePCq+pncPQGlABW1GqjH8NON/wBkL5K446rPYiZnUJcuamKN7Tx8IUM2ovl4cq+UIrWm1pm07zLxx83Ktk7R2horSKgDKsAAAAAABLj0+TJyrtHnK1j0VK8bzNp/KF+PjZMniOyE3iFGtbXnasTM+ixTRZLd6YrH5yv1rFY2rERHo9b6cGkfdO1U5Z9IMekxU5x1p9U0RERtEREej0bKY60+2NK5mZ8gCbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABX1Wo7KvVrPxz+iGS8Y69VnsRMzqHGq1PU3pjn4vGfJRBws2a2W25aq1isACpIAAAAEuLBfL3Y2jzlexabHi47da3nLTi418vfxCFrxVTxaXJk4zHVr5yuYtNjx8dutPnKYdPFxsePvrcqLXmQBpQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAR5skYsc2n5R5su1pvabWneZTarN2uTaO7XhCBxeVm+pfUeIacddQAMiwAAB3ixWy26tY958nsRNp1B4cxE2mIiN5ldwaOI+LLxn7qbDgrhjhxt4yldXBw4r+q/eWe2TfaHkRtG0cnoN6oAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQavL2eLaO9bhCdmarJ2maduUcIZeVl+nj7eZTpXcoQHEagAAHePHbLeK1/4exEzOoHuHDbNfaOXjPk0seOuKsVrHD9zFjripFa/8u3a4/HjFG58st79QA1IAAAAAAAAA5veuOvWtO0KWbWWtwx/DHn4qcuemKP1JVrNvC5kzUx9+0R6Kt9d/p0+cqczvO8jm5Obkt9vZdGOI8prarNb7e3sjnJeed7T83IyzkvbzKyIiHvWt96fzdRmyV5Xt+bgRi1o8SahYrrMtee1veE9NbSe/E1/VQF9OVlr72jNKy16XreN62iY9HTHraazvWZifRaxa2Y4ZY3jzhuxc2tu1+yq2KY8Lw5pet671mJh03RMT3hUAPQAAAAAAAAAAAAAAAAAAAAAAAAAAABFqcnZ4ZmOc8IZa1rsnWyRSOVY/VVcXl5OvJr4accagAZFgAA09Nh7LHx7081TRY+vl608q/u0XT4WHt9Sf6UZbegB0lIAAAAAAKus12LRxWLb2y3namOvetKxTrdSO02623HbkDpFnzVw13njM8odZMlcdJtblDMy5LZbza3/AAycnkfSjUeVlKdRky2y261p+Xk4BxpmbTuWnwAPAAAAAAAAB3jyWxW3pOzQwaiuaNuVvJmETMTvE7S0YeRbFP7IWpFmyK2m1PafBfhfz81l2seSuSvVVmmJidSAJvAAAAAAAAAAAAAAAAAAAAAAAAB5MxETM8oeoNXfq4J87cEL26Kzb4exG50z72m95tPjO7kHzszudy2AAAANDRV6uHf70rLjFXq4qV8odvocVeikVY7TudgCx4AAAAMrpjpnH0fWcePbJqJjhXwr6yj6b6ajRRODTzFtRMcZ8Kf5fLafFl12spjiZtky242nj7ysrX3I+g+j2myarPfpLVzN7zPVxzb9Z/p+b6LkjwYaafBTDjjalI2hDrcvVr2dedufsozZYpWbS9rG50ranN2t+HdjkhB8/e83tNpa4jUaAEXoAAAAAAAAAAABHCd4aOl1Ha16tu/H6s57W00tFqztML8GacVt+kbV6obAjw5Yy44tHPxjySO7W0WjcMkxoAegAAAAAAAACPPe2PFa1dt480bWisTMvYjaQVKa6J79Zj1hPTNjyd20T6K6Z8d/tl7NZjykAXIgAAAAAAAClr7caV+a6zdZbrai3pwY+bbWLXysxx+pAA4zSAAOqR1r1jzmIcpdNG+op7pUjqtEPJ7Q1AH0bGAAAAMjpzpeNBi7LDMTqLxw/BHmt9J6+nR2ktltxvPClfOXwubNfUZrZctpte87zMp0rvuObWte02tM2tM7zM+L6P6KaP8Amay8fgp/Wf2/V83ETaYiI3meEQ/QdBpo0miw4I+xXj6z4/qnedRoTzMREzPKGVlvOTJa0+Mr+rv1ME+duDNcXnX3MUX4o9gDnLgTYtNky8YjavnK3j0mOnGY60+rRi42TJ31qELXiFGmK+TuVmU9NDee9aK/qv8ALkN9ODSPu7qpyz6Va6HHHObS7jSYY+x+spxojBij8YQ67fKCdJhn7G3zlHfQ1nuWmPfithbj4reakXtHtl5dNkx8ZjePOETZVs+krfe1Pht+ksObha74/wDi2uX5Z49tWa2mLRtMPHO8LgAAAE2mzdlk492eEtNjNHR5evi6s86/s6PCy9/pz/SnLX2sAOooAAAAAAAAHGaOthvHpLsnjDy0biYIYw9mNpmPJ4+bbUtNRlpyvO3lPFYprv8AUp84UhdTkZKeJRmkS1aZ8eTu3jfyngkYySmbJj7t528mynP/AN4/4rnF8NUUqa6f/srv6wsU1GK/K0RPlPBspyMd/EqppaEoC9EAAZOWetlvPnMtWZ2iZY7m8+e1YXYvYA5i8AAT6OP+or6RKBY0X8+PaVuD/wCtf5Rt9stEB9AyAADyZisTMztEc5esb6S636toexpO18/D2r4/2exG50PnumekJ6Q1trxM9lT4ccenn81AGiI0NHoDT/WOlcMTG9afHPy5frs+4fM/RHD8WpzT4RFI/ef6PplN57in0hbuV95UlrXz/GrH4UeDT2zT5VjnLg54tkzzFWmmor3R48dslurSN5X8Okpj43+K36Qmx46469WkbQ6b8PErj727yqtkmfAA2KwAAAAAAAEGpwRlrvHfjl6s2Y2naebZUtbh2ntKxz5udzMG4+pX+12O3qVMBy14AAl02Ts80T4TwlEJVtNbRaHkxuNNkRae/aYaz48pSvoa2i0RaPbJManQAk8AAAAAAAAZWeOrnvHqjT62NtRM+cRKB89ljpyWj92uveIAFaQAA9rWbTtWJmfRNh0t8vGfhr5yv4sVMUbUj5+MteHi3yd57QrtkiEOmwXx8b3n/bE8FkHXx0jHXpqzzMzO5AE3jnJwx29pZDXy/wAq/wDtlkOXz/NV+LxIA5y4AAT6L/5Ee0oE2lnbUUW4Z1kr/KNvEtMB9AyAAD4j6Qar6z0pl2n4cX8OPlz/AF3faZskYcGTLPKlZtPyh+dWtN7Ta07zM7zKzHHseALh9h9FqdXoubffyTP7R/Rssv6Of9mw+9v/AClqM1vIq5cE5tTx4ViI3lZrWKxEVjaIeiqmOtJm0eZezaZ7ACx4AAAAAAi1GoxaXF2ua3VpvEb+87JImJiJid4lgfS3P1dNgwRPG95tPtH/ACh+jfS0xaui1FuE/wAq0+H4f7JdPbY+mARBzesXrNZ5TDoJjfaRkXrNLzWecTs5WtdTbJF4+1Cq+ey0+neatdZ3GwBWkAAuaC/fp84XWZpLdXUV9eDTdnh26sWvhmyRqwA2KwAAAAAAAFHXx8dJ842VF7Xx/DrPlOyi4fLjWaWrH9oCzh0lr8b/AA18vGVNMdsk6rCUzEeUFKWyW2pG8r2HSVpxv8Vv0hPSlcddqRtDp1cPErTvbvLPbJM+ABtVgAAAObxvS0ejIbLHtG1pjylzOfH2z/K/F7eAOauAAHeKerlpPlMOB7E6nY2Rzjt16Vt5xu6fRxO42xAD0Uemr9TonUz+Db8+D4R9x0//ANm1PtX/AMofDrsfgAFg+x+i+SL9FdXxpeY/r/VsPlPopqYx6rLp7Twy13r7x/j9n1bPaNSACIAAAAAAAjz5a4MGTLfu0rNp+QPkPpLqO26UtSJ+HFWKfPnP7smJmsxNZmJjjEw7zZLZs18t+9e02n3lw0xGo0Pu+h9d9f0NMs/zK/Df3hefI/RbVdlr7YJn4c1eHvHH9t31yi0akAERX1tetg3+7O7OaueN8N4/DLKcjnV1kifloxT2AGFaAA6xz1clZ8piWuxmxWd6xPnDp8CfuhRl9PQHSUgAAAAAAAINZG+nt6bSoYsV8s7Uj5+ENW1YvWa24xJWsVjasRER5MeXjRlydUz2WVv0xpDh01MXGfit5ynBppStI1WEJmZ8gCbwAAAAAAZWor1c949d2qz9dXbLFvOGHnV3j38LcU91YByGgAAABo6K/WwRHjWdlhQ0N+rlms/ahfdzi368Ufsy3jVgBpQUumadfonVR+CZ/Li+Dfo2bHGXDkxzyvWaz84fnVqzS01tG0xO0wtxjwBaJNNntptRjzY+9S0TD9A0+empwY82Od63rvD87b/0Z6SjFk+p5rbUvO+OZ8LeXzV3jcbH1QCkAAAAAAGB9Kdb2emrpKT8WX4relY/z+za1Oox6XT3zZp2pSN59fR8FrdVfW6rJnyc7TwjyjwhOkbnYgAXix0flnDr9Pkj7OSu/tvxfoL84w7zmpEc+tD9HU5AAVjm/ct7SyGvknbHefKJZDl8/wA1X4vYA5y4AAa2L+VT/bDJa+Phjp7Q6PA+6ynL4h0A6igAAAAAAAAAAAAAAAAAAAAVtdTrYot92Vlzkr16WrPjCvLTrpNXtZ1O2QPZiYmYnnDx882AAAAPaWmlotHOJ3a9bResWjlMbsde0OXes455xxhu4WTpt0T7VZa7ja2A67OPh+ntN9W6VzRttXJPaV+fP9d33DD+k+i7fR11FI3vh5/7Z/8Af3TpOpHyQC8CJ2neOYA+t6D6brqq10+qttnjhW0/b/y3H5tE7TvDd6O+kmXBEY9ZWc1I5XjvR/dVanuB9YKmk6S0msiOwzVm0/ZmdrfktqgB5M7RvPCAeuM2bHgxWyZrxSleMzLN13T2j0kTWlu3yfdpPD5y+W6Q6S1HSGTfNbakd2leUJ1pMifpnpa/SOXq03rp6T8NfP1lmguiNAA9FvorDOfpPTY4jf44mfaOM/s++fM/RTR72y6u0cI+Cn9X0yi89wAQEOqt1dPf14Mxd19+FafOVJxubbqy6+GnHGqgDGsAAGxEbREeTKw162akesNZ0+BHa0qMvoAdJSAAAAAAAAAAAAAAAAAAAAAAztZj6mbrRytxV2nqsXa4ZiOccYZjicvH0ZN+pacdtwAMqwAAdUvOO8WrzhyETMTuBr0vGSkWryl0ztJn7O3VtPw2/SWi72DNGWm/bJavTI8tWL1mtoiazG0xPi9F6L4Tpfo+3R2rmm0zitxx29PL5KL7/pDQ4ukNNbDl4TzrbxrPm+H1mky6LUWw567WjlPhMecL622IAEwAAWcXSOswxtj1WWI8utMwrDwX56b6RmNvrVvyj+ytn1mp1H87PkyR5WtMx+SENQAD0AAEul02TV6imDFG9rzt7eqKtZtaK1iZmZ2iI8X2fQXRUaDD2mWI+sZI4/hjyRtbUDQ0mnppNNjwY+7SNvf1TAzgCvrMvZ4+rHetw+SGS8UrNpexG50pajJ2ma1vDlCMHz1rTaZmWuI12AHj0ABY0Vetn3+7G7RVdBTbHa33pWnb4lOnFH7s2Sd2AGpWAAAAAAAAAAAAAAAAAAAACPFmplm0VnjEpEa2i0bh7MaGbq8XZ5d47tuMNJHnxRlxzXx8JU8jF9Wmo8pUt0yyh7aJrMxMbTDxwmoAAAAXtJqOtEY7zx8J81EW4stsVuqEbVi0abIq6bVdfamSfi8J81p3MeSuSvVVlmJidSKuv0GDpDD2eevLu2jnWfRaFjx8J0l0TqOjr/HHXxTPDJXl8/JRfpFq1vWa2iLVnhMTG8Sw9f8ARrDm3vpLdjf7s8az/ZbF/kfJi1rOjdXopnt8Nor9+ONfzVVgAPQAAArE2mIrEzM8ogB1ix3zZK48VZve07RERxlqaH6PazVTFstewx+d44/k+n6P6M03R9NsNN7zHxXtxmUJvECl0L0JXRRGfUbW1E8o8Kf5bIKZnYA8mYiJmZ2iHg8vaKVm1p2iGXlyTlyTafl6JNTqJy22r3I5eqBxuVyPqT018Q046a7yAMawAAIiZmIjnIsaLH18vWnlX908dJvaKw8mdRtfx07PHWseEOgfQxERGoYwB6AAAAAAAAAAAAAAAAAACLUZOzw2nxnhCVQ12Te8Uj7PGVHIyfTxzKdI3KtW00tFqztMNLT54zV8rRzhmOqXtS0WrO0w5ODPOKf2X3p1Q1xFgz1zV35WjnCV262i8bhmmNdpVNZg60dpWOMc1Fss7Vafs7dasfBP6ObzOPr/ACV/tdjv6lXAc5cAAAALen1e21cvGPCyoLMeW2Od1RmsW8tiJiY3id4esvDnvhn4Z3jylexanHl4b9W3lLr4eVTJ2ntLPakwmAakHkxvG08YZ+p6E0Gp3m2GMdp+1j+H/DRHsTofN5vopHPBqpj0vX+sKl/oxrq92+G0elp/s+vEuuR8dH0Z18/6Uf8A7/wnx/RXUT/N1GKv+2Jt/Z9UHXIw8H0Y0mPjmyZMs+W/Vj/35tXT6LTaWNtPhpj9Yjj+acRmZkAHgAhzammLh3reUI3vWkbtL2ImfCS1q0rNrTtEM/Uamcs7V4U8vNxlzXy23tPtHkjcnkcqcn6a9oaKY9d5AGJYAAAAc2pp8XZYor485VdFh61u0tHCvL3X3U4WHUfUlRlt6AHRUgAAAAAAAAAAAAAAAAAAAPLTFazaeURuyb2m95tPOZ3Xtdk6uKKxzt+zPcnnZN2ikemjFHbYAwLXVL2x2i1Z2mGlgzVzV3jhMc4ZbrHe2O0WrO0w08fkTin9kL06mu8tWLVmLRvEuMOauam8cJ8Y8kjtRMXjceGaY1LM1GCcNuHGs8pQti1YvWa2jeJZuo084Z3jjSeUuTyeNNP1V8f/AIvpffaUIDEtAAAAAAT4tVkx8N+tHlK1j1mO/e3rPqzhox8rJj7b3CE0iWxExaN6zEx6PWPW1qzvWZifSU1dXlr9qLe8NtOdWfuhXOKfTSFGNfP2qRPtLuNdTxpZfHKwz7Q+nZbFX69j+7Z5Oup4Us9/9OL/AGOi3wtilOvn7OOPnKK2sy25TFfaELczFHju9jHZozMRG8ztCHJq8VOU9afRn2va8/FaZ95cst+dafsjScYo9p8uqyZOET1Y8oQAw3va87tO1sREeABF6AAAAO8OKct4rHznyc1rN7RWsbzLTwYYw02jjM85aePgnLbv4Qvbph3SsUrFaxtEOgduI12hlAHoAAAAAAAAAAAAAAAAAAAjz5OzxWt4+Dy1orEzJEbUNVk7TNO3KOEIQfO3tN7TafbZEajQAi9AAdY8lsd4tWeLTw5q5qb15+MeShTTZb8q7R5zwWsGl7K3Wm87+UcnR4n1qz4/SpydM/ysvJiJiYmN4l6OooUNRpZpvbHxr5eSq2VbPpIvvbH8NvLwlzM/D/LH/wAXUyepZ49tS1LdW0bS8c2Y12leAAAAAAAAAAAAAAAAAAAAAAPa1m9orWN5l1jx2y26tI/w0cGCuGvDjaectODj2yzv0ha8VeafBGGvHjaecpgdqlIpHTVmmdzuQBJ4AAAAAAAAAAAAAAAAAAAAKOvybzXHHhxldmYiJmeUMnJecmS1vOWHm5OmnTHtbijc7ciammy3+ztHnPBYpoax37TPpHBz6cbLfxC2b1hRTU02W/2do854NCmKmPuViHbbTgx+cq5y/CpTQ1jv2mfSOCxTFTH3KxDsbKYcdPthXNpnyALUQAAAHGTHTLG143Us2kvTjT4q/q0BRl49MvnylW81Yw1Munx5eMxtPnCnl0mSnGvxx6c3Ly8TJj7x3hfXJEq4cuYyrAAAAAAAAAAAAAAAEuLBky92No855Pa1m06rDyZ15RLGDS2ybTb4a/rK1h0tMfGfit5yndLDwveT/im2X4c0pXHXq0jaHQOjEREahSAPQAAAAAAAAAAAAAAAAAAAAABzesXrNZ5TzeUxUx9ysQ7HnTG967vdgD14AAAAAAAAAAAAAA4yYqZO/WJ9VXJofHHb5SuinJgx5PuhKLTHhlXwZMfepO3mjbKO+HHfvUiWK/A/0n/qyMvyyhftocc92bR+qO2hv9m8T78Ga3Ey19LIyVlUE86PNHKIn2lzOmzR9iVU4ckeay96o+UQk+r5f9O35Pfq+X/Tl59O/wAS93CITRpc0/Y/WHcaLJPOax80owZZ/GXnVX5VhdroI+1eflCWukxV+zv7yurwss+eyM5Ks6tZtO1YmZ9E+PR5Ld7aserQiIrG0RER6PWunBrH3TtXOWfSDHpcdOMx1p85Tg2UpWkarGlczM+QBN4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//Z
/9j/4AAQSkZJRgABAQIAJQAlAAD/2wBDABQODxIPDRQSEBIXFRQYHjIhHhwcHj0sLiQySUBMS0dARkVQWnNiUFVtVkVGZIhlbXd7gYKBTmCNl4x9lnN+gXz/2wBDARUXFx4aHjshITt8U0ZTfHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHz/wAARCAC6APkDASIAAhEBAxEB/8QAGgABAAMBAQEAAAAAAAAAAAAAAAMFBgQCAf/EAD8QAAICAQEDBQ0IAQMFAAAAAAABAgMEEQUhMQYSE1GxIjM0NUFScXJzgqGywRQVIzJCYYGR0RZTYiRUY5Lh/8QAGgEBAAMBAQEAAAAAAAAAAAAAAAIEBQMBBv/EACYRAAICAgEDBQADAQAAAAAAAAABAgMEETESMjMTISJBcSNCYYH/2gAMAwEAAhEDEQA/ANmAAAAAAAAAAAAAAAAAAAAADxbbCmDnZJRivKzh++sTnad3p183cTjCUuEQlZGPcyxBHTdXfBTqmpRflRIQa1yST37oAAHoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABnNs5Ercx169xXuS/fyleWW2saVeU7ku4s8vUytNerXQtGJdv1Hs7tk5EqcyEU+4sfNa7DSmc2PjSuy42adxW9W/38iNGUsrXX7F/D36fuAAVS4AAAAAAAAAAAAAAAAAAAAAAAAAAAADzz4+cv7APQHHgAAAAAAADzOEZxcZxUovimjk+6sPnc7of45z0O0ElKUeGRlCMuUeYVwrgo1xUYrgkj0ARJAAAAAAAAAAAAAAAAAAAAAAAAAArdr57xoKqp6WzW9+aiUIOb0iE5qEepkmbtSnEbgvxLPNXk9LKe/a2Vc90+jXVDd8Thb1erBpwohD/TLsvnP70j3Oyc3rOcpel6nk+Df1HbRw1s9RlKL1i2n+x01bRyqfy3Sa6pb+05AeOKfKPU5R4ZfYm2oWNQyYqt+cuH/wALVNNap6pmMLbY2e4WLGtesJfkb8j6indjpLqgXqMlt9My+ABRL5WbYzrMWMIUvmynq29OCKj7xy/9+Z28oO/0+q+0qDTohH009GVkTl6jWzQbHzrclzrufOlFaqWhaGf2B4ZZ7P6o0BTyIqM9Iu48nKtbIcp2Rpcqno1x9BX/AGm7/cZbFbmY/RS58F3D+Bj5kLF84t6NClx7WhXm2Rfd90iwrnGyClF6plKT42Q6Z798HxRXx8uUZam9o6WVJrcS1B8TUkmnqmfTZKYOfMzK8Ornz3yf5Yriz3kXwxqZW2PSK+P7GWy8meVe7LP4XUuosUU+o9vgr33emtLk6bdr5dkm4zVa6oojW0cxtJXzbOQu9jbP0Syblv8A0J9pdmq6470UIepbLW2WmMrVj19O9bNO6JQDLb29mslpaAAPD0AAA+NqKbb0S3syGTe8jIstl+p/0vIafaU+jwL5LzdP73GTL+JH2cijlv3UQWuy9lrJj01+qr/TFfqKuKcpKK4t6Gyrgq64wj+WKSR0ybHBJL7OePUpvb+jxVjUUrSuqEfQt5KAZrbfJopJcHiymq1aWVxl6VqVO0dkQVcrcVNOO9w6/QXIJwslB7TITrjNaaMUfU2mmtzRLm1qnMurW5KT09BCa6e1syXHT0a/Eu+0YtVvllHf6fKTFbsKfOwNPNm19fqWRj2R6ZtGvW+qKZQ8oe/0+q+0qC35Q9/p9V9pTmnR40Zt6/kZbcn/AAyz2b7UaAz3J/wyz2b7UaEpZPkLuN4wfJRUouMlqnxPoK3JYKjJodFmnGL4MiLm2qN1bhL++oqLa5VTcJcV8TDysf0pbXDL1VnUtPk6MLJ6N9HN9y+D6ixlKMIuUmlFLVt+Qozvw8hWR6G3R7tFr5V1FjDyNfxz/wCHO6v+yKXaWdLMu3aqqP5V9TiO7amC8O7WG+qf5X1fsR7PwpZt/N3quO+cuo+rjKEYbXB8/KM5T0+To2Ts/wC0z6W1fhRfDzmaM811xqhGEEoxitEkejNtsdktmjVWq46AAOR1AAAAAAOLbHiy73fmRljUbZ8WXe78yMsaWJ2P9KGSvmibF35VK/5x7TYmNxfC6fXj2myOWZyjpjcMAApFsAAAyu1t20rvSuxHGdm1/GV3pXYjiNqvsX4ZU18maHk94JZ7T6Itip5PeCW+0+iLYy7/ACM0KexFByi7/T6r7SoLflF3+n1X2lOaOP40Url82W3J7wyz2b7UaEzvJ7wyz2b7UaIo5XkLeP2AAFY7ggysdXw6prgycEZwU4uMuD1Np7RRSTi2mtGuITaeq3NE+dKMsmXN8m5+k5z52ceibS+jSi9rZZShHaGDKEt0nu16n1k2LjQxKI1VrcuL631kGzE+jm/Jqdp9BRZKdK2Z1kIqxtAAHQiAAAAAAAAAcO2fFd3u/MjKmq214ru935kZU08Tsf6U8hfIlxnpk1Pqmu02Zh02mmuKNpj3RyKIWx4TWpzzFwyWP9okABQLQAPkpKMXKT0SWrYBlNrPXaV/pXYjjJMm3p8m23z5NojNyC1FIzZe7bNFydX/AEdj/wDJ9EWxXbChzNnRfnycvp9CxMi57sZerWoIz/KPv9PqvtKcuOUff6fVfaUxp4/jRUtXzZb8nfDLPZvtRojOcnfDbPZvtRoyhleQs0dgABWOwOTNyehjzIPu38CXJyFj16vfJ8EU8pucnKT1b4so5eR0LojyWKaur5Pg+HqEZWTUYrVs88SzxqY4lMrrfzJav9kZ1FDulpcFmyagtnjLujs3A7lrpHuj+76yTZ2dHNo5y0Vkd049TM3n5s829zluit0Y9SPGJlWYl8ba3w4rrXUfXRw0qulcmK7257+jZAixsivKojbU9Yv4PqJSi009Msp7AAPAAAAAAAcO2vFd3u/MjKGq214qu935kZQ08Pxv9Kty+R9O7Z207MF83Tn1N6uOvD0HFVDpLYVp6OUktfSfbqp0Wyrsi4yi9GizKMZfGRyW17o09W2sKxb7HW+qUX9Cb7yw/wDuK/7MeCs8OH0zr60jWWbYwq137nPqimyn2jtieXB1UxddT468ZFWCcMaEHvkjKyUvY+nqEJWTjCC1lJ6JHgv9ibNlBrKvjo9O4i/J+50tsVcdsjGHU9Fvj1KiiuqPCEUiQAxm9+5eM/yk7/T6r7SmLjlJ3+n1X2lNqa+P4kUrF8mW/J3w2z2b7UaMznJzw2z2f1RoyhleQsVdoPFtkaq3Ob3L4nptRTbeiXFlPl5LyLN26C4Izsi9VR/0tVVub/wjvuldY5y/hdR4Ph14OL00ufNdwvizGjGVs9Lll9tQjsmwMXTS6xeqvqWABuVVKqPSjOnNze2ZrbGzvss+mpX4MnvXmv8AwVZt7K421yhZFSjJaNMye0sGWDfzd7rlvhL6GxjXda6ZclKyvXuj1szPlhX79XVL8y+pqoTjZBTg1KMlqmvKYctti7S6Cax7n+FJ9y3+l/4GTR1LrjyKp69maQAGYWgAAAAADg234qv935kZM1m2/FV/u/MjJmph+N/pWt7ibE8Lo9pHtNVm7PozY/iLSa4TXFGUxPC6PaR7TbHPLk4yi0SqSaezM37Byq2+i5tsf2ej+JyS2dmRe/Gt/iOpsQc45k1yiTqiY2Oz8yXDGt/mLR007DzLH3UY1rrlL/BqQHmTfCCqRW4WxqMZqdn4ti4Nrcv4LIAqynKb3JnRJLgAAienBtTZyz4Q0nzLIa6Nrcyq/wBPZWvfKdPS/wDBpAd4ZE4LSIOEW9sr9l7M+wKcpTU7J7ty3JFgAcpyc3tkkklpEGXTO+nmVyS379fKcH3bf1w/stgVbMeFj6pHaFsoLSK6rZmj1tmmuqJYRioxUYrRLgj6CddMK+1EZzlPkAA6kARZGPXlVOq6POi/gSg9Tae0DPXcnrVJ9BdCUf8AnuZF/p/L86r/ANn/AINMCwsqxHP0okOJXZTjV12zU5xWjkvKTAFdvb2dAADwAAAHBtvxVf7vzIyZrNt+Kr/d+ZGTNTD8b/Svb3EuJ4XR7SPabYxOJ4XR7SPabY45vKJVcMAAonYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA587HeVh20p6OS3a9fEy09mZkJNPGsfoWpsQWKr5VLSISgpGY2bsrJll1TtqlXXCSk3LdwNOAQttdr2z2MVEAA5EgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//2Q==
AAABAAQAEBAAAAEAIAAoBQAARgAAACAgAAABACAAKBQAAG4FAABAQAAAAQAgAChQAACWGQAAgIAAAAEAIAAoQAEAvmkAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2Tg3VdlRD1XdWXNZ4VVHVd1MrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA03VQI9d3VqfYd1b42HpZ/92Kbv/YeFf/2HhX/9h3Vt7quKaQ+/f3PQAAAAAAAAAAAAAAAAAAAAAAAAAA13hWU9d4VvXqt6X/8MzA//fl3v/029L/2Hpa/9h4V//45+L//fv6/+CWe8fPcFAQAAAAAAAAAAAAAAAA13VURth3VvzinYX/9+Xf//fk3f/twrP/2HhX/9h4V//YeFf//Pf1//LSx//YeFf/13hWwMxmMwUAAAAA0XRGC9d3VufYeFf/6rak//z18///////562Z/9h4V//YeFf/2HlY//z39f/rvKz/2HhX/9h4V//Wd1Z2AAAAANZ2V3DYeFf/2HhX/9l8XP/68Oz///////fl3v/vyLv/8tTK//TZ0P//////+/Lv/+Kbg//YeFf/13hX7tVVVQbXd1bB2HhX/9h4V//Ye1r/9uDY///////////////////////////////////////+/Pz/4pyE/9l+Xv/WdlVF2HdX69h5WP/ejXH/5qqW///////////////////////////////////////////////////////35uD/2HtbcOOehfn139f/8tXK//Xe1v/9+vn//////////////////////////////////////////////////////+iqlpnvyLrx2Hpa/9h4V//YeFf/3Idq/+m0ov/ruqr/5qmU/9+Rd//fk3j/4JZ9/+eumv/////////////////vybqb6LCcv9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//bhWf/+/Lv/+ixnv/nrpr/9+Xff9d6WkfYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9l7W//YeFf/13hXyAAAAAAAAAAA2HdXtth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/dV3VTwAAAAAAAAAANVxVRLXd1bY2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VW8AAAAAAAAAAAAAAAAAAAAA1XFVEtd3VrTYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW79d3VVoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XhVQtd3VqHYd1be2HhX99d4VuzXd1bH13ZWedJ4SxEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMhtSQ7Vd1ZW13hWgNd4V5nXeFez13hXs9d4V5nXeFaA1XdWVshtSQ4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdd1VlnXd1a613dX+th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dX+td3VrrXdVZZAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3VkfYd1bP2HhX/9h4V//YeFf/2HhX/9h4V//bhGb/4Zd+/9l9Xv/YeFf/2HhX/9h4V//YeFf/2HhX/9h5WP/twbHm/fPwzf///6H///8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL9AQATYeFaV2HhX/9h4V//chmn/5qqV/+KchP/ZfV3/8c7D////////////8MzA/9h4V//YeFf/2HhX/9uDZf/wzcH/9d3V////////////89bM0r9AQAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXa1ET13dXv9h4V//YeFf/35B1//z28////////v39//Xc1P///////fr5//LUyv/fkHX/2HhX/9h4V//YeFf/5KGL//////////////////Tb0v/YeFf/13dXv9drURMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv2BACNd4V8jYeFf/2HhX/9l8XP/57ej//////+y+rv/03NP///////nr5//bhWj/2HhX/9h4V//YeFf/2HhX/9h4V//joIn/////////////////46GK/9h4V//YeFf/13hXyL9gQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXeFak2HhX/9h4V//YeFf/6rmo///////uxrn/78m7////////////4puD/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+GXff////////////z39f/Ye1r/2HhX/9h4V//YeFf/13hWpAAAAAAAAAAAAAAAAAAAAAAAAAAA13dWZdh4V//YeFf/2HhX/9h4V//57en///////DMv//+/v7////////////agWL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ypt////////////9d7W/9h4V//YeFf/2HhX/9h4V//YeFf/13dWZQAAAAAAAAAAAAAAANF0RgvXd1bn2HhX/9h4V//YeFf/2HhX//LVyv///////vz7/////////////////+CUev/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//jn4j////////////x0cb/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1bn0XRGCwAAAAAAAAAA13ZWf9h4V//YeFf/2HhX/9h4V//YeFf/3IZp//349///////////////////////67ur/9h4V//YeFf/2HpZ/9qBYv/bgmT/2HhX//HQxf////////////vy7//ch2r/2HhX/9h4V//YeFf/2HhX/9h4V//XdlZ/AAAAAIAAAALXeFfo2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/67uq///////////////////////78/D/9+Pc//z18//////////////////+/f3//v39//////////////////z39f/mqZT/2HhX/9h4V//YeFf/2HhX/9d4V+iAAAAC13dUOth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Zfl///PXz///////////////////////////////////////////////////////////////////////////////////////wzcH/2HlY/9h4V//YeFf/2HhX/9d3VDrWdleK2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+Wlj//+/f3////////////////////////////////////////////////////////////////////////////////////////////nrJj/2HhX/9h4V//YeFf/1nZXitd4VrvYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//diWz//vz7//////////////////////////////////////////////////////////////////////////////////////////////////nr5v/67un/89fN/9qCY//XeFa713hW1dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/+arl///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////89XL/9d4VtXYd1bv2HhX/96Oc//uxbf/9+bg//vz8f/78e7/+u7q////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////35R58td4VvXsva3//v7+//7+/v/68Oz/+evn//349//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////svKv56LKg6v36+f/ps6D/2oBh/9h4V//YeFf/2HhX/9yHav/ko43/+erl///////////////////////////////////////78/H/+/Pw//77+/////////////349v/35d////////////////////////////////////////HQxfH77en05qiT/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Ze1v/5KSO/+7GuP/z1cv/8tPI/+zAsP/ko43/24Nl/9h4V//YeFf/2HhX/9l+Xv/agmP/2HhX/9h4V//89/X/////////////////////////////////8tTJ6P359/fZe1v/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//Xe1v/////////////////////////////////349vg/Pb039h5WP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/7L+v///////9+vn/7sa4/+iyoP/kpI7/8M3B//76+Ov9+/mA24Fj9dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//di27/+/Lv/+aplP/YeFf/2HhX/9h4V//XeFb17dHIHAAAAADXeFag2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeVj/2HhX/9h4V//YeFf/2HhX/9d3V58AAAAAAAAAANV3VR7Yd1b42HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf31XdVHgAAAAAAAAAAAAAAANZ2V4rYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9Z2V4oAAAAAAAAAAAAAAAAAAAAA0XRGC9h3Vs/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1bP0XRGCwAAAAAAAAAAAAAAAAAAAAAAAAAA03JPHdd3VufYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dW59NyTx0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hVM9d3VufYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VufXeFUzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0XZSHNd4VszYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFbM0XZSHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxnFVCdd3V4fYd1b22HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1b213dXh8ZxVQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2ThrXeFeZ13dW8th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1by13hXmdh2ThoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC2bUkH1XVVSNh3V5bXd1e/13hX2dd4VvPXeFbz13hX2dd3V7/Yd1eW1XVVSLZtSQcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/QEAE13dWlNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9uEZv/y1cr///////////////////////79/f/hl37/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//fk3j/5KKL/+Wlj//y0sf////////////////////////////+/v60////AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXa1ET13dWvth4V//YeFf/2HhX/9h4V//YeFf/2Xtb/+mzof/z183/9uHa//PXzv/mq5f/2HhX/96Ncv/67+v/////////////////////////////////4p2F/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//lp5H////////////////////////////////////////////ux7n/2HlZvtdrURMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWdFcs2HhX3dh4V//YeFf/2HhX/9h4V//YeFf/2X5f//Xf2P///////////////////////////9+Qdf/78u//////////////////////////////////9NrR/9h6Wf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/78q9///////////////////////////////////////02dD/2HhX/9h4V//YeFfd1nRXLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1ZN13hW89h4V//YeFf/2HhX/9h4V//YeFf/2HlY//PYz/////////////////////////////359//68Oz///////////////////////Xf2P/or5z/35F3/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//PWzP//////////////////////////////////////4JV7/9h4V//YeFf/2HhX/9d4VvPXd1ZNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADVd1U813hW+dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/+u7qv//////////////////////8tLH/+7Guf/46OP//////////////////v39/+iwnf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//02dD/////////////////////////////////9uHa/9h4V//YeFf/2HhX/9h4V//YeFf/13hW+dV3VTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXeFAg2HhW6th4V//YeFf/2HhX/9h4V//YeFf/2HhX/92McP/++/v////////////+/v7/562Z/9h4V//twrP//////////////////////+mzoP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/8My//////////////////////////////////+etmf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFbq13hQIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADValUM13dW0th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//z187/////////////////6bOg/9l7W//x0MX///////////////////////LVyv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+u7qv////////////////////////////79/f/agWL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VtLValUMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAC13dWsth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//hmYH/////////////////+vDt/9h4V//z2M/////////////////////////////hmYD/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//lp5L////////////////////////////13tb/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dWsoAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2HhWgth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/8dDF//////////////////z18//ZfV7//fv6////////////////////////////24Rm/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/4pqC////////////////////////////7L+v/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFaCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XdTK9d3V/rYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//z28///////////////////////6bSi/////////////////////////////////96Pc//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+CWff///////////////////////////+Wnkf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dX+tV3UysAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3VsHYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//z183///////////////////////vx7f/+/f3////////////////////////////joIn/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//osZ7////////////////////////////inYX/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1bBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd2VFLYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ypu//37+v//////////////////////////////////////////////////////7cKz/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9d3V////////////////////////////5aaQ/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d2VFIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1fO2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//quKb///////////////////////////////////////////////////////jp5P/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ihr//7+/v////////////////////////////DNwf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1fOAAAAAAAAAAAAAAAAAAAAAAAAAADWd1VL2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HpZ//fl3v//////////////////////////////////////////////////////3Ytu/9h4V//YeFf/2HhX/9h4V//YeVj/2n9g/9yHav/ejnP/35N5/96Ncf/bg2T/2HhX/+u7q///////////////////////////////////////6bOg/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9Z3VUsAAAAAAAAAAAAAAAAAAAAA2HhWtdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//glHr//v7+//////////////////////////////////////////////////HOw//svq7/8dDF//bi2//79PH//v7+//////////////////////////////////36+f/9+/r////////////////////////////////////////////z1sz/24Nl/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFa1AAAAAAAAAAAAAAAA1XVVGNh3VvzYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+/Kvf////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z18//mq5b/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW/NNvThcAAAAAAAAAANd3VXLYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ciGz//v39//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////LUyv/agWL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//WeFZxAAAAAAAAAADYd1a92HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//PVy///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9uLc/9l8XP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdWvQAAAAC/YEAI2HhX99h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+eumv/+/Pv////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////twrP/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V/e/YEAI1XhVQth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+Wokv///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////fn4/9qAYf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HZWQdd4VnPYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9uDZf/89/X////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////or5z/8MzA//rw7f/13NT/35F2/9h4V//YeFf/2HhX/9d4VnPXd1aa2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ps6D///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////35+P/joIn/2HhX/9h4V//Xd1aa13dWwdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9NnQ/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////Pf1/9yIbP/YeFf/13dWwdh3V9zYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//fl3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z2M7/2HhX/9h3V9zYd1bp2HhX/9h4V//YeFf/2HhX/9h4V//ZfV3/4p2F/+3Cs//z183/9+Pc//ru6f/46eT/9d7W/+7Huf/79PH//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9+Tef/Yd1bp2HdW9th4V//YeFf/2HhX/9yGaP/uxbf//fr5///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ux7n/2HdW9td4VvvYeFf/2HhX/+iyoP/9+/r/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+e3p/9d4VvvYd1bv2HlY//DLv////////////////////////vz8//jn4v/029L/89jP//PXzf/24dr/+vDt//79/f/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ch2nw2HhX4um1pP////////////78/P/wzsL/4JZ8/9l8XP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Ze1v/4JV7/+iyoP/24dr/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////4JV7596PdNn++/v///////nr5//dim7/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+ixnv/9+vn////////////////////////////////////////////////////////////////////////////78e7/9d/X//Xf2P/35d7/+vDs//77+/////////////////////////////z28//029L/78e6/////////////////////////////////////////////////////////////////////////////////+Ohit7wyr3X//////rw7P/ciGv/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Idq/+u7q//45+H///////////////////////////////////////35+P/24Nj/7MCx/+Ofh//agWL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2n9g/92Kbv/ejXL/3Yxw/9l+Xv/YeFf/2HhX/9h6Wf/9+/r////////////////////////////////////////////////////////////////////////////lpZDD+/Ht6f/////lp5L/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9uDZP/hmH//5quW/+arl//mqZT/5KON/96Ncf/YeVj/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9+Te////////////////////////////////////////////////////////////////////////////5qqUov36+fH+/f3/2X1d/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//DLvv///////////////////////////////////////////////////////////////////////////+zDtZH//f3l+e3p/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//nr5v////////////////////////////////////////////////////////////////////////////57uiG////0vru6vrYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/35J3///////////////////////////////////////9+/r/9d3U/+zAsf/z1sz//Pf1////////////////wf///5b++/v72HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h6Wf/78u//////////////////+u7p/9+Tef/chmj/2Hpa/9h4V//YeFf/2HhX/9l7W//mqJP/+u7p6/////////88/////9yHav/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/67ys/////////////fv6/+CUef/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9V2VEP///9QAAAAAP///8Lfj3Pm2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9qAYf/35N7//PTy/+Ofh//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V+KAAAACAAAAAAAAAAAAAAAA1nhXhNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HlY/9l8XP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//WeFeEAAAAAAAAAAAAAAAAAAAAANF0URbYd1b22HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1b20XRRFgAAAAAAAAAAAAAAAAAAAAAAAAAA13hWkdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hWkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2ThrXd1f02HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dX9Nh2ThoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13dWdNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VnQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL9AQATXeFbT2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VtO/QEAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1nRXLNd3VvLYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VvLWdFcsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXdVRM2HhX/dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V/3XdVRMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh4VXXYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFV1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13dXn9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1efAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANVVVQbXeFbA2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFbA1VVVBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtm1JB9d3V5/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1eftm1JBwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1nhWcdh3VvzYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VvzWeFZxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXdVRG2HdW79h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4V+7XdVRGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANZ1UyXXd1bN2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3Vs3WdVMlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAtZ2V2rYd1bv2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW79Z2V2qAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzHNNFNd3V4fYeFfx2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFfx13dXh8xzTRQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAz3BQENd3VXjXeFfZ2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4V9nXd1V4z3BQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANV2VTbWd1eQ13dX1Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1fU1ndXkNV2VTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADTb04X2HZVVNd2Vn/XeFam13hWzNd3V9/XeFbs13hW+dd4VvnXeFbs13dX39d4VszXeFam13ZWf9h2VVTTb04XAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAACAAAAAAAEAAAEAIAAAAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XFVEtd0VTnXeFVg13dXh9h4V6rXeFe513hWxtd4VtPXd1ff13hW7Nd4VvnXeFb513hW7Nd3V9/XeFbT13hWxtd4V7nYd1ap13dXh9d4VWDXdFU51XFVEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzHdVD9d3Vk3Xd1aO13dXxdd4VuzYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hW7Nd3V8XXd1aO13dWTcx3VQ8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL9gQAjVdVVI2HdWidh4VsrYd1b82HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW/Nh4VsrYd1aJ1XVVSL9gQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdd1VT/Yd1ec2HhX8dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX8dh3V5zXdVU/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA03ZRKdd3VoXXd1bh2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1bh13dWhdN2USkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hUQNd3VrrYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VrrXeFRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1ndVS9d3V8XYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1fF1ndVSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13ZUUth3VtDYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW0Nd2VFIAAAAAAAAAAAAAAAAAAAAA////CP///wsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0nNTKNh3V7zYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Ye1r/5qiT//PSx+P9+fjS////7/////3//////////////+z///+S////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0XRGC9h4VojXd1f62HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h6Wf/YeVj/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/4JV7//ru6f/////////////////////////////////////////////////////Q////BQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd2VFLYeFfi2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//chmj/6rel//TZ0P/57en//v39///////9+fj/+Ofi/+7Guf/fk3n/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+CVe//9+ff///////////////////////////////////////////////////////////////9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMxmTQrXd1ef2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ciGv/89bM//79/f////////////////////////////////////////////79/f/lpY//2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//agWL/+/Ht////////////////////////////////////////////////////////////////5P///xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWdFcs2HdX1th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/5qqV//z39f////////////////////////////////////////////////////////////PYzv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HlY/+Wnkf/twbL/78m8//HPw//y08j/8dDF//fj3P////////////////////////////////////////////////////////////76+t////8lAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hVZth3VvbYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ihr/+aok//ruqn/7cGx/+7Huf/ruqr/5aWP/9yIa//YeFf/2HhX/9h4V//YeFf/2HhX/+y/r///////////////////////////////////////////////////////////////////////8tLH/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//quaj////////////////////////////////////////////////////////////////////////////////////////////y1Mn/2n5f9td4VWYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv2BACNd3V6XYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Idq//PXzv///////////////////////////////////////v39/+7GuP/YeFf/2HhX/9h5WP/wzcH////////////////////////////////////////////////////////////////////////////ptKL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//vz8P//////////////////////////////////////////////////////////////////////////////////////7sW3/9h4V//YeFf/2HhX/9d3V6W/YEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9wUBDXd1bB2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9+TeP/79PH//////////////////////////////////////////////////////9yHav/YeVj/8c/D/////////////////////////////////////////////////////////////////////////////Pf1/9uDZf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//dim3///////////////////////////////////////////////////////////////////////////////////////Ta0f/YeFf/2HhX/9h4V//YeFf/2HhX/9d3VsHPcFAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYdk4a13dW0th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//fk3n//Pf1////////////////////////////////////////////////////////////3Ypt//DNwf////////////////////////////////////////////////////////////////////////////vy7//hmH//2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+Sii//////////////////////////////////////////////////////////////////////////////////+/f3/3Yxw/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VtLYdk4aAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0nNTKNd3VuHYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Yls//vy7/////////////////////////////////////////////////////////////z18//uxrj////////////////////////////////////////////////////////////78/D/9NvS/+3Cs//lppD/2X5f/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/5qqW//////////////////////////////////////////////////////////////////////////////////HQxf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VuHSc1MoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2UzTXeFbs2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9l9Xv/46OP//////////////////////////////////////////////////////////////////fr5///////////////////////////////////////////////////////24Nj/45+I/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//osZ7/////////////////////////////////////////////////////////////////////////////////35N5/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VuzYdlM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSc1Mo13hW7Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/8MzA//////////////////////////////////////////////////////////////////z18//9+Pb////////////////////////////////////////////9+fj/5qmU/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+q3pv////////////////////////////////////////////////////////////////////////////Xf1//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VuzSc1MoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0XZSHNh4V+LYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+aok/////////////////////////////////////////////79/f/quKb/4Zd+/+Kdhf/djHD/6rel/////////////////////////////////////////////fj2/+GXfv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/56+b////////////////////////////////////////////////////////////////////////////5qmU/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V+LRdlIcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANdrURPYd1fW2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//bg2X//PXz///////////////////////////////////////++/v/5KON/9h4V//YeFf/2HhX/+zAsf////////////////////////////////////////////78/P/imoL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//joIn///////////////////////////////////////////////////////////////////////z39f/ZfV3/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3V9bXa1ETAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADRdEYL13hXyNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//HQxf///////////////////////////////////////fv6/+Oeh//YeFf/2HhX/9h6Wf/wzMD/////////////////////////////////////////////////6LCc/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9+Rdv//////////////////////////////////////////////////////////////////////78m8/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4V8jRdEYLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3V63YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//hl37///////////////////////////////////////78+//jnob/2HhX/9h4V//Zfl7/89jP//////////////////////////////////////////////////LSx//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2oFi///////////////////////////////////////////////////////////////////////inIT/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3V60AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYd1Vv2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//Xf2P//////////////////////////////////////6LGe/9h4V//YeFf/24Vo//fl3v/////////////////////////////////////////////////9+/r/24Nl/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/+/Tx/////////////////////////////////////////////////////////////Pf1/9h6Wv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VW8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XZVNtd4VvnYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//jnof///////////////////////////////////////jp4//YeVj/2HhX/9+Tef/78e3///////////////////////////////////////////////////////DOwv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//24Nj////////////////////////////////////////////////////////////xz8T/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hW+dV2VTYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANJ4SxHXd1ff2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//TZ0P//////////////////////////////////////7se5/9h4V//YeFf/9+Pc////////////////////////////////////////////////////////////5aeS/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//DNwf///////////////////////////////////////////////////////////+aqlv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dX39J4SxEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB13hWsdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//dim3//v7+///////////////////////////////////////z2M7/2HhX/9h7Wv/+/Pz////////////////////////////////////////////////////////////fk3n/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/7cKz////////////////////////////////////////////////////////////3o1y/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hWsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd4VWDYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+u6qv////////////////////////////////////////////7+/v/di2//24Nl/////////////////////////////////////////////////////////////////92McP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//quaj///////////////////////////////////////////////////////z39f/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hVYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADVcVUS2HdX69h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9d7W/////////////////////////////////////////////////+7GuP/bhWf/////////////////////////////////////////////////////////////////35F3/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+iwnP//////////////////////////////////////////////////////9d3U/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1fr1XFVEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3VprYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h7Wv/++/v//////////////////////////////////////////////////fr5/92Lb//////////////////////////////////////////////////////////////////jn4f/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/6rak///////////////////////////////////////////////////////xz8T/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1aaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWdlc42HdW/th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//PXzf//////////////////////////////////////////////////////78m8//77+////////////////////////////////////////////////////////////+q3pf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//y1cr//////////////////////////////////////////////////////+7GuP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3Vv7Wdlc4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqlVVA9h3VtDYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ypu//37+v/////////////////////////////////////////////////+/Pz//vz7////////////////////////////////////////////////////////////8tPI/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2X1d//35+P//////////////////////////////////////////////////////7L2t/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VtCqVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1dn2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/7L2t///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////89/X/2Hpa/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//kpI7////////////////////////////////////////////////////////////vybv/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VWYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv0BABNd3V9/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ZfV3/+u7q///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////hmYH/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//LSx/////////////////////////////////////////////////////////////Xf2P/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dX379AQAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXeFVg2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//inYX//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+3Bsf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//agWL//fv6/////////////////////////////////////////////////////////////Pf1/9h6Wv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hVYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAtd4V9nYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//wzL//////////////////////////////////////////////////////////////////////////////////////////////////////////////////+Oji/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+iwnf//////////////////////////////////////////////////////////////////////56+b/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFfZgAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWd1dY2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9qBYv/78u//////////////////////////////////////////////////////////////////////////////////////////////////////////////////3Yls/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9+Te///////////////////////////////////////////////////////////////////////9+vn/4ZqB/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Wd1dYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd4VtPYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+Sjjf/////////////////////////////////////////////////////////////////////////////////////////////////////////////////osp//2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HlY/9uDZP/ejXL/4Zh//+Ohiv/lppD/5qqV/+eumv/osp//566a/+WmkP/jnof/4JZ9/9yHav/YeVj/2HhX/9+TeP/////////////////////////////////////////////////////////////////////////////////+/f3/67qp/9h5WP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VtMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADVd1U82HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//PYzv////////////////////////////////////////////////////////////////////////////////////////////////////////////Tb0v/YeFf/2HlY/9yGaf/hmH//5qqW/+u8rP/xzsP/9uDY//vy7//+/f3///////////////////////////////////////////////////////////////////////78+//57en/+u7p////////////////////////////////////////////////////////////////////////////////////////////9d3V/9yGaf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9V3VTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3VprYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ypu//37+v///////////////////////////////////////////////////////////////////////////////////////////////////////vz8//nq5f/9+/r//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////PXz/+WmkP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dWmgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/YEAI2HdW8Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/67yr//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////PYzv/ciGv/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1bwv2BACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANZ1VVfYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ZfFz/+vDt//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////359//ps6H/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//WdVVXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2HhWtdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ptaP////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////029L/24Rm/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4VrUAAAAAAAAAAAAAAAAAAAAAAAAAANF0URbYd1b82HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9p/YP/89/X////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////78/D/4p2F/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW/NF0URYAAAAAAAAAAAAAAAAAAAAA13dVWth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+3Bsf/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/f3/5aaQ/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13VWWQAAAAAAAAAAAAAAAAAAAADYd1ec2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/4Zd9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/Pz/4JV7/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1ecAAAAAAAAAAAAAAAAAAAAANh3Vt7YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+GYf//79PH////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////46eT/2HpZ/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3Vt4AAAAAAAAAAAAAAADXeFAg2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//nrZn//vz7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////mqJP/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4UCAAAAAAAAAAANZ2VWPYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/5qmU//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////jo4//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/1nZVYwAAAAAAAAAA13hWpNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9yIbP/89/X//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+Kdhf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFakAAAAAAAAAADXd1bS2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeVj/9d/X////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8My//9h4V//chmn/7sW3//fl3v/35N7/8tLH/+Ohiv/YeVj/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VtIAAAAAgAAAAth4V/fYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+aqlv/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////56+b/46CJ//z18/////////////////////////////Xe1v/dim3/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX94AAAALRdFUh2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/9+Xf///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////vz8f/fkXf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/0XRVIdV1VUjYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/92Kbv////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z18//di27/2HhX/9h4V//YeFf/2HhX/9h4V//VdVVI1nZXcNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/56+b//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////jo4//ZfV3/2HhX/9h4V//YeFf/2HhX/9Z2V3DWeFaX2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//uxbf//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+3Dtf/YeFf/2HhX/9h4V//YeFf/1nhWl9d4VrHYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//PVy////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v39/9+Rdv/YeFf/2HhX/9h4V//XeFax13dWvth4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/89jP////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8tPI/9h4V//YeFf/2HhX/9d3Vr7Xd1fL2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HpZ/+CWff/nrpr/7L+v//HQxf/z2M7/9d7W//bh2v/02dD/8c/E/+7GuP/ptaP/4pyE/9uDZP/z1sz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7/3o5z/9h4V//YeFf/13dXy9d3VtjYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ejXH/6LGe//PVy//89/X///////////////////////////////////////////////////////////////////////78/P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////xz8T/2HhX/9h4V//Xd1bY13dX5dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h6Wv/nrJj/+evm//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////78+//af2D/2HhX/9d3V+XXd1by2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h7Wv/nr5v/+u7q/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+SijP/YeFf/13dW8th3VvzYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ko43/+vDs////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////78m7/9h4V//Yd1b813hW89h4V//YeFf/2HhX/9h4V//ZfFz/78q9///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////67+v/2HhX/9d4VvPXeFbm2HhX/9h4V//YeFf/2n9g//Xe1v/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ejXH/13hW5td4V9nYeFf/2HhX/9l+Xv/35N7//////////////////////////////////////////////////vz8//fm4P/y08j/7cGx/+q5qP/qtqT/6bOh/+ixnv/nrpr/6K+c/+y9rf/wy7//9NrR//jo4//89/X//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+Skjv/XeFfZ13hWzNh4V//YeFf/8tXK///////////////////////////////////////78/D/7cO0/+Kdhf/Zfl7/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//chmn/5KSO/+3Bsv/13tb//fr5////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6rmo/9d4VszXd1e/2HhX/+m0ov/////////////////////////////////56uX/5aWP/9h6Wv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yeln/45+I//fm4P/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////tw7T/13dXv9d3VrLbhWj//fj2///////////////////////+/Pz/6rak/9h6Wv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2Hpa/+u8rP/+/f3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////vv7/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+7Etv/XeFax1nhWl+7Huf///////////////////////Pf1/+Kdhf/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+CVe//56+b///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////78+//35N3/8c7D/+zAsP/ruqn/7L6u/+3Cs//uxrn/8c/D//Tb0v/45+H/+/Lv//79/f///////////////////////////////////////////////////////Pb0//fj3P/uxbf/5aiS/92Lbv/hmYH/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7sS2/9Z4VpfYgmZ2/fj2//////////////////79/f/imoL/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h7Wv/ptKL/+u/r///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////89/X/89fN/+m1pP/glXv/2Xtb/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HlY/9uCZP/ejXL/4Zh//+Sii//lqJL/5qmU/+WmkP/imoL/3Yxw/9l9Xv/YeFf/2HhX/9h4V//YeFf/2HhX/9p/YP/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////twbH/1nZXcPDRxor/////////////////////67qp/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/4pqC/+7GuP/56uX/////////////////////////////////////////////////////////////////////////////////+vDs//LSx//ps6D/35J3/9h5WP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX//nt6P///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+u8rP/VdVVI/PTxpP////////////////vy7//Ze1v/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//bg2T/4ZmA/+evm//uxLb/9NrR//jo4v/57en/+/Lv//rw7P/35d//9NrR//DLvv/ptKL/456H/9uFaP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/8tPI////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6rin/9F0VSH////O////////////////6rmo/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ru6r////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////rt6X6gAAAAv///+f////////////////djHD/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+SijP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+3Ft+kAAAAA////9P///////////Pf1/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/3Ypt////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////89jO3AAAAAD////2///////////13tb/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf//Pf1///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88u/cAAAAAP///9z///////////PYz//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//13tb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/vb///8D////wf//////////89fO/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+3Bsv///////////////////////////////////////////////////////////////////////////////////////////////////////v39/////////////////////////////////////////////////////0D///+P///////////z2M//2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/5KGL//////////////////////////////////////////////////////////////////////////////////ru6v/wzL//5qmU/9yGaf/Zfl//4p2F/+y+r//139j//v39////////////////////////////////k////03///////////nq5f/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//agWL//v39/////////////////////////////////////////////v39/+u6qv/osJz/5qqW/+GZgP/bhWf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//ch2r/7L6u//vy7//////////////////////y////D/////r///////39/th6Wv/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//029L////////////////////////////////////////////rvKv/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2Hpa/+Wnkv3+/f3b//////////8AAAAA////rP//////////3o1x/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/+arlv//////////////////////////////////////9NzT/9h5WP/YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhWtf///wP///9d////2wAAAAD///9F///////////joIn/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2Hpa//ns5/////////////////////////////rw7P/bg2T/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//WdVVXAAAAAAAAAAD///8EAAAAAP///wH////a/////+mzofbYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/4puD//78+//////////////////67+v/3Yxw/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW8L9gQAgAAAAAAAAAAAAAAAAAAAAAAAAAAP///0r////76bKfudh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/5KKM//vz8P//////9uDZ/9yIa//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1aaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wzVd1U82HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2X5f/9+Rd//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9V3VTwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXeFbT2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFbTAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd1VlnYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d1VlkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAtd4V9nYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFfZgAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hVYNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/QEAE13dX39h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1ffv0BABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1dn2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3V2cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKpVVQPYd1bQ2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1bQqlVVAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANZ2VzjYd1b+2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW/tZ2VzgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd3VprYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1aaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XFVEth3V+vYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdX69VxVRIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hVYNh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFVgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13hWsdh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hWsQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSeEsR13dX39h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3V9/SeEsRAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADVdlU213hW+dh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//XeFb51XZVNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADYd1Vv2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VW8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1et2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1etAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANF0RgvXeFfI2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hXyNF0RgsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANdrURPYd1fW2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3V9bXa1ETAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANF2UhzYeFfi2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFfi0XZSHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANJzUyjXeFbs2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13hW7NJzUygAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2UzTXeFbs2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d4VuzYdlM0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANJzUyjXd1bh2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1bh0nNTKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANh2ThrXd1bS2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/13dW0th2ThoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9wUBDXd1bB2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VsHPcFAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL9gQAjXeFam2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1elv2BACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXd1Zl2HdW9th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1b213dWZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADWdFcs2HdX1th4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdX1tZ0VywAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMZk0K13dXn9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3V5/MZk0KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA13ZUUth4V+LYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V+LXdlRSAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0XRGC9d3V4fXd1f62HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3V/rXd1eH0XRGCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANJzUyjYd1e82HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1e80nNTKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADXdlRS2HdW0Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1bQ13ZUUgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1ndVS9d3V8XYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1fF1ndVSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANd1VT/Xd1a62HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Xd1a613VVPwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADSc1Mo13dWhdd3VuHYeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9d3VuHXd1aF0nNTKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdd1VT/Yd1ec2HdW8Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HdW8Nh3V5zXdVU/AAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/YEAI13dWR9h3VonYeFbK2HdW/Nh4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h3VvzYeFbK2HdWidd3Vke/YEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMd1UP13VUTNd3Vo7Xd1fF2HdX69h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//YeFf/2HhX/9h4V//Yd1fr2HhWxNd3Vo7XdVRMzHdVDwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1XFVEtd0VTnXeFVg13hWhth3VqnXeFe513hWxtd4VtPXd1ff13hW7Nd4VvnXeFb513hW7Nd3V9/XeFbT13hWxtd4V7nYd1ap13hWhtd4VWDXdFU51XFVEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
AAABAAEAAAAAAAEAGAAIIQMAFgAAACgAAAAAAQAAAAIAAAEAGAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////+/v7+/v7+/v7+/v7////4+Pjq6urZ2dnExMS0tLStra2srKyxsbG9vb3Nzc3g4ODs7Oz4+Pj+/v7+/v7////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3+/v7+/v79/f38/Pz9/f3+/v7+/v79/f3+/v7+/v79/f39/f3+/v7+/v7+/v7////////////////////////////+/v79/f36+vrY2NiXl5daWlouLi4UFBQGBgYLCwsSEhIUFBQUFBQSEhIMDAwEBAQHBwcXFxcrKytNTU13d3epqanZ2dn29vb9/f39/f38/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7x8fHV1dWxsbGSkpJ2dnZiYmJXV1dPT09QUFBaWlpnZ2d9fX2cnJy8vLzd3d34+Pj////////////////////////////u7u6bm5s8PDwMDAwcHBxNTU2Dg4Otra3MzMzf39/l5eXp6enq6urn5+fg4ODU1NS9vb2fn599fX1UVFQsLCwNDQ0JCQkoKChiYmKnp6fk5OT9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3////+/v79/f309PTExMSBgYFEREQaGhoHBwcHBwccHBwuLi5AQEBNTU1UVFRUVFRNTU08PDwqKioWFhYFBQUNDQ0lJSVYWFiYmJjX19f9/f3+/v709PSTk5MjIyMPDw9aWlq3t7fu7u7+/v7////////////////////////////////////////////////////////4+Pjj4+O3t7d2dnY4ODgKCgoSEhJNTU2kpKTs7Oz+/v7+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f35+fnExMRsbGwhISEHBwccHBxWVlaMjIy9vb3k5OTy8vL4+Pj8/Pz+/v79/f39/f3+/v78/Pz39/fw8PDe3t6zs7OBgYFISEgSEhIKCgo3NzeDg4M3NzcMDAxsbGzd3d37+/v8/Pz+/v7+/v7////////////////////////////////////////////////////////////+/v7+/v79/f35+fnc3NyXl5dDQ0MJCQkaGhptbW3R0dH7+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f329vafn582NjYFBQUiIiJ5eXnHx8f19fX+/v7+/v7+/v7+/v79/f3////////////////////////////////////////+/v7+/v79/f3v7++xsbEmJiYCAgIEBAQ/Pz/MzMz8/Pz+/v79/f38/Pz+/v7////////////////////////////////////////////////////////////+/v7+/v79/f3+/v7+/v79/f38/Pzc3Nx/f38eHh4JCQlNTU3CwsL+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3z8/OYmJgjIyMKCgpTU1O8vLz7+/v9/f39/f3////////////////////////////////////////////////////////////////////////9/f34+PhsbGwICAh0dHSUlJQvLy8GBgZPT0/Pz8/8/Pz+/v7+/v7////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f38/Pz9/f36+vrv7++goKA1NTUEBARERETFxcX7+/v8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/uwsLAtLS0MDAxjY2PW1tb9/f39/f38/Pz9/f3+/v7////////////////////////////////////////////////////////////////////+/v729vZaWloMDAyfn5/7+/v8/Pz4+PiqqqovLy8ICAhpaWnl5eX9/f3////////////////////////////////////////////////////////////////////+/v79/f36+vrg4OCdnZ1hYWE4ODghISEZGRkdHR0EBAQDAwMICAhZWVnY2Nj9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f39/f3h4eFXV1cKCgpSUlLQ0ND+/v7+/v7////////////////////////////////////////////////////////////////////////////////+/v79/f329vZdXV0ODg6ysrL+/v79/f3////////9/f339/eXl5caGhodHR2mpqb6+vr9/f3+/v7+/v7////////////////////////////////////////////////+/v739/ezs7NNTU0NDQ0VFRVERERzc3OSkpKenp6UlJR1dXVAQEAODg4EBAQSEhKEhITx8fH9/f39/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f37+/uurq4eHh4oKCiurq75+fn////////////////////////////////////////////////////////////////////////////////////////////9/f35+flycnILCwuurq7+/v7+/v7+/v7////////+/v7+/v79/f3j4+NeXl4JCQlfX1/m5ub+/v7+/v7+/v7////////////////////////////////////////8/PzFxcVCQkIKCgpCQkKnp6fp6en9/f3+/v7+/v7+/v7+/v79/f38/Pzb29t7e3sSEhIDAwM1NTXFxcX8/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f309PR2dnYLCwtpaWnr6+v+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////+/v6UlJQICAiXl5f8/Pz////+/v7+/v7////////+/v79/f3+/v79/f37+/umpqYaGhoxMTHOzs7+/v79/f3////////////////////////////////+/v729vaAgIAODg47Ozu7u7v5+fn+/v7+/v7+/v7+/v7+/v7+/v7+/v79/f3+/v79/f38/PzIyMghISEDAwMPDw+BgYH09PT+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz7+/vq6upUVFQSEhKlpaX6+vr+/v7////////////////////////////////////////////////////////////////////////////////////////+/v79/f39/f3Dw8MPDw9wcHD5+fn9/f3+/v7////////////////////////////////////+/v7U1NQ6OjoYGBi3t7f8/Pz9/f39/f3+/v7////////////////9/f3r6+tOTk4ODg6IiIj09PT////////////////////////////////////////////////+/v7+/v6+vr4MDAwzMzMODg5HR0fh4eH9/f39/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vl5eU+Pj4kJCTNzc39/f38/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////8/Pzs7OwsLCw8PDzx8fH9/f37+/v+/v7////////////////////////////////////+/v79/f3t7e1UVFQMDAykpKT9/f39/f3+/v7////////////////u7u48PDwYGBi9vb38/Pz9/f3////////////////////////////////////////////////+/v79/f38/PxOTk5CQkK+vr4lJSUiIiLCwsL5+fn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3p6ek3NzcqKirb29v9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////+/v78/PxxcXESEhLU1NT+/v7////+/v7+/v7////////////////////////////////////////////////29vZoaGgJCQmioqL7+/v9/f3+/v79/f3+/v729vZDQ0MZGRnMzMz+/v7+/v7////////////////////////////////////////////////////+/v7///////+KiooeHh7x8fHo6OhDQ0MODg6dnZ37+/v9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pzy8vJCQkIoKCjf39/9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////+/v7GxsYKCgqPj4/8/Pz9/f3////////////////////////////////////////////////////////////8/Pz7+/twcHAJCQmsrKz9/f39/f3+/v76+vpqamoPDw/IyMj+/v7///////////////////////////////////////////////////////////////////////+Li4seHh7y8vL8/Pz29vZvb28ICAiBgYH4+Pj8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/tsbGwYGBjR0dH9/f3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////6+vo/Pz84ODjz8/P9/f39/f3////////////////////////////////////////////////////////////+/v79/f35+flkZGQQEBDBwcH8/Pz9/f2xsbEICAiZmZn9/f3+/v7////////////////////////////////////////////////////////////////////+/v5ZWVlBQUH7+/v9/f38/Pz6+vqIiIgJCQlubm729vb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pyrq6sKCgqqqqr9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f2qqqoICAi9vb3////////////////////////////////////////////////////////////////////////////////////z8/NMTEwgICDd3d3x8fEtLS1ISEj8/Pz////////////////////////////////////////////////////////////////////9/f38/Pzg4OAVFRWTk5P////////////9/f37+/ubm5sODg5lZWX19fX8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////x8fEfHx9aWlr6+vr8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////9/f35+fkvLy9OTk78/Pz////////////////////////////////////////////////////////////////////////////////////9/f3m5uYrKytGRkaRkZEKCgrNzc3////////////////////////////////////////////////////////////////////////9/f35+fllZWUlJSXs7Oz////////////9/f39/f38/PylpaUODg5oaGj29vb7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f2EhIQQEBDd3d39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////9/f2urq4GBgbExMT9/f3////////////////////////////////////////////////////////////////////////////////////+/v79/f3Hx8cQEBALCwtRUVH8/Pz////////////////////////////////////////////////////////////////+/v7+/v79/f2RkZENDQ2wsLD9/f3+/v7////////+/v79/f3+/v78/PyioqILCwt2dnb6+vr+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f309PQeHh5lZWX+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f1BQUE/Pz/6+vr9/f3////////////////////////////////////////////////////////////////////////////////////////////8/PyDg4MCAgKhoaH9/f3////////////////////////////////////////////////////////////////8/Pz5+fmLi4sLCwuKior8/Pz9/f3+/v7////////////////+/v79/f37+/uVlZUICAiMjIz8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Py0tLQDAwPJycn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////T09MICAinp6f8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////9/f2JiYkCAgJBQUH39/f+/v7////////////////////////////////////////////////////////////p6eldXV0KCgqLi4v7+/v+/v78/Pz+/v7////////////////9/f38/Pz9/f37+/t+fn4JCQmpqan9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v50dHQeHh79/f3+/v7////////////9/f3+/v7////+/v7+/v7////+/v7////+/v77+/vk5OTJycmwsLCYmJiEhIR1dXVmZmZXV1dMTExHR0dDQ0NDQ0NDQ0NDQ0NISEgwMDAGBgZfX19zc3OCgoKSkpKnp6e9vb3V1dXu7u79/f3////////+/v7////+/v7+/v7+/v7+/v7+/v7////9/f3+/v7////////////////////+/v5RUVEkJCQLCwupqan+/v7////////////////////////////+/v7////+/v7+/v7+/v7+/v74+Pifn58eHh4dHR20tLT8/Pz9/f3////////////////////////////////////////8/Pz5+fldXV0TExPOzs79/f3+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f1JSUlWVlb+/v7+/v7////////9/f38/Pz+/v77+/vy8vLOzs6goKB2dnZPT08pKSkMDAwCAgIHBwcJCQkREREiIiIvLy9AQEBKSkpRUVFaWlpgYGBkZGRkZGRgYGBWVlYJCQklJSU/Pz8xMTEjIyMUFBQJCQkHBwcEBAQCAgIREREsLCxMTExubm6Pj4+zs7PY2Njy8vL5+fn9/f38/Pz////+/v7////////////////////39/cpKSl7e3tbW1srKyv4+Pj////////////////////////////////+/v79/f37+/vj4+ONjY0mJiYODg5ycnLv7+/7+/v+/v7+/v7////////////////////////////////////////8/Pz9/f3w8PA5OTkqKirp6en9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f01NTVzc3P+/v7+/v7+/v77+/vk5OSvr69ycnI7OzsQEBAEBAQPDw8qKipQUFB4eHiampq5ubnT09Pp6en39/f9/f3////+/v7+/v7////+/v7////////9/f39/f3Ozs4ICAi2trb+/v7+/v7+/v77+/vu7u7b29vGxsarq6uQkJBycnJSUlI0NDQXFxcMDAwEBAQMDAwoKChJSUltbW2QkJC1tbXV1dXt7e329vb8/Pz////t7e0ZGRmenp7Ozs4LCwunp6f+/v7+/v7////+/v7+/v7+/v76+vrv7+/JycmKiopEREQKCgoZGRlvb2/e3t7+/v79/f3+/v7+/v7+/v7////////////////////////////////////////9/f3+/v79/f3b29sZGRlbW1v5+fn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pw7OztwcHDy8vLGxsZ/f386OjoMDAwNDQ0rKythYWGXl5fHx8fq6ur9/f3+/v79/f3+/v79/f38/Pz+/v7+/v7////+/v7+/v7+/v7+/v79/f39/f39/f39/f39/f2QkJAODg7v7+/+/v7////////////////////////////////+/v7+/v79/f329vbf39/ExMSioqJ/f39bW1s1NTUbGxsMDAwEBAQNDQ0jIyM5OTlUVFRiYmIKCgplZWWenp4rKys0NDSqqqqnp6eenp6MjIx0dHRWVlY1NTUUFBQGBgYbGxtVVVWlpaXp6en8/Pz9/f3////////////////////////////////////////////////////////////////////////8/PysrKwKCgqZmZn9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////29vZQUFAgICAnJycICAghISFhYWGlpaXc3Nz7+/v+/v7+/v7+/v79/f39/f39/f319fXc3Ny1tbWOjo5sbGxUVFRFRUU/Pz8+Pj5FRUVUVFRubm6SkpK9vb3l5eX7+/tUVFRBQUH7+/v+/v7////////////////////////////+/v7+/v79/f39/f39/f39/f3+/v79/f3+/v7+/v79/f3z8/Pf39/GxsapqamKiopra2tSUlI4ODgHBwcWFhYbGxsTExMEBAQKCgoUFBQXFxceHh4uLi5HR0dra2uZmZnKysrw8PD9/f3////+/v79/f39/f3////////////////////////////////////////////////////////////////////////9/f36+vppaWkYGBjX19f////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v78/Pzg4OCMjIwxMTEICAgDAwNaWlrCwsLx8fH9/f3+/v7+/v7+/v7+/v7+/v79/f3h4eGioqJdXV0mJiYKCgoGBgYcHBw0NDRMTExeXl5paWlsbGxmZmZYWFhBQUEkJCQNDQ0UFBQ+Pj4WFhZqamr6+vr7+/v+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////q6uoUFBSdnZ3r6+vk5OQgICBmZmbm5ubs7Oz09PT8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////q6uoqKipKSkr4+Pj+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/vFxcVfX18UFBQVFRVgYGC9vb00NDQ2Njbl5eX9/f3+/v79/f3+/v79/f3z8/OlpaVLS0sSEhIMDAw8PDx4eHixsbHa2tru7u75+fn+/v79/f3+/v7+/v78/Pz+/v79/f309PTh4eGysrJiYmIHBwcMDAxNTU2+vr77+/v8/Pz////////////////////////////////////////////////////////////////////////////////////////////09PQjIyOKior+/v7+/v5tbW0mJib8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f20tLQJCQmhoaH9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f22trZCQkIHBwcqKiqSkpLo6Oj9/f3+/v7W1tYeHh4kJCSamprq6ur+/v7p6emCgoIgICAJCQlERESNjY28vLzAwMCoqKiOjo53d3dfX19KSko9PT00NDQwMDA3NzdERERaWlp8fHympqbZ2dn8/PzOzs4HBweEhIRCQkIHBwdNTU3T09P////+/v7+/v7////////////////////////////////////////////////////////////////////////////////8/PxAQEBgYGD+/v7+/v65ubkGBgbU1NT////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/tZWVkfHx/r6+v+/v7////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f38/PzLy8tFRUUHBwc3Nzetra319fX9/f39/f3////////9/f3h4eFeXl4JCQkLCwsrKysVFRUDAwMDAwMMDAwUFBQKCgoHBwcDAwMFBQUaGhovLy9GRkZcXFxpaWlzc3N1dXVvb29jY2NISEgkJCQGBgYHBwcnJydTU1MFBQXg4OD6+vq3t7cyMjIRERGNjY339/f9/f3////////////////////////////////////////////////////////////////////////////////+/v5xcXEtLS329vb9/f3y8vIKCgqZmZn////////////////////////////////////////+/v79/f3+/v7////+/v7+/v7////////9/f3+/v78/Pz9/f3+/v7////////////////////////////////////////+/v78/Pzb29sSEhJ4eHj9/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7x8fF6enoICAgyMjKwsLD5+fn+/v7+/v7+/v7+/v7////////+/v76+vr6+vqfn58ODg4PDw9iYmJycnJ4eHiEhISXl5erq6vExMTe3t719fX9/f3+/v7+/v79/f3////////9/f3+/v79/f39/f3+/v7u7u61tbVoaGgYGBgFBQVZWVnb29v9/f329vaBgYELCwtWVlbv7+/////////////////////////////////////////////////////////////////////////////////9/f22trYHBwfR0dH+/v78/Pw3NzdjY2P////////////////////////////////////////8/Pz8/Pzr6+u/v7+UlJR9fX1ycnJ4eHiLi4uxsbHe3t75+fn9/f3////////////////////////////////////////9/f39/f38/Px/f38LCwvf39/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3r6+tKSkoRERGNjY329vb////////////+/v7////////+/v79/f38/Pzp6eleXl4ICAhTU1Pa2tr+/v7+/v7////////////////////////////////////////////////////////////////////////////////+/v6fn58HBwcaGhoSEhKbm5v5+fn9/f26urobGxs9PT3q6ur+/v7////////////////////////////////////////////////////////////////////////+/v7s7OweHh57e3v9/f3+/v5nZ2c2Njb+/v7+/v7////////////+/v7+/v7+/v7+/v7u7u6enp5EREQMDAwJCQkXFxcrKys1NTUuLi4bGxsMDAwFBQUtLS2AgIDe3t7+/v78/Pz+/v7+/v7////////////////////////+/v7+/v7s7OwcHBxnZ2f9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v709PRJSUkfHx/Dw8P9/f3+/v79/f3////////////////////9/f38/PzMzMwpKSkbGxuioqL4+Pj+/v7///////////////////////////////////////////////////////////////////////////////////////////+lpaUQEBDb29thYWEICAh3d3f4+Pj9/f3Pz88gICBFRUXy8vL////////////////////////////////////////////////////////////////////////+/v78/Pxzc3MeHh7s7Oz9/f2Li4sXFxf4+Pj9/f3////////////7+/v9/f3w8PCRkZEgICAQEBBSUlKjo6PX19f09PT9/f3+/v7+/v75+fnh4eGzs7NoaGgbGxsPDw9wcHDk5OT8/Pz8/Pz////////////////////////////////9/f2IiIgMDAza2tr+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f2Dg4MSEhLExMT9/f39/f39/f3+/v7////////////////+/v78/Pyvr68SEhI4ODja2tr9/f38/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////+/v6urq4KCgrq6ur7+/uOjo4LCwuCgoL9/f39/f3JyckUFBRvb2/+/v7+/v7////////////////////////////////////////////////////////////////////+/v7Z2dkSEhKEhIT+/v6tra0NDQ3l5eX+/v7////////+/v79/f3Jyck0NDQRERFxcXHb29v+/v79/f3+/v7////+/v7+/v7////+/v7+/v7+/v7+/v7s7OyMjIwcHBwiIiK3t7f7+/v+/v7+/v7////////////////////////8/Pzs7OwUFBRxcXH9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////u7u4UFBR9fX38/Pz9/f3////////////////////9/f39/f38/PylpaUQEBBZWVnv7+/8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////+/v7CwsIDAwPa2tr+/v78/PyAgIAODg7BwcH+/v7+/v6ioqIICAi+vr79/f39/f3////////////////////////////////////////////////////////////////////+/v54eHgSEhLX19fBwcEKCgrW1tb+/v7+/v78/Pz6+vqbm5sRERE+Pj7MzMz5+fn////////////////////////////////////////////////////9/f3g4OBRUVEPDw+dnZ37+/v7+/v9/f3////////////////////+/v79/f14eHgZGRnq6ur////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+tra0NDQ3e3t79/f39/f3////////////////////+/v77+/usrKwODg5lZWX19fX8/Pz7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////c3NwKCgq8vLz+/v7+/v709PQ/Pz9AQED4+Pj9/f36+vpOTk47Ozv6+vr9/f3////////////////////////////////////////////////////////////////////////r6+stLS0+Pj7GxsYFBQXOzs7+/v7+/v76+vqAgIAHBwdxcXHz8/P8/Pz8/Pz////////////////////////////////////////////////////9/f39/f309PRubm4MDAywsLD8/Pz9/f3////////////////////+/v7+/v7d3d0LCwuWlpb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+JiYklJSX9/f3+/v7+/v7////////+/v7////+/v79/f3Hx8cTExNhYWH29vb9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7w8PAaGhqQkJD+/v79/f37+/u9vb0HBwfAwMD+/v78/PzPz88FBQXCwsL+/v7////////////////////////////////////////////////////////////////////////9/f3GxsYQEBBGRkYEBATIyMj8/Pz8/PyAgIAICAiKior7+/v9/f3+/v7////////////////////////////////////////////////////////+/v7+/v79/f329vZRUVEZGRng4OD+/v7////////////////+/v7////////8/PxRUVE5OTn6+vr9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+JiYkoKCj+/v7////////////////////+/v79/f3r6+spKSlDQ0Py8vL8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v5ERERaWlr+/v7+/v78/Pz19fUrKytvb2/+/v79/f37+/s6OjptbW3+/v7////////////////////////////////////////////////////////////////////+/v79/f37+/umpqYDAwMICAjLy8v8/Pybm5sHBweJiYn7+/v9/f3+/v7////////////////////////////////////////////////////////////////////9/f39/f3j4+MXFxdeXl7+/v7////////////////////////////+/v6urq4JCQnNzc39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+ysrIQEBDp6en////////////////+/v7+/v77+/tiYmIfHx/g4OD9/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6FhYUcHBz39/f+/v79/f39/f1oaGg2Njb7+/v+/v77+/uBgYEsLCz9/f3////////////////////////////////////////////////////////////////////////9/f38/Pz+/v6NjY0EBARiYmK5ubkNDQ1ycnL7+/v9/f39/f3+/v7////////////////////////////////////////////////////////////////////+/v78/Pz9/f2GhoYICAjh4eH////////////////////////////+/v7w8PAbGxt9fX3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////s7OwRERGWlpb9/f3+/v7////////////9/f28vLwKCgqnp6f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7Ly8sHBwe+vr78/Pz///////+Ojo4gICDx8fH///////+wsLAQEBDr6+v+/v7+/v79/f39/f39/f3+/v78/Pz29vby8vLv7+/w8PD09PT4+Pj+/v7+/v7+/v7+/v7+/v78/Pz+/v7+/v6ysrIDAwMODg4ICAg9PT3z8/P6+vr9/f3+/v79/f3+/v79/f3+/v7+/v7////////////////////+/v79/f39/f3+/v7////////////////////////////n5+cODg6Ghob+/v7+/v7////////////////////+/v79/f1gYGA0NDT7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f1wcHAiIiLl5eX9/f3////////////4+Pg7OztJSUn4+Pj+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v75+fkvLy9gYGD+/v7///////+ZmZkaGhru7u7////////GxsYKCgrb29v+/v79/f37+/vk5OSnp6dpaWk9PT0lJSUYGBgSEhIVFRUfHx8wMDBLS0t2dnajo6PZ2dn29vb+/v7+/v7+/v6UlJQXFxdgYGAHBwcVFRWUlJT09PT9/f3+/v79/f3t7e3Ozs6oqKiSkpKDg4OFhYWZmZmzs7PZ2dn09PT+/v79/f39/f3////////////////////////////9/f1GRkZAQED+/v7+/v7////////////////////////9/f2oqKgNDQ3f39/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3n5+ciIiJRUVH09PT+/v7+/v7+/v65ubkJCQnBwcH+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6QkJAMDAzk5OT+/v7+/v6Dg4MkJCTz8/P////////Hx8cKCgrX19f8/PzOzs5gYGAVFRUMDAwwMDBcXFx/f3+Tk5OampqVlZWJiYlsbGxKSkonJycNDQ0ICAgtLS1vb2+/v7/09fVub28ODw8NDQ2Gh4dwcHANDQ0/Pz+/v7+enp5OTk4ZGRkFBQUQEBAdHR0mJiYkJCQbGxsMDAwHBwcmJiZlZWW3t7f19fX+/v7+/v7+/v7+/v7+/v7////////+/v6AgIAUFBT39/f+/v7////////////////////////9/f3d3d0HBwe1tbX9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f25ubkPDw9kZGTz8/P9/f39/f1SUlI+Pj78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+8dHR1sbGz9/f38/PxRUVFHR0f9/f3///////+2trYPDw/Q0NBwcHAPDw8vLy+Pj4/b29v6+vr+/v7+/v7////////+/v7+/v79/f3+/v729vbe3t6srKxpaWkoKCgGBgYuLy8eICADBAQzNDTw8vL6+/ulpaUJCQkGBgYGBgYsLCyHh4fCwsLj4+Pz8/P39/f39/fw8PDf39+3t7d5eXkzMzMHBwcrKyuVlZXy8vL7+/v7+/v9/f3////////+/v6lpaUHBwfj4+P+/v7////////////////////////////y8vIdHR2SkpL////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v79/f2hoaEODg5NTU3l5eXs7OwKCgqbm5v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6SkpILCwvKysri4uIVFRWQkJD+/v7///////+RkZEMDAwyMjIZGRmYmJjy8vL9/f39/f39/f3+/v7////////////////+/v7+/v7+/v7+/v79/f3+/v7+/v709PTDw8NlZmYDBAQBAgJHSUnNz8+BgoIVFRUYGBhpaWkhISETExN9fX3q6ur+/v79/f39/f3+/v7+/v79/f3+/v79/f339/fGxsZeXl4LCwstLS2zs7P8/Pz+/v7///////////+7u7sGBgbW1tb+/v7////////////////////////////7+/svLy92dnb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f36+vqsrKwUFBQkJCRycnIJCQng4OD8/Pz+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/v39/czMzM4ODhra2sXFxfX19f19fX+/v7+/v5eXl4GBgYzMzPX19f9/f3+/v7////////////////////////////////////////////////////////////+/v7+/v68vb0CAwMgIiITFBQICQkFBgZwcHDl5eX+/v7t7e2Dg4MUFBQdHR2RkZHz8/P9/f39/f39/f3////////////////////8/PzR0dFJSUkICAhqamrw8PD6+vr8/Pz9/f2+vr4FBQXV1dX+/v7///////////////////////////////8+Pj5paWn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz6+vrS0tI1NTUFBQUYGBji4uL9/f38/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f319fV/f38DAwMFBQUGBgYMDAwMDAwdHR0/Pz8SEhIcHBzX19f8/Pz8/Pz+/v7////////////////////////////////////////////////////////////9/f39/f1ub28DBAQeICAHCAg3OTkSExMsLCzBwcH8/Pz9/f38/Pzj4+Nra2sJCQkxMTG5ubn7+/v8/Pz+/v7////////////////9/f38/Pz6+vqampoPDw9BQUHo6Oj9/f3///+0tLQHBwfh4eH///////////////////////////////////9CQkJmZmb+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f35+fkvLy8GBgYODg5zc3Pg4OD8/Pz////+/v7+/v7////////////////////+/v7////////////+/v7////////////+/v7+/v7+/v79/f3+/v7+/v7+/v7////////////////////////////////+/v79/f2oqKgeHh4BAQEHBwcGBgZRUVG5ubmtra2RkZEaGhoEBAQICAgJCQlGRkacnJzq6ur+/v7+/v7////+/v7////////////////////////////////////+/v7////8/Pz19fUbGxsDBAQWFxeZmpr5+vrd3t5LS0sJCQmDg4P6+vr8/Pz9/f38/PzT09NKSkoEBARYWFjl5eX+/v7////+/v7////////+/v7+/v7+/v79/f3GxsYfHx8yMjLl5eX+/v6ZmZkODg7y8vL+/v7////////////////////////////9/f02NjZubm7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f0cHBxzc3Nzc3MWFhYQEBBhYWHGxsb4+Pj+/v78/Pz9/f3////////////+/v79/f3+/v77+/vq6urBwcGWlpZ0dHRcXFxOTk5GRkZCQkJHR0dQUFBaWlpmZmZ0dHSBgYGMjIyVlZWenp6enp6ZmZmGhoZXV1cGBgYFBQUzMzOzs7N+fn4KCgqVlZX6+vq5ubkGBgYsLCzd3d2enp5NTU0QEBARERFfX1/FxcX4+Pj8/Pz+/v7////////////////////////////+/v7+/v7+/v7y8vJ2dnYDAwM2NjbY2Nj9/f3+/v79/f339/eLi4sJCQleXl7y8vL8/Pz8/Pz+/v77+/upqakeHh4aGhqvr6/7+/v9/f3////////////////////8/Pz8/PzT09MgICBDQ0Py8vJzc3MqKir+/v7+/v7////////////////////////////29vYmJiaEhIT////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////09PQMDAygoKD+/v7l5eWGhoYoKCgHBwc5OTmUlJTj4+P8/Pz////////9/f38/Pze3t6Pj49CQkIODg4ICAgbGxszMzNLS0taWlpnZ2dvb29tbW1mZmZeXl5UVFRGRkY5OTksLCwfHx8ZGRkYGBgaGhoICAgKCgpxcXHAwMD4+Pj9/f35+fl4eHgLCwuBgYE6OjoEBASMjIz+/v79/f38/Pzi4uKRkZEyMjIGBgY+Pj6srKz29vb////////////////////////////+/v79/f3MzMw8PDwEBAQDAwOpqan9/f3+/v7+/v7+/v79/f38/PyysrIUFBRNTU3u7u78/Pz9/f3+/v78/Pzp6elbW1sJCQl1dXXz8/P////////////////////8/Pz9/f39/f3ExMQTExNzc3M+Pj5ZWVn+/v7+/v7////////////////////+/v7////o6OgRERGoqKj////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////p6ekJCQmxsbH+/v7////////09PSzs7NWVlYSEhIRERFTU1OsrKzp6enY2NhlZWUREREWFhZaWlqgoKCpqal7e3tLS0stLS0nJyczMzNdXV2rq6v09PT9/f39/f3+/v7+/v79/f36+vr09PTw8PC2trYMDAyLi4v+/v7////+/v7+/v7////6+vqKiooMDAwEBAQWFhbt7e3+/v7+/v7////////+/v729va4uLhHR0cICAg2NjasrKz39/f9/f38/Pz+/v79/f39/f3t7e2BgYESEhIJCQkEBAQICAjt7e3+/v7+/v7////////////////8/PzBwcEVFRVZWVn19fX9/f39/f3+/v7+/v78/PyWlpYSEhJISEjk5OT7+/v+/v7////////+/v7+/v7+/v79/f2VlZUKCgoICAiWlpb////////////////////////////////+/v7FxcUGBgbPz8/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7r6+sICAizs7P+/v7////////////9/f38/Pzi4uKVlZVAQEANDQ0bGxsTExMKCgqCgoLl5eXIyMhNTU0LCwseHh5TU1N6enqHh4dvb285OTkICAg5OTnOzs79/f39/f3+/v7////////+/v739/c9PT1DQ0P39/f////////////////////+/v76+vpMTEwCAgIVFRWampr09PT9/f3////////+/v79/f38/Pz5+fnCwsJOTk4KCgo/Pz+/v7/6+vr8/Pz4+PipqakvLy8RERFzc3MiIiIDAwM8PDz8/Pz+/v7////////////////////+/v76+vq3t7cPDw9+fn78/Pz9/f3+/v7////////9/f3BwcEgICAzMzPY2Nj+/v7////////////////+/v79/f34+PhDQ0MCAgLa2tr////////////////////////////+/v7+/v6FhYUfHx/x8fH////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7z8/MKCgqnp6f+/v7////////////+/v7+/v7+/v79/f3u7u5BQUEICAguLi4ICAgbGxtISEgMDAwtLS2mpqbt7e39/f3+/v78/Pz9/f35+fnExMQ2NjYaGhrOzs78/Pz+/v7////////9/f3IyMgICAi6urr9/f3////////////////////9/f3n5+cWFhYmJiZnZ2cJCQkwMDCbm5vt7e3////+/v79/f39/f3+/v79/f36+vq+vr5BQUEKCgpoaGicnJw1NTUGBgYpKSmIiIhcXFwJCQkICAhycnL+/v7+/v7////////////////////9/f39/f38/PyRkZEMDAy4uLj8/Pz9/f3////////9/f3+/v7X19cxMTEkJCTS0tL////+/v7////////////9/f37+/tgYGADAwO2trb+/v7+/v7////////////////////+/v76+vo8PDxcXFz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f0aGhqPj4/+/v7////////////////////9/f319fVLS0sODg6ioqL19fXBwcETExMGBgYFBQUZGRlsbGzFxcX7+/v9/f3+/v7+/v7+/v78/Pzp6ek4ODg9PT34+Pj////////////+/v6Dg4MnJyf19fX+/v7////////////////////+/v6enp4FBQWtra36+vrMzMxXV1cMDAwWFhZZWVmamprLy8vk5OTx8fHw8PDj4+PFxcWSkpIdHh4DBAQDBAQDBQUDBAQGBwcFBQUGBgYCAgIEBAQODg5ISEilpaX09PT8/Pz9/f3////////////////////4+PhNTU0uLi7w8PD+/v7////////////////////i4uI5OTkeHh7V1dX9/f3////////////+/v7p6ekYGBgICAhPT0/8/Pz9/f3////////////////////9/f3Q0NAICAiysrL+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v46Ojpra2v+/v7////////////////////+/v5tbW0KCgqvr6/8/Pzi4uIvLy8cHBzExMTNzc10dHQeHh4GBgYxMTGSkpLu7u79/f3+/v77+/v8/Py9vb0HBwfGxsb////////////+/v5VVVVZWVn+/v7+/v7////////////////////e3t4eHh4rKyv19fX8/Pz9/f37+/vc3NyJiYk8PDwKCgoEBAQJCQkJCQkJCQkICAgFBQULCwsJCgoDBAQCAwMEBQVSU1OBgoIHBwdjY2OkpKQDAwNwcHAtLS0FBQUrKyuvr6/9/f3////////////////////9/f3T09MPDw+UlJT+/v7////////////////////9/f3n5+c1NTUkJCTj4+P////////+/v7+/v6Xl5cLCwuEhIQMDAzp6en9/f3////////////////////+/v5mZmYmJibz8/P+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f1ra2s5OTn9/f3+/v7////////+/v79/f22trYFBQWSkpL9/f3s7Ow3NzckJCTZ2dn+/v79/f39/f34+PixsbFOTk4JCQkTExN0dHTk5OT9/f3+/v7u7u4cHByVlZX////////////9/f1DQ0NxcXH9/f3+/v7////////////9/f309PRFRUUCAgJhYWH9/f3+/v7+/v7+/v7+/v7+/v7////29vbPz8+ysrKgoKCfn5+xsbG7u7tbW1sHCAg9Pz+3ublUVlYMDQ0PDw9PT0/y8vKVlZUTExP29vb8/Py9vb1CQkIICAhcXFzs7Oz9/f3+/v7////+/v7///////9oaGgrKyv09PT////////////////////////////o6OgnJyczMzPt7e39/f38/Pz29vYwMDBdXV3l5eUDAwOrq6v+/v7////////////8/Pz+/v7Y2NgNDQ2QkJD+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f2oqKgNDQ3p6en////////////9/f329vYsLCxHR0f7+/v5+fldXV0XFxfQ0ND9/f3////////////+/v79/f38/PzY2Nhzc3MXFxcNDQ1ycnLk5OT19fUjIyONjY3////////////+/v5FRUVqamr+/v7+/v7////////+/v75+flvb28ICAgHBweVlZX////////////////////////////////+/v7////6+vr8/Py+vr4lJSUeHh6en5/5+/v4+vqRk5MEBQUUFBTg4OD+/v5ycnIxMTH6+vr+/v7+/v76+vqgoKAXFxcxMTHa2tr7+/v9/f39/f3////////Pz88KCgq3t7f////////////////////////////+/v7W1tYWFhZUVFT4+Pj9/f2oqKgKCgrLy8v9/f0lJSV0dHT+/v7////////+/v79/f37+/tQUFArKyvx8fH////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////r6+sKCgqgoKD+/v7////////9/f2pqakGBgbMzMz9/f2mpqYJCQmqqqr9/f38/Pz////////////+/v78/Pz+/v79/f3+/v7n5+d/f38ZGRkcHByBgYESEhKpqan+/v7////////+/v5fX19LS0v+/v7+/v7////////+/v6Ojo4LCwt8fHwHBwfDw8P////////////////////////////////+/v7+/v74+PiRkZEODg5MTEzh4eH5+/vc3d1VV1cHCAhfYGAUFRWGhob9/f1RUVFRUVH+/v7+/v7+/v79/f39/f3T09MtLS0jIyPV1dX7+/v+/v7////////7+/s4ODhlZWX////////////////////////////+/v78/Py3t7cLCwuEhITZ2tovLy9ERETq6ur8/PxQUFBKSkr8/Pz////////+/v77+/ufn58FBQWxsbH9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9SUlI/Pz/7+/v+/v7+/v79/f1LS0tCQkL8/Pzs7OwkJCRdXV36+vr+/v79/f39/f3+/v75+fnr6+vY2NjCwsKsrKyampqOjo6CgoJkZGQMDAwEBAQEBASDg4OsrKzBwcHX19fm5uaIiIgfHx/u7u7+/v79/f37+/udnZ0LCwuKioqrq6sMDAzk5OT////////////////////////////+/v77+/vy8vJjY2MLCwuBgYH19fXg4OB9fX0XFxcjIyOoqKj5+fltbW0vLy/39/c4ODhtbW3////////////////////+/v7h4eE0NDQmJibe3t7+/v7///////////99fX0mJib4+Pj////////////////9/f38/Pz9/f37+/vCwsInKSkGBwcHCQkCAwMHCAgZGRlVVVVHR0cxMTH9/f3+/v7+/v7+/v7Pz88SEhJnZ2f8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v69vb0ICAi5ubn8/Pz9/f3p6ekQEBCYmJj9/f2RkZESEhLa2tr39/fZ2dmtra17e3tOTk4qKioXFxcHBwcDAwMNDQ0YGBggICAmJiYqKiopKSkHBwcKCgoDAwMEBAQHBwcHBwcUFBQWFhYEBARSUlJ+fn6hoaGSkpIKCgpzc3P6+vqLi4shISHy8vL////////////////////////////9/f3g4OBAQEAUFBSUlJSsrKxbW1sUFBQaGhp7e3vn5+f+/v79/f2wsLAPDw/d3d0jIyOEhIT////////////////////9/f38/Pzj4+MvLy84ODjx8fH////////9/f21tbUGBgbm5ub////////////////9/f38/Pzj4+NcXFwJCQk0NTUyMzMDBARpamrBw8OUlJQ6OjoCAgIiIiL4+Pj+/v79/f3e3t4oKCg7Ozvy8vL8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v74+PhISEg3Nzfy8vL9/f25ubkFBQXZ2dn4+PgpKSkyMjJlZWUpKSkMDAwHBwcnJydPT094eHienp6+vr7X19fn5+ft7e3x8fH19fX29vaqqqoJCQmmpqZvb28GBgZUVFTBwcGrq6uKioooKCgLCwsrKysGBgYCAgIDAwMYGBgyMjIlJSUYGBiGhoacnJytra27u7vDw8PIyMjDw8O3t7efn58lJSUCAgIVFRUREREICAg6OjqSkpLn5+f+/v7+/v7+/v7+/v7CwsIJCQnLy8sWFhaampr+/v7////////////////+/v7////+/v7b29sbGxtkZGT7+/v9/f3+/v7X19cICAjExMT////+/v79/f3+/v79/f3IyMglJSUkJCSurq7w8vJMTU0DBAR6fHz7/f39/f339/ddXV0FBQV/f3/8/Pzg4OAzMzMpKSng4OD+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/PzQ0NAQEBB4eHj9/f2Ojo4TExOYmJhFRUUEBAQICAgzMzNzc3OwsLDi4uL29vb9/f3+/v7+/v7////////////+/v7+/v7+/v7l5eUiIiJQUFD5+fn6+vqhoaEODg5XV1f09PT8/Pynp6cMDAxjY2MHBwd+fn61tbWSkpJxcXEdHR0WFhYjIyMSEhIGBgYDAwMDAwMDAwMFBQUFBQUDAwMcHBxAQEBsbGyioqLe3t76+vr9/f3////////////+/v7+/v6jo6MTExPNzc0PDw+vr6/////////////////////////////////9/f25ubkKCgqjo6P9/f3////p6ekODg6wsLD+/v79/f39/f38/PzAwMAYGBhHR0fm5ub8/PyVl5cLDAxMTU0PERHU1tb+/v7+/v5wcHALCwsKCgqHh4csLCwoKCja2tr8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz8/PyQkJAJCQl5eXk3NzcDAwMHBwcUFBQjIyPh4eH7+/v+/v79/f39/f3+/v7+/v79/f3+/v7+/v7////////////9/f3z8/NFRUUcHBzb29v9/f38/Pz7+/u+vr4PDw9SUlL09PTv7+8jIyMFBQWOjo7W1ta7u7ujo6OWlpYnJydFRUWpqanFxcXj4+Pi4uLb29vPz89TU1MHBwdtbW3w8PD8/Pz////////+/v79/f39/f3////////////////9/f1XV1c8PDzY2NgKCgq8vLz////////////////////////////////8/Pz8/Px2dnYcHBzn5+f////t7e0QEBCnp6f9/f3+/v78/PzU1NQcHBxOTk7x8fH8/PzQ0NAPEBBsbW3r7e0pKipZW1v9/f3+/v5UVFRKSkpRUVEEBAQuLi7g4OD8/Pz9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////8/f36/Pz09vbHycmztbW8vb3s7Oz6+vr////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f37+/v9/f3z8/OXl5cREREBAgIDBAQ2Nzfl5+c5OjpjZWX////////////////////////////////////////+/v7+/v79/f3t7e1HR0cODg68vLz8/Pz+/v7////9/f39/f29vb0PDw9YWFhKSkoDAwMDAwMFBQUGBgYICAgMDAwREREEBAQLCwsKCgoGBgYICAg7Ozt/f38sLCwVFRWlpaX8/Pz////////////////////////////////////////8/PzT09MLCwubm5vT09MGBgbLy8v////////////////////////////////////////z8/MsLCxnZ2f8/Pzn5+cPDw+tra39/f39/f3t7e0vLy82Njbu7u79/f3s7OwpKSk3Nzfw8PD9/f2mpqYICAjNzc39/f0rKysWFhYHBwccHBwSEhKrq6v6+vr8/Pz+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6hoaErKyuNjo709vb8/v77/f37/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////9/v7W2NgzNDQCBAQCAgICAwMVFRWsrKz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f36+vqrq6sqKioLCwtUVFRjY2MHCAgwMTHh4+MQERGRkpL////////////////////////////////////////9/f34+Pi2trYrKysVFRW1tbX7+/v9/f35+fnn5+ezs7N2dnY5OTkMDAwFBQUNDQ1ISEhnZ2cODg4wMDDFxcXv7+/q6uoZGRmhoaHq6urHx8dycnIFBQUFBQUEBARbW1vp6en////////////////////////////////////////+/v719fVEREQzMzPz8/PIyMgCAgLX19f////////////////////////////////////////+/v6xsbEPDw/JycnY2NgJCQm9vb3+/v77+/tnZ2cYGBjX19f9/f34+PhPT08YGBjY2Nj8/Pz9/f309PQyMjJZWVmzs7MHBwcYGBiYmJjv7+9eXl4KCgpmZmbm5ub9/f3+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9CQkIEBAQCAwM/QUHO0ND6/Pz7/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////4+fk9Pj4EBQUBAgIBAgICAwMDAwMQEBDZ2dn+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3m5uZWVlYJCQlNTU3Ly8v9/f37+/tZWloEBQUXGBgDBASlp6f+/v7////////////////////+/v7+/v709PTX19eRkZE7OzsICAhBQUHLy8vf39+urq5ycnI6OjoNDQ0LCwspKSkVFRUFBQUoKCgQEBDFxcX9/f2ysrIiIiIYGBhoaGiRkZEKCgp1dXV0dHQzMzMHBwcwMDCkpKSOjo4aGhokJCTAwMD9/f3+/v7////////////////////////////8/PxtbW0PDw/Hx8f8/Py9vb0CAgLg4OD////////////////////////////////////////////39/dFRUVSUlK3t7cDAwPd3d39/f2xsbEJCQmgoKD8/Pz7+/txcXEJCQm1tbX+/v78/Pz+/v76+vp/f38FBQUEBAQJCQnOzs78/Pz9/f37+/ubm5sdHR0YGBiAgIDc3Nz7+/v////////+/v7+/v7////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v5AQEAFBQUBAgICAwMOEBCHiYny9PT+/v7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////a29sFBQUCAwMAAgIAAgIBAwMCAgIDAwNmZmatra2xsbG0tLS0tLSzs7O2tra4uLi4uLi4uLi7u7u9vb28vLy+vr7BwcHBwcHBwcHBwcHDw8PFxcXFxcXFxcXFxcXFxcXFxcXFxcXDw8PBwcHBwcHBwcHAwMC9vb29vb26urq4uLi4uLiqqqotLS0DAwNkZGSvr6+0tLS0tLS0tLRXWVkWGBgtLi4EBQUVFRVTU1OZmZm4uLivr6+ioqKMjIxvb29LS0slJSUJCQkEBAQODg5CQkJUVFQqKioKCgoPDw8tLS1lZWWioqLIyMhnZ2cODg5+fn7r6+s8PDw2Njby8vL9/f3n5+eBgYE1NTUVFRUDAwMVFRUtLS1jY2O1tbX19fX9/f3+/v7e3t5KSkoQEBCvr6/6+vr////////////////////9/f35+fl+fn4JCQmjo6P+/v7+/v60tLQHBwfo6Oj////////////////////////////////////////+/v77+/u3t7cMDAxfX18aGhr19fXs7OwkJCRcXFz6+vr7+/uOjo4JCQmVlZX7+/v+/v729va3t7dQUFALCwsHBwcCAgI5OTn8/Pz9/f3////////+/v7i4uJ1dXUYGBgNDQ1CQkJ7e3ugoKCurq6zs7Ozs7Ozs7Ozs7Ozs7OxsbGurq6urq6urq6vr6+zs7O0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSzs7O0tLSxsbEtLS0DAwMBAgIAAgIAAgIEBQVERUXx8vL////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////Ly8sCAwMCAwMAAgIAAgIAAgIDAwMCAgIJCQkNDQ0LCwsLCwsKCgoJCQkJCQkJCQkHBwcHBwcICAgFBQUFBQUFBQUEBAQDAwMDAwMDAwMDAwMDAwMDAwMDAwMBAQECAgICAgIDAwMDAwMDAwMDAwMFBQUFBQUGBgYHBwcJCQkKCgoGBgYEBAQLCwsPDw8QEBAQEBAPDw8MDAwNDQ0JCgoCAwMGBwcDBAQGBwcFBQUICAgDAwMBAQECAgIBAQECAgICAgIDAwMDAwMDAwMNDQ0lJSVKSkp6enqwsLDf39/4+Pj9/f3Q0NA1NTUbGxuysrL9/f3+/v7Hx8cNDQ2VlZX+/v79/f39/f36+vqnp6cUFBTX19f4+Pj9/f39/f39/f39/f39/f39/f3y8vJbW1sQEBDDw8P////////////////////29vZsbGwICAiVlZX9/f39/f3+/v6rq6sMDAzu7u7////////////////////////////////////////+/v78/Pz4+Pg3NzcFBQVOTk77+/t4eHgbGxvj4+P8/Pyfn58NDQ17e3v7+/ve3t6QkJAzMzMICAg8PDyrq6tubm4DAwOVlZX8/Pz+/v7////////////+/v79/f3p6emioqJaWlorKysVFRULCwsGBgYEBAQEBAQICAgKCgoLCwsMDAwLCwsLCwsMDAwMDAwNDQ0MDAwMDAwKCgoJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkMDAwMDAwMDAwHBwcDAwMBAgIAAgIAAgIEBQUEBgbT09P////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////Y2NgGBgYCAgICAgICAgICAgIEBAQEBAR/f3/m5ubm5ubn5+fm5ubm5ubm5ubm5ubi4uLi4uLi4uLf39/d3d3d3d3c3NzZ2dnZ2dnZ2dna2tra2trZ2dnY2NjW1tbW1tbZ2dna2tra2trZ2dna2trc3Nze3t7h4eHj4+Pk5OTHx8cbGxs8PDzb29vm5ubp6enp6eno6Ojn5+fn5+fAwMAHBweam5sFBQWOjo7d3d3i4uLPz8+urq6YmJiJiYmEhISMjIycnJyxsbHLy8vk5OT19fX+/v7////+/v7+/v75+fmampoTExNDQ0Pc3Nz7+/v////////9/f1gYGAjIyPx8fH+/v7+/v7+/v6SkpIkJCT29vb+/v7////////////////////////////y8vJDQ0MjIyPt7e39/f39/f3+/v7v7+9aWloLCwubm5v9/f3////////+/v6ioqISEhLw8PD///////////////////////////////////////////////////+ampoDAwOWlpbf398ODg6Xl5f9/f2urq4QEBBPT0+YmJhKSkoODg4QEBBbW1u9vb339/f9/f12dnYFBQW/v7/9/f3+/v7////////////////////////////////4+Pjs7Ozl5eXe3t7e3t7d3d3j4+Pm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubm5ubn5+fn5+fn5+c5OTkDAwMCAgIDAwMEBAQODg6FhYX5+fn////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////4+Pg4ODgDAwMCAgICAgIDAwMEBAQODg7W1tb+/v79/f3////////////////////+/v7+/v7+/v7////////+/v7////+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////+/v7+/v7+/v7+/v7+/v7+/v7////+/v76+vpUVFQiIiLc3Nz9/f3+/v7////////////////////5+fkkJCRzc3MdHR1+fn7////+/v79/f3+/v7+/v7+/v7+/v7+/v79/f3+/v7+/v79/f3+/v7////////9/f3p6elcXFwMDAx9fX3z8/P8/Pz9/f3////////+/v7Nzc0JCQmnp6f+/v7+/v79/f1ra2tCQkL9/f3////////////////////////////////+/v7e3t4WFhZra2v9/f39/f3h4eE9PT0QEBCqqqr9/f3////////////+/v6ZmZkYGBjy8vL///////////////////////////////////////////////////+cnJwDAwOcnJxycnInJyfm5uakpKQSEhIGBgYMDAwMDAxERESamprl5eX8/Pz6+vr7+/vY2NgSEhIGBgZ3d3f9/f3+/v7////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v4+Pj4DAwMEBAQFBQVDQ0PQ0ND7+/v9/f3////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////+/v7V1dUtLS0CAgICAgICAgIODg6hoaH9/f3+/v7////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////+/v7+/v7+/v7////////+/v7+/v6+vr4ICAirq6v+/v79/f3+/v7////////////////////+/v50dHQeHh5SUlJCQkL9/f39/f3////+/v7+/v7////////////////+/v7+/v7+/v7+/v7+/v7+/v7IyMgqKioeHh64uLj8/Pz9/f39/f3////////////////6+vo8PDxNTU38/Pz+/v77+/s/Pz9qamr+/v7////////////////////////////////+/v7+/v6UlJQJCQnT09PJyckkJCQeHh7Dw8P9/f3+/v7////////+/v7+/v6SkpIeHh709PT////////////////////////////////+/v7////+/v7+/v75+fk5OTkDAwM1NTUaGhoTExMPDw8EBAQaGhpbW1ujo6Pm5ub8/Pz9/f3+/v79/f39/f35+flPT08mJiZcXFwxMTH8/Pz8/Pz+/v7////////////////////////////////////////+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////9NTU0FBQUTExOWlpb4+Pj8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz19fW8vLyhoaGvr6/p6en9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/PxUVFQ6Ojr4+Pj////////////////////////////////+/v7S0tIHBwdISEgQEBDj4+P9/f3////////////////////////////////8/Pz8/Pz8/Pz5+fmPj48LCwtJSUnj4+P////////////////////////////8/Pz8/PyLi4sODg7x8fH9/f3x8fEaGhqZmZn+/v7+/v7+/v7////+/v7////+/v7+/v7+/v7+/v79/f34+PgmJiY2NjYNDQ02Njbe3t7+/v7+/v7+/v7////8/Pz7+/v9/f2IiIgnJyf29vb+/v7+/v7+/v7+/v79/f36+vr29vbm5ubLy8upqamFhYVgYGAzMzMGBgYEBAQFBQUEBAQfHx8DAwNTU1Px8fH9/f3+/v7+/v7////////8/Pz9/f38/PyMjIwKCgq5ubmoqKgMDAzm5ub9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7h4eGPj4/g4OD9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v7+/v7+/v7////7+/v9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7t7e0VFRWVlZX+/v7////////////////////////////////9/f38/PxSUlIWFhYGBgaRkZH9/f3////////////////////////////////9/f39/f3p6elYWFgKCgp/f3/29vb9/f3////////////////////9/f3z8/Pf39+7u7t5eXkCAgJdXV1lZWVTU1MEBARBQUFbW1thYWFoaGhxcXF5eXmCgoKKioqWlpaioqKpqamysrK5ublPT08FBQU7OzvBwcHS0tLR0dHR0dHQ0NDNzc3Hx8e/v7+5ublaWlodHR2Tk5OGhoZ1dXVkZGRSUlI6OjopKSkSEhIDAwMGBgYODg4gICA8PDwKCgo9PT2pqakNDQ0FBQUICAhXV1fy8vL9/f3+/v7+/v7+/v7////////9/f38/PylpaUNDQ1/f3/7+/vg4OAEBAS4uLj9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz8/Pz+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7Ly8sHBwfR0dH////////////////////////////////////////+/v7S0tIJCQkDAwMuLi709PT+/v7////////////////+/v79/f39/f37+/vOzs4vLy8ZGRmxsbH+/v7+/v79/f3+/v7+/v729vbT09OMjIxMTEweHh4FBQUKCgoVFRUEBAQhISFCQkIhISENDQ1MTExMTExHR0dBQUE5OTkyMjIpKSkgICAaGhoXFxcTExMMDAwDAwMFBQUDAwMDAwMFBQUDAwMDAwMDAwMEBAQEBAQGBgYKCgoMDAwICAgICAgZGRkfHx8tLS08PDxRUVFnZ2eAgICampq0tLTQ0NDo6Oj4+PiSkpIODg7Hx8f7+/srKysEBARaWlr29vb9/f3+/v7////////9/f39/f39/f37+/uhoaEODg5iYmL39/f+/v78/PwVFRWMjIz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6tra0TExPo6Oj+/v7////////////////////////////////////////9/f13d3cDAwMEBASfn5/////////////////////////9/f37+/uqqqoWFhY5OTnX19f8/Pz9/f3+/v78/Pzn5+eRkZE3NzcICAgcHBxOTk6IiIi4uLjZ2dnp6ekXFxeJiYn6+vpBQUFRUVH9/f3+/v7+/v7+/v7+/v7+/v79/f35+fny8vLr6+vMzMwuLi4TExOlpaVQUFAsLCzIyMjKysrKysrJycnNzc3Q0NDU1NTY2Njc3NxWVlZCQkLw8PD5+fn9/f39/f3+/v79/f39/f3+/v7+/v78/Pz+/v7Ozs4UFBR0dHT7+/uampoLCwsDAwN9fX38/Pz9/f39/f3////////+/v78/Pzw8PB4eHgMDAxqamr19fX8/Pz+/v7+/v46OjpnZ2f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6np6cWFhbu7u7////////////////////////////////////////////+/v7y8vI1NTUEBAQmJibq6ur+/v7////////+/v7+/v74+PiHh4cLCwtcXFzu7u7+/v77+/v+/v7t7e2CgoIbGxsSEhJdXV22trbt7e3////+/v79/f3+/v78/PwfHx+BgYHc3NwJCQmcnJz+/v7////////////+/v7+/v7+/v7////+/v7d3d0zMzMgICDIyMj9/f2np6cPDw/e3t7////////////+/v7+/v7////+/v79/f1RUVFUVFT+/v7////////////////////+/v7+/v7+/v78/Pzu7u4yMjI2Njbs7OyOjo4MDAwxMTECAgIODg6ZmZn19fX8/Pz////+/v7s7OygoKAsLCwSEhKPj4/39/f+/v7+/v79/f3+/v5ZWVlISEj+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6urq4RERHm5ub+/v7////////////////////////////////////////+/v79/f3V1dUcHBwEBARra2v7+/v9/f37+/v8/Pz09PRubm4KCgqBgYH09PT+/v79/f37+/u1tbUpKSkSEhJ1dXXd3d39/f3////////////////////+/v74+PgZGRmNjY2CgoISEhLm5ub+/v7////////////////+/v7+/v7+/v7f398wMDAoKCjV1dX8/Pz+/v7k5OQMDAyjo6P////////////////////////////+/v5AQEBlZWX+/v7////////////////////+/v79/f3+/v739/dRUVEXFxfNzc2EhIQJCQl+fn68vLwFBQVHR0cICAgqKipbW1thYWFHR0cXFxcJCQlUVFTQ0ND8/Pz9/f3////////+/v7+/v5ra2s2Njb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7Ly8sGBgbNzc3+/v7////////////////////////////////////////+/v7+/v79/f28vLwQEBAJCQmxsbH9/f39/f3y8vJaWloNDQ2ZmZn6+vr9/f38/Pz5+fl8fHwJCQlOTk7a2tr9/f39/f3+/v7////////////////+/v7+/v7l5eUNDQ2kpKQdHR1eXl78/Pz////////////////////9/f38/Pzm5uYzMzMqKira2tr9/f3+/v7+/v75+fk6OjphYWH+/v7////////////////////////7+/ssLCx5eXn+/v7////////////////////////+/v729vZbW1sNDQ2zs7N4eHgLCwuJiYn5+fnf398JCQmwsLC/v79ra2tDQ0M7OztUVFSIiIjX19f7+/v9/f38/Pz+/v7////////+/v7+/v52dnYpKSn////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3s7OwSEhKYmJj9/f3////////////////////////////////////////+/v7////+/v79/f2ysrIQEBAcHBze3t729vZOTk4PDw+urq77+/v9/f39/f339/dcXFwICAiOjo75+fn9/f3////////////////////////////+/v78/PzAwMAFBQV0dHQICAjNzc3+/v7////////////////////8/Pz19fVEREQgICDY2Nj+/v7+/v7+/v7+/v7+/v5ycnIrKyv4+Pj////////////////////////w8PAdHR2QkJD+/v7////////////8/Pz+/v79/f3y8vJQUFAHBwerq6twcHAJCQmTk5P9/f3////39/cQEBCUlJT+/v7////+/v79/f3+/v7////////////+/v7////////////////+/v7+/v53d3clJSX+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/PxLS0tISEj8/Pz////////////////////////////////////////////////////8/Pz7+/vBwcEdHR0oKChJSUkSEhK5ubn6+vr8/Pz9/f35+flgYGAODg6ysrL8/Pz9/f3+/v7////////////////////////////////8/Px7e3sVFRUXFxdeXl77+/v9/f3////////////////////9/f1vb28QEBDGxsb8/Pz+/v7////////9/f39/f2vr68LCwvb29v////////////////////9/f3j4+MODg6tra3////////////////8/Pz8/PzY2Ng5OTkVFRWzs7NpaWkKCgqcnJz9/f3///////////8jIyN+fn7+/v7////////////////////////////////////////////////+/v7+/v5xcXErKyv+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v6kpKQMDAzT09P+/v7////////////////////////////////////////////////9/f38/Pz8/PzKysoMDAwEBARcXFz09PT8/Pz9/f38/PyKiooICAinp6f9/f3+/v7+/v79/f3////////////////////////////+/v729vYrKysFBQUWFhbl5eX9/f39/f3///////////////////+ysrIHBweZmZn8/Pz7+/v+/v7////////////+/v7f398KCgqnp6f////////////////////+/v7Ozs4EBATKysr+/v7////////+/v75+fmhoaEXFxcqKirFxcVkZGQMDAyioqL9/f39/f3///////////80NDRubm7////////////////////////////////////////////////////+/v7+/v5gYGA3Nzf////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////y8vInJyddXV37+/v8/Pz+/v7////////////////////////////////////////+/v79/f38/PyGhoYJCQkGBgYEBAQ3Nze5ubn6+vrLy8sQEBB4eHj6+vr9/f3////////////////////////////////////////+/v6rq6sGBgYHBweqqqr+/v7////////////////////8/Pzw8PAfHx9SUlL6+vr////////////////////////////4+PgsLCxvb2////////////////////////+tra0LCwvj4+P9/f39/f39/f3T09NPT08JCQlfX1/j4+NmZmYLCwumpqb+/v7///////////////////8/Pz9gYGD////////////////////////////////////////////////////////+/v5ERERNTU3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v6goKALCwu1tbX9/f3+/v7////////////////////////////////////////+/v79/f2ysrIMDAyLi4uHh4cEBAQICAgLCwtSUlI7OzsxMTHx8fH9/f39/f3+/v7////////////////////////////////////z8/MzMzMGBgaDg4P7+/v+/v7////////////////////8/Px8fHwUFBTc3Nz+/v7////////////////////////////+/v5dXV07Ozv9/f3///////////////////+EhIQjIyPz8/P8/Pzc3NxwcHAQEBAqKiqurq719fVra2sMDAympqb8/Pz+/v7////////////////+/v5FRUVZWVn////////////////////////////////////////////////////////+/v4iIiJubm7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v739/dRUVEgICDc3Nz9/f3+/v7+/v7////////////////////////////////9/f3e3t4eHh5fX1/5+fn7+/tdXV0RERF5eXkoKCgCAgIvLy+srKzx8fH9/f3+/v7////////+/v7+/v7////+/v7+/v7+/v7r6+toaGgGBgZ7e3v6+vr9/f3////////////////////+/v7o6OgUFBR8fHz8/Pz9/f3///////////////////////////////+RkZEZGRnt7e3+/v7////////+/v78/PxWVlZERETGxsZjY2MREREfHx+Li4vv7+/4+Ph1dXUMDAyhoaH+/v7+/v79/f3////////////////+/v5HR0dbW1v+/v7////////////////////////////////////////////////+/v7v7+8GBgaXl5f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3j4+MsLCwyMjLj4+P9/f3+/v7////////////////////////////////5+flRUVEuLi7p6en9/f37+/vv7+84ODgzMzNRUVEfHx9AQEAJCQkfHx9tbW2zs7Pm5ub8/Pz9/f39/f39/f37+/vZ2dmJiYkiIiIGBgaLi4v5+fn///////////////////////////////+MjIwNDQ3o6Oj9/f3+/v7///////////////////////////////+8vLwEBATV1dX////+/v78/Pz6+vrR0dEkJCQODg4ICAgtLS2QkJDr6+v8/Pz7+/uCgoILCwuYmJj8/Pz///////////////////////////////9BQUFfX1/////////////////////////////////////////////////////+/v67u7sEBATHx8f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f39/f3T09MhISEsLCzW1tb7+/v///////////////////////////////+lpaUPDw+/v7/9/f38/Pz+/v79/f3Y2NgYGBgFBQV7e3v5+fnPz898fHwvLy8GBgYODg4mJiY+Pj5LS0tCQkIkJCQKCgoEBAQDAwNkZGT4+Pj8/Pz////////////////////////////9/f01NTVhYWH+/v7+/v79/f3////////////////////////////////d3d0LCwuvr6/b29uqqqptbW0rKysLCwsDAwNVVVW7u7v19fX8/Pz9/f3+/v6dnZ0JCQmHh4f7+/v8/Pz///////////////////////////////81NTVsbGz////////////////////////////////////////////////////9/f17e3sUFBT19fX9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3a2towMDAXFxempqb8/Pz+/v79/f3+/v7////////9/f3t7e0hISFqamr+/v7////////////////+/v6dnZ0DAwObm5v9/f38/Pz////6+vrf39+oqKh+fn5lZWVgYGBoaGiGhoaKiooTExNSUlLz8/P////////////+/v79/f3+/v7////////////c3NwMDAy2trb8/Pz+/v7+/v7+/v7////7+/vw8PDe3t7Hx8esrKyNjY1lZWULCwsMDAwHBwcFBQUxMTFycnJsbGwQEBDj4+P////////+/v78/Py+vr4NDQ1ra2v7+/v///////////////////////////////////////8jIyN8fHz////////////////////////////////////////////////////9/f0yMjJUVFT8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f38/Pzw8PBiYmIICAhPT0/T09P7+/v////+/v7////+/v6FhYUYGBjl5eX///////////////////////+goKACAgIiIiLn5+f19fXV1dWrq6uGhoZnZ2dQUFA9PT0wMDAqKiojIyMMDAwDAwMbGxscHBwbGxscHBwgICAhISEkJCQpKSkqKiouLi4uLi4mJiYDAwMuLi4tLS0rKyslJSUfHx8TExMKCgoCAgIEBAQHBwcKCgobGxs4ODgODg5SUlK7u7vt7e38/Pz9/f1dXV07Ozv9/f3////////8/Pzl5eUdHR1LS0v29vb+/v7////////////////////////////////////4+PgQEBCTk5P////////////////////////////////////////////////////U1NQGBgajo6P+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v79/f38/Pyzs7MsLCwNDQ1jY2POzs77+/v+/v7u7u4YGBiAgID8/Pz+/v7+/v7////+/v7////+/v6CgoIMDAwJCQkvLy8ZGRkFBQUODg4eHh42NjZOTk5dXV1OTk4GBgYLCwtsbGyEhISIiIiHh4eGhoaGhoaFhYWCgoKAgIB8fHx6enp4eHh2dnY8PDwXFxd1dXV4eHh8fHyCgoKLi4uUlJShoaGwsLDFxcXX19fs7Oz8/Pz6+voqKip/f3/9/f3+/v79/f3w8PAbGxuEhIT9/f3+/v79/f38/PxPT08iIiLm5ub9/f3+/v7////////////////////////////////////i4uIHBwexsbH////////////////////////////////////////////+/v7+/v55eXkQEBDy8vL////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7x8fGWlpYpKSkJCQlDQ0OampqGhoYTExPj4+P7+/v8/Pz+/v7+/v79/f36+vrJyck7OzsGBgYODg4FBQV+fn7CwsLk5OT5+fn6+vrX19dzc3MTExM2NjbDw8P8/Pz////////////////////////////////////////+/v79/f13d3c5OTn7+/v////////////////////////////////////////////4+PgjIyOGhob+/v7+/v79/f2xsbEJCQnQ0ND+/v78/Pz8/PykpKQJCQm6urr////////////////////////////////////////+/v79/f3Dw8MEBATT09P////////////////////////////////////////+/v78/Pzu7u4cHBxra2v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v77+/v9/f3y8vKurq5PT08TExMEBAQYGBiBgYG8vLzh4eH4+Pj+/v7o6OhmZmYMDAwPDw8oKCjOzs4YGBiLi4v09PTW1taYmJhISEgODg4sLCyZmZnz8/P+/v79/f3////////////////////////////////////////+/v7+/v54eHg4ODj8/Pz////////////////////////////////////////////t7e0YGBidnZ3////////7+/tSUlI6Ojr6+vr+/v79/f3v7+8hISFjY2P9/f3////////////////////////////////////////+/v79/f2ZmZkICAj19fX////////////////////////////////////////9/f37+/uSkpIKCgrV1dX8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////9/f3AwMAEBARDQ0MeHh4FBQUSEhIrKytMTEwmJiYCAgI6OjpDQ0MXFxd+fn4iIiITExMiIiIICAgUFBROTk6srKzz8/P+/v7////////////////////////////////////////////////////+/v7+/v6Li4smJib5+fn+/v7////////////////////////////////////////V1dUHBwfCwsL9/f3+/v7a2toMDAycnJz9/f39/f39/f2Ojo4RERHk5OT8/Pz////////////////////////////////////////+/v7+/v5ra2ssLCz+/v7////////////////////////////////////////+/v7r6+sjIyNdXV37+/v9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+UlJQUFBTw8PDw8PDR0dGjo6NTU1MEBAQiIiIrKyshISEWFhYEBAQoKCgvLy8FBQVtbW24uLjo6Oj8/Pz+/v7////////////////////////////////////////////////////////////+/v7+/v6vr68JCQnp6en///////////////////////////////////////////+Xl5cWFhbq6ur+/v79/f1tbW0gICDu7u7+/v79/f329vYlJSV0dHT8/Pz9/f3////////////////////////////////////////+/v79/f01NTVfX1/+/v7////////////////////////////////////////+/v59fX0PDw/X19f9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v5cXFxDQ0P+/v7+/v7+/v7s7OwuLi45OTnr6+v29vbz8/PDw8MHBwfGxsbi4uIQEBCnp6f9/f3+/v7+/v7+/v7////////////////////////////////////////////////////////////+/v7+/v7h4eEODg6hoaH9/f3+/v7+/v7////////////////////+/v7////5+fk8PDxUVFT8/Pz9/f3e3t4MDAyLi4v9/f39/f3+/v67u7sKCgra2tr9/f3////////////////////////////////////////////9/f3m5uYPDw+bm5v+/v7////////////////////////////////+/v7+/v7Ozs4RERF+fn7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v42NjZra2v+/v7+/v79/f19fX0SEhLb29v////////////t7e0ZGRmUlJT8/PwjIyOFhYX///////////////////////////////////////////////////////////////////////////////////////9ISEg2Njb6+vr9/f39/f3////////////////////6+vr8/Pytra0ICAi7u7v9/f37+/tXV1cgICDw8PD+/v7///////9xcXE5OTn8/Pz////////////////////////////////////////////////+/v6wsLAEBATa2tr////+/v7////////////////////////////7+/vy8vI3NzcyMjLx8fH////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v4hISGCgoL////+/v7u7u4eHh56enr9/f3////////+/v79/f1PT09ISEj7+/s0NDR2dnb+/v7////////////////////////////////////////////////////////////////////////////////+/v67u7sGBgaVlZX8/Pz9/f3////////////////////9/f3a2todHR1bW1v5+fn9/f2ysrIGBgasrKz7+/v////////+/v44ODh2dnb+/v7////////////////////////////////////////////////+/v5mZmYsLCz5+fn9/f3////////////////////////////////4+Phra2sQEBDKysr9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f0fHx+Dg4P////9/f27u7sFBQXR0dH+/v7////////////9/f2ioqINDQ3a2tovLy99fX39/f3////////////////////////////////////////////////////////////////////////////////////8/PxiYmIODg63t7f8/Pz+/v7+/v7////////////U1NQpKSkvLy/o6Oj9/f3j4+MhISFUVFT9/f3+/v7////////29vYcHBybm5v////////////////////////////////////////////////////z8/MiIiJ3d3f+/v7////////////////////////9/f38/Pz+/v6SkpIICAibm5v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v4xMTFubm7+/v7///+NjY0dHR3x8fH+/v7////////////9/f3r6+seHh5zc3MYGBiYmJj9/f3////////////////////////////////////////////////////////////////////////////////+/v78/Pzy8vJLS0sNDQ18fHzd3d319fX19fXe3t6FhYUTExM5OTnf39/7+/vy8vJJSUkjIyPl5eX+/v7+/v7+/v7////v7+8VFRWoqKj+/v7///////////////////////////////////////////////+6uroHBwfJycn////////////////////////////+/v78/Pyjo6MKCgp3d3f8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v5ZWVk+Pj7+/v7+/v52dnYpKSn39/f+/v7////////////+/v79/f2BgYEJCQkEBATLy8v9/f3////////////////////////////////////////////////////////////////////////////////////9/f39/f3z8/ODg4MYGBgMDAwpKSknJycMDAwXFxd+fn7w8PD7+/v4+PhwcHAQEBDBwcH8/Pz+/v7+/v7////////19fUaGhqUlJT+/v7///////////////////////////////////////////////9eXl4wMDD39/f////////////////////////////8/PyhoaEJCQllZWX39/f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+enp4NDQ3h4eH+/v57e3slJSX09PT+/v7////////////////////q6uoeHh4aGhr09PT8/Pz////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7m5uapqal/f3+BgYGqqqrn5+f9/f39/f36+vqBgYEMDAycnJz8/Pz+/v7////////////////+/v48PDxhYWH9/f3////////////////////////////////////////+/v7i4uITExOJiYn+/v7////////////////////8/Pz5+fmFhYULCwtra2v19fX9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////w8PAVFRV2dnb9/f2ampoTExPp6en+/v7////////////////////c3NwWFhYGBgalpaX8/Pz////////////////////////////////////////////////////////////////////////////////////////////+/v79/f39/f38/Pz8/Pz9/f39/f38/Pz8/Pz4+PiBgYEKCgqPj4/7+/v8/Pz+/v7////////////////+/v6CgoIZGRnv7+/////////////////////////////////////+/v7+/v6Hh4cTExPg4OD////////////////////+/v7n5+daWloMDAyDg4P5+fn9/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/PyGhoYPDw/Hx8fLy8sFBQXAwMD+/v7+/v7+/v79/f39/f329vZKSkolJSVcXFwQEBDMzMz9/f3+/v7+/v7////////////////////////////////////////////////////////////////////////////////+/v7////+/v7////////+/v79/f3+/v719fVoaGgKCgqPj4/7+/v+/v7////+/v7////////////////+/v7f398SEhJ7e3v9/f3+/v7////+/v7////////////////////////v7+8jIyNnZ2f9/f3+/v7////+/v7+/v77+/uwsLAkJCQcHByurq79/f3+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f339/dAQEAeHh7FxcUlJSVvb2/+/v79/f39/f39/f319fVfX18MDAy3t7f09PREREQZGRnMzMz7+/v9/f3////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3i4uI9PT0QEBCjo6P7+/v8/Pz////////////////////////////////9/f2Pj48ICAikpKT9/f38/Pz+/v7+/v7////////////////+/v6RkZEMDAzS0tL9/f3+/v7+/v7+/v7JyclLS0sGBgZSUlLf39/+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3p6ek/Pz8TExMmJiYZGRnt7e39/f329va5ubk0NDQPDw+srKz9/f38/Pzw8PBEREQSEhKysrL8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////8/PykpKQWFhYlJSXJycn8/Pz8/Pz9/f3////////////////////////////////8/Pz8/Pxzc3MGBgZvb2/n5+f8/Pz+/v7////////////////s7OwfHx9kZGT9/f38/Pzy8vKtra1FRUUICAgxMTGysrL7+/v9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////z8/ODg4MYGBgDAwMvLy9EREQhISEHBwc+Pj7Ly8v+/v7////////9/f3y8vJiYmIKCgp2dnbv7+/9/f39/f39/f3+/v7////////////////////////////////////////////////////////////////+/v79/f37+/vOzs5JSUkHBwdfX1/r6+v8/Pz+/v7////////////////////////////////////////////////8/PyXl5cYGBgUFBRkZGSvr6/e3t7w8PDz8/P09PR5eXkPDw+qqqqWlpZZWVkWFhYKCgo/Pz+pqan39/f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3o6OhiYmIDAwNZWVmIiIjExMT5+fn9/f3////////+/v7+/v79/f37+/ufn58cHBwoKCikpKTy8vL9/f3+/v7////////////////////////////////////////////////////////////9/f34+PjHx8dbW1sMDAwxMTG0tLT8/Pz8/Pz9/f3+/v7////////////////////////////////////////////////9/f3+/v7l5eWFhYUxMTEMDAwFBQUVFRUeHh4jIyMKCgoEBAQGBgYVFRU+Pj6GhobR0dH7+/v8/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////8/Pzn5+cgICBiYmL8/Pz9/f3+/v7+/v7////////////+/v7+/v7+/v7+/v7i4uJoaGgREREtLS2Pj4/e3t78/Pz+/v7+/v7////////////////////////////////+/v7+/v76+vrc3NyVlZU9PT0ICAgsLCyamprz8/P9/f39/f3+/v7+/v7////////////////////////////////////////////////////////////+/v7+/v76+vra2tqxsbGTk5OAgIAQEBAqKiqlpaXKysrq6ur9/f3+/v7+/v7+/v7+/v7////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pyrq6sJCQmsrKz9/f3////////////////////////////////////+/v78/PzY2Nh1dXUhISEPDw8+Pj57e3usrKzQ0NDk5OTv7+/z8/Py8vLr6+ve3t7Hx8egoKBtbW02NjYNDQ0ODg5LS0usrKzz8/P9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz7+/uKiooLCwu+vr78/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f35+flqamoYGBjY2Nj////////////////////////////////////////9/f3+/v79/f3w8PC4uLhvb283NzcREREHBwcPDw8WFhYYGBgYGBgUFBQMDAwDAwMJCQkpKSlbW1uenp7h4eH7+/v9/f39/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////+/v79/f3AwMANDQ15eXn8/Pz9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////09PQ6OjouLi7l5eX8/Pz////////////////////////////////////////////////////////7+/vt7e3R0dG2traioqKTk5OSkpKbm5uvr6/IyMjo6Oj39/f////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f38/Pz8/Pzg4OAjIyM+Pj729vb+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3j4+MlJSU9PT3u7u7////////////////////////////////////////////////////////////+/v7+/v79/f3+/v7+/v7+/v7+/v7+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz8/Pzv7+89PT0iIiLh4eH8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3V1dUdHR0/Pz/r6+v+/v7+/v7+/v7////////////////////////////////////////////////+/v7////////////+/v7////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f3y8vJNTU0UFBTKysr8/Pz+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7Nzc0eHh43Nzfe3t7+/v7////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f38/Pzw8PBSUlIRERG4uLj8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v77+/vR0dEqKionJyfMzMz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3p6elLS0sSEhKysrL8/Pz8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////g4OA9PT0VFRWkpKT6+vr8/Pz+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f38/Pz9/f3Z2dkzMzMVFRW3t7f9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3u7u5mZmYICAhoaGjp6en9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76+vr8/PyxsbEaGhooKCjKysr7+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f35+fmhoaEVFRUoKCiysrL7+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v7////////+/v7t7e1xcXEKCgpLS0vk5OT9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7Z2dlPT08HBwdUVFTV1dX+/v78/Pz+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f39/f39/f36+vq1tbUtLS0ODg6Li4v29vb8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz5+fmsrKwnJycMDAxoaGja2tr9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f3R0dFPT08FBQVERETS0tL7+/v9/f38/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7////29vaRkZEhISEJCQlYWFjBwcH7+/v+/v7+/v7+/v7+/v7////+/v7////////////////////////////////////////////////////////////////+/v7+/v7////+/v7+/v79/f3+/v77+/vIyMhWVlYGBgYrKyurq6v8/Pz////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v77+/vw8PCampowMDAHBwcvLy+IiIjY2Nj4+Pj9/f38/Pz+/v7////////////////////////////////////////////////////////////////////+/v79/f3+/v77+/vm5uaampo7OzsGBgY0NDSenp709PT8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz8/Pz5+fm8vLxfX18YGBgHBwc0NDR1dXW2trbk5OT5+fn////////////////////////////////////////////////////////////9/f3w8PDOzs6Pj49ISEgQEBAUFBRYWFi5ubn4+Pj9/f39/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pzq6uqwsLBlZWUqKioJCQkPDw8wMDBZWVmBgYGkpKTBwcHV1dXg4ODm5ubn5+fn5+fj4+Pd3d3MzMy2traWlpZwcHBEREQeHh4GBgYdHR1WVlahoaHl5eX9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f39/f329vbY2NioqKhycnJKSkopKSkUFBQGBgYFBQULCwsQEBASEhISEhIPDw8JCQkEBAQNDQ0gICA6OjpiYmKWlpbKysrw8PD+/v79/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v729vbr6+vc3NzKysq8vLyysrKtra2vr6+2trbDw8PV1dXm5uby8vL9/f3////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Alors Moodle, c'est une plateforme de FOAD (qui signifie Formation Ouverte et/ou A Distance). C'est pour les profs un outil "interface", un complément d'aide à l'enseignement à destination des loupiots, évidemment.
Un avantage du truc: il est goupillé pour être servi à consommer sur place ou à emporter (présentiel et/ou distanciel), il suffit d'un accès à internet et d'un navigateur. C'est du logiciel libre, c'est gratuit, en train d'être porté dans tous les établissements et on le retrouve dans les lycées et les universités. Enfin bref, c'est du sérieux...
On peut créer des supports de cours juste en important des documents (libre office, pdf, audios, vidéos, etc...), on peut faire de la vidéo-conf, des qcm et des tests, des contenus interactifs H5P, etc...
D'une année sur l'autre les cours peuvent être sauvés/restaurés; la base des profs, des élèves et des classes est directement extraite de siecle. Bref c'est pensé pour durer.
(rédaction en cours...)
/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAFnAWgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9C6KKKACiiigAooooAKKQ9KQGk2luw17DqKjZwuM0nmcZ3Lj3NPpcCWioBcL/AH1/Oj7Qv99fzouu47MnoqD7QPUD6mj7Qv8AfX86V13CzJ6Kg+0L/fX86csyMT86/nTuu4WZLRULTqCRvX86Q3C+oH1NF13CzJ6Kg+0L/fX86PtC/wB9fzouu4WZPRUH2hf76/nR9oX++v50XXcLMnoqD7Qv99fzoFwPUH6GlddwsyeioPtC/wB9fzo+0L/fX86d13CzJ6KhFwpIG9fzpXmRcfOv50XXcLMloqD7QMdQffNH2hf76/nSuu4WZPRUH2hf76/nR9oX++v507ruFmT0VB9oX++v50faF/vr+dF13CzJ6Kg+0L2IP0NOEwx1o0fUWxLRTSV7HmjNOzteweg6ikBpaQBRRRQAUUUUANK4+buKKU9CKKAFooooAKKKSgAzSbxkjI45NNZwisTwBXBeOvilp3hLdCoN1qOPlgU8LnpuI/lXPXxNHC03VrysjswuEr4yoqVCDk/I7e6vILSIySvtUDJJbAxXHap8UdNsg32d2un5G5CNmfTJrwXXfHureIZjJeXBcZysA4jj9ttYkt5JcLtlJkHUAnAFfnWN4tfO4YRbdWfpWB4LStLGzu+y6erPZNQ+NA34M6xEDlIUMhH49Kw7n4xyNL8jXkq+u5UFeY9+mBRXylfP8fWk26h9pQ4ey6iv4R6E/wAXrrd8kMxX0a5I/kKT/hb15/zwk/8AApv8K8+orh/tTGf8/Gdv9jZf/wA+Uegf8Ldu/wDn3f8A8Cm/wpf+FvXn/PCT/wACm/wrz6lVd2ecUf2pjP8An4w/sbL/APnyj0D/AIW9ef8APCT/AMCm/wAKUfF29PSCT/wKb/CuA8o+v6U5EKk80f2pjP8An4w/sbL/APnyjvT8W70/8u8n/gS3+FH/AAtq9/59pP8AwJb/AArhaKP7Uxn/AD8Yf2Nl/wDz5R3X/C273/n3k/8AApv8KP8Ahbd7/wA+8n/gU3+FcMBml2H1/Sj+1MZ/z8Yf2Nl//PlHcf8AC273/n3k/wDAlv8ACj/hbd7/AM+8n/gU3+FcPsPr+lGw+v6Uf2pjP+fjD+xsv/58o7j/AIW3e/8APvJ/4FN/hR/wtq9/59pP/Alv8K4fYfX9KNh9f0o/tTGf8/GH9jZf/wA+Udx/wtu9/wCfeT/wKb/Cj/hbd7/z7yf+BTf4Vw+w+v6UhGDR/amM/wCfjD+xsv8A+fKO5/4W5ff8+8n/AIFN/hSn4uXx/wCXeT/wKb/CuEoPSj+1MZ/z8Yf2Nl//AD5R3J+Ll2Dzbv8A+BLf4Uf8LevP+eEn/gU3+FcE0ZLE5/Smsm0dc0f2pjP+fjD+xsv/AOfKO/8A+FvXn/PCT/wKb/Cj/hb15/zwk/8AApv8K8+oo/tTGf8APxh/Y2X/APPlHoP/AAt68/54Sf8AgU3+FH/C3rz/AJ4Sf+BTf4V59RR/amM/5+MP7Gy//nyj0EfF25LDfBNt/wBm5J/nV21+Mbxvj/TYE9d4k/Q15jRTWbY2LuqjInkmXzVvZI9r0/40McZuYpT1xMhRj+XFddpHxV06/VPtTfZCcAlyNv59q+Zt205xn61Il3NFxHIyKfvLnIYfSvcw3FGMofG+ZdjwMVwfgMSrQVn5M+yoL2K5jDROroRkMhBGPrUwfPevkzQ/H+r+HLmOSzn2xL1tnJ8pvw7fUV7r4B+Ken+LV8qTFpqIGGgZuDj+6T1+lfoGW8Q4XH2i3yyZ+dZrwxjMt/eQXtKfdbr1O/zS1D5nA45Pb0qUHivq2raHx4hcDuKUHNAA7jNAGKkBaKKKACiiigBCaill8rBxu/2fWpGrzr4qePj4X0mWC2w9/OCsaZwVHTd/hXJi8TDB0JV6uyOvCYaeMrxoUt2ZXxR+LA0lX0vSmWS/Zf3snaEf1avBpJ5Z5WkkkeSRjlnZsk/U0SvJNKzyMXkY7mZupNNAr8NzXN6ubVOeWkOiP6EyfJqOUUVCKvN7v89RSM0Yoorwm29D6Fe6rIMUUUUgCineWfb86fGu0c/pQACNT2pyoF6UtLtPt+dACZpVAYnNPHSloFdCbAKQIKcacI29vzoIk+w0DHSinbG9vzo8tvagz5vMbRTvLb2o8tvagXP5jaKd5be1Hlt7UBz+Y2kK5qTyz7fnR5Z9vzoKuyLYM0FBT2QjnikoLi+5EeCRSMobrU1NYZ6frQXdEJiX0qKrO0+350lAyvRUjoSRjH500oR6fnQA2iiigAIzSbaWindisr3EKBhg9Kkhme3kDxM8cgO4OpxtNMpCMmhOUXzRdmTOKkmmr3Pevhb8V/7YkXS9UOy+C4ikPSUD0/2vrXq8UvmrkcCvjGKaS3kWSORo5E+ZHTgq1fRvwo+IH/CTaZ9mvGxqEACuP74/vD196/XuHM++uJYXE/Etmfi/E3D6wfNjcP8AC9129D0UHmnUxDnpT6+83PztqzCiiigQUhpaYTg0AUNa1eHSdPnuZm2xRoxZj2wOa+T/ABR4hm8Ta1cahKxzI37sf3I/4R/WvXfjv4m+zaZDpkLsGvGJbHZFPP5nivDQM1+V8X49zqLAxfurV+p+xcF5bGFJ46a96Wi9AHNLRjFFfnLd3c/TUuVWQUUUdTSGFPSMEA/1pY1PORUgBxwKADpTlXcKFU55FOxzQJuwgQA5/rTqNuTipI0IzkUEc5GOWAqTyx7/AJ08J6Cl2HPQ0N2MOYj8se/51JmpFGFGaf5behqeYXOQqu6neWP8mpPLP92lWMhh8tHMQ9SLYPX9aNg9f1q0FGKNoo5hFXYPX9aCg/yatbRSFR6UcwFXYPf86aeDU/lt6Gjy29DRzGnMV2AYYphjHv8AnVooQMkUx1J6CjmDnKpwCRSZ5qxsPpUci5XgZ5qioz1I6b5Y9/zp/lt6UmKDbnI2G000jcKlxkUwggnigtO6uQOgTFNqxgGoWQ7uBxQMbRRRQAUUUUAB4rV8L+IpfDWt2uoIciJwZF/vp3H9fwrJbpSZx7+tdWGqzw9SNam7NM5sTRp4mi6NVXi9z7F0PVIdU06G4hfekqCRD2welaQPFeOfAXxJ9o02bTZ3G+zOEJPWNskfkeK9gDAge/av6Dy/FLHYWniF9rfyZ/NGY4SWAxdTDS+y9PNDj9R9O9FLiiu488WoJ3EcbsegUmp6ztYlaK0kxtyVOAaFo9RO7Wh8z/FbV/7X8cXio2Y7VBCOeAcbj/hXJVY1a7W/1jVLpCWWW7kZWbqRuIH5Diq9fzvmdZ4nG1asnu/y0P6bymisNgKNKK2S/EKKKK8w9YD0qRY+Qc0RoCpyO/epFHIGKABVzUgXA9aFAFLQIAfanJHuGc0IuScjj3FSgY6D8qDFtvcYI8HrmpVTIPOKcFyfu/pTtmAcD9Khsyk3fQFXkCpPJ9/0pyqoAOBmnCldmdyPyvf9KkH0pfwNPCD0/SkQ2R/hSgZIFSeX/s/pRs5+7+lArsbs96PL9zUmD6H8qTn0NAXYzy/c008HFS8+hpNmf4f0oBNvYi/Cj8Kl2f7P6UbB6D8qNhXuQsu4Y6Uww+/6VOygDgU2gtMrMuCRTPK96tFVJ5AzTHUAcD8qd2VcrMuKiaPaCc1aKZ/h/So3QFT8ufwqkzSLvuVelBGe1T7B6ComGGPBxVGykyPy/c00rzipqYVB9KDYrMm0dc02pyoYc81E64bgcewoAbRRRQAUmKWimm1sKybudX8KtVfSfHFkBxHdK0L8ZDHqK+o7Y+ZEjHjHavjfTLo2Gr6fchivlXMbHB7E4I/WvsPTZPMtVOceimv2Dg+t7TBTh/Kz8S42oKljoVP5kXaKKK+6Pz0KxvEuRYOV4PT9c/0rZrH8S/8AIOf8P50nsxxV5I+ObM7oWJ6+bJ/6EasVXsx+4b/rrJ/6EasV/Nlf+NP1f5n9S4VWoQ9F+QVIiEHOajz0qxWB1AelSL0pqKGFOFAm7CmnKhODmiNQxOalAxgUGLd3cUDORmpEGBSBAKljQMKhu5i5XQqxkHOako6UqjINSZN2AIT3pyrg9aXO0c9BR5iD2/GhXb1Mrp7D1QsM5p6xkHJIqubxY8gDpXP638R9D8Pp/wATDVrGyYDlZ7hA35Zz+lbQoVajtCLfyMZV6cPikdZ+OPrTWO0ZPA+teK6t+1V4E0wsF1WS+deq2dq7j8ztFcNq/wC2fpMW5dN0DULwno1xKkI/IbjXsUMizLEK8KLPIr57l9C6lVVz6iEq4+9ioXu4kbBavi/Vf2zPEs4YWOiaZZjs0zyTN+WVH865DU/2oviJqGWTV4LHPazs0XH4tk/rXr0+EMxnZzSivN/8A8afFeBi2oty9F/wT7+N9H2yffiopdTSE85RfVhj9en61+bWo/GPxxqrMbnxXqrA9VS4MY/8dxXPyarq2tThJr6+1CV+kctw8hb/AL6NepS4KqX9+tp6XPOrcYQilyUtX5n6U3vj/QdNBN3rNhahepluo1/9mq34f8XaN4oknXStUttQ8gr5jW771GenI4r46+DX7Mlx4lki1bWUFvZjDxoy/M309f8Ae6elfZHhPwxZeFtNistMtktLZQPkT+L/AHietfN5tl+By393Tquc/wAD6PK8djMd+9qQUYfia4QsAcjmmshX8amC7ePSkKhsZ/nXy/Mj6RO5WKEk80hXFWTGAP8A69REBhzVlERFQshUE1O3BpGXcMGg0TuVHXOKYwzkZqxIgGKjZBgmrTNVLoVWQqKbipyocDNRMNrECqNouzIipUUhqQjd1qNhg0GqdyA9T9aSnugCk0ygYUUUUAVrzcsaspwRIn86+xvDRZtOQsc5ycnr1r46vP8AUf8AbRP519jeGR/xLF/Kv1Xg7+FWXofj3HX8eh6M2KKbyOf4R1or9GPzAdWP4lONOc+h/wAa2Kx/E3/IMl/Ck9mXD4kfHNlxA/8A11k/9CNWKgtP9U//AF2k/wDQjVhV3Gv5sr/xp+r/ADP6lw/8Cn/hX5EkQ+QVIvX8Kaq7VxUgXHrWBu9h2falj++KQjipFQAg5oMW29yQD0FPUdBSJ0NDTKpOTjFDMnJ3sTxoQx4H508sFODxWTqPiC102Ey3EyW8a8l5WCjFeaeKPjzpdkjpp8MuozdAV+RB+J6j6V34PLcVjmlh6bfnsjxsXmWEwSvWqpPt1PXXukUjDjJ4ArD8Q+OtI8NQs+p6nbWIAziaQAn6Ac18w+JfjD4n1pnVL3+zoWGDHZjaT9W6mvOrp2upC0jNJK3V3O5j75PNfbYXguq2pYqqkuy1/E+JxXGENVhad33en4H0l4m/ai0PTwyaXBd6m4yAyoIkJ+rc49wPwry3xD+0/wCK9QLR6fDZ6XCc/dQzyD33PgfpXnN1pF7HZfa2tpvsowDMykDngfX61iyffr7DC8OZbhVpT5n3Z8hiuIcxxjtKpyry0NjX/iJ4p1/P9oeIL+ZTzsExVPxC4rlHUFncgM7clmGW/Ordx0qu/Q19BSo06CtSil8jxalSpV/iSb+ZTbknriqxq0ep+tV63bb1e5kkkrET8EUw5KnjJqR13EYPPQKBya9E+F3wR1z4iXiMkJt7FT+8nfIVfqff0HNc1WtRw0HUrS5V3ZpTp1Ks1Tpq7ZxHhjwlqPi2/S10+3eV2O3cgJwfbHWvsP4N/sx2PhpIb/Wo0vNRIDCJuUU993r9OnrXp/w3+EGj+AdPjitLdTcAAG4ZMN77eyr7D616LFbpEgULivyfO+KZYhPD4PSPV/5H6XlXDsaK9tidZdEU7TTYrVNqIB71ajj2D8akK7R1oyK/OZSc3eTuz71e6rLREBiJPOMH3pkkWzGMVayKY6h+5qSk2ip3xTZFJHGKmaMBzyaaw296rmZqiswxURBFWWQMc5PpURGQRmri7jTIutQuhy3pU5G09aa/3T9Ks0TKj9BULKS3arJG4DmoiMHGatO5rGTbK+aD9KeyBR1zTSKo2UmiKopeoqdlwCajdN3rxQbENFKRgkUlAFe8/wBR/wBtE/nX2N4ZP/EsX86+Obz/AFH/AG0T+dfY3hj/AJBiflX6rwd/DrfI/HuOv49D0ZrnoaKWiv0Y/MArI8Sf8g9vrzWvWP4k/wCQe49cfzFJ7MuHxI+ObLJgb/rrJ/6EauRghjkEVV0/mL/tq/8A6EavV/Nlf+NP1f5n9S4f+DT/AMK/IMEjgZqXtTEPy9KDIMkZGeuKxSuazkorUeMtwOT7VLvEeMkDHYmse/1yCwQs77QASSK5SXxJq3iO5az0Kwnv7psKqwwmaQHP91RXtYDKMXmEv3Ufd6v/AIc+czLN8Jl0f3sve6L/AIY63V/EtnpELSXMyxp/e5zn2FeZ+Jvi7c/vI9Mi2ActPMMkD2Xt+NdVcfs8eLSo1HxdqGkeCrRxuM3iXUFilK+qwLl8+2Ky59G+DHhEM1/r3iTx/eKeYtIthp1ln/rrLlyPdR+FfpWA4WwuGfNiP3j89vkfluYcVYrE6Yf92vLf5ni+vazeaxM0uoXMk5PIMzAKPoP8KveFfg545+Ickf8AwjfhHV9Wi6+fDaFYQPeR9qj8DXpUv7Q1j4aTb4G+G/hbwtIp/d319bnVL0f7XmTfLn/gOK8/8bfGzx948Vo9c8YaxfW2f+PX7U0UGPTy02rj2xX2sIRpQ5Kei7HxVSrOtLnmzopv2YJ/DjA+PPH/AIQ8ChQA9pNqH2+9x3xDBuOfq1UpV/Z98E43jxl8Tr9D1j8vRrAkf99TEV5DMNpIAwT1I4z+WP61Rk+61NabEPXc9F+IfxztfE3hy88P6H4D8P8AhXSboxhmjMt7eKqMGRVuJW/dgFedqgndgmvGZPv1oz1nSffNA1oyvcdKryfdNWLjpVZz8p/zig2TuU3YLnJxSQ2k1/cpFbRmR25wvQDuT6D3q9baVJcxvPMRbWMZ/ezSfxegT+8ag1HWljga001DbWJ5eQnEsx9CfT2oBnvPwL/Z5t/EPl6xrNxHNZg/6qCVXYgdsg4Uf7R5r7H8OeHbPQbKG3s4Y4IEGESNcAf/AF/evzA8L+Ndc8Eail9oOpT6XOp/5Y48th3DJ91gfcV9m/AL9qLT/iC8Oi60kWl+I/uoiEi3vMDJ2Z+6467e46HtX5jxPgcxq3qqXNSXRdPPzP0Dh3F4CmvZyjy1H1fU+jETjAHvgU4ofQ1Ha3UUqK6tw3TPfHXFWc5Ffkr93Rn6KmnqiHaDTeF9BUUt5HAhZ2wByea0dF8J+JfF2xtG0a5nt2/5eZFEcP13tgH8M100sNWry5aUG35GFXFUsPHmqSS9WZzMFGTwKb5qHo4PsDmvSNK/Zr8T35VtQ1mwsEP8MKtMwH/jvNdFB+yrAQDceJ7tz/0yt0Uf+PZr6KjwxmlXV0rLza/zPDqcR5fTfx3fkn/keKs6DPIzUBZe5UfUivex+yvpAXB17VCfYRj/ANlqGb9lLTGTEfiLUkb1eOJh+WBXY+Esy/lj95l/rXgH1l92h4MWVmwpB+lNYAocDmvYdQ/ZTv4Vc2PieOQ4+Vbq0IBPuVbP6Vx+sfAnxzopLpp8OqxAZzYzgt/3y4WuKvkGZYeN50m15Wf5Hp4fP8traRqpPzuvzOKI9RULfeNJfG50m4NtqFpPYXI4MV0hjI/AjJ/AU1ZUk5VgfavAcJxdpJr1VvzPoac4VlzU5JryYSL0wv5VCVwelWM1DJ941KZ07FZwSvrURGOvFWGTA65/CopfvCtDSOxG/Kmozx2qao37UHWV3B3E4OKbU7DioB0oAgvP9T/20T+dfYvhn/kGJ9P1r45vP9R/20T+dfY3hn/kFr9a/VeDv4db5H49x1/HoejNiiiiv0Y/MArI8SH/AEBvr/UVr1keJP8AkHt7HP8AT+tJ7MuHxI+OdP8Aue3mP/6Eav1RsFIiJ4/1sh/8eNXHGe5X3FfzbX/iz9X+Z/UlF8tCm/7q/Ihnv0thyR+dXvD3gXxD41tpNRgW30jQ48rLrGqSeVbrjrg9XPsozVGeeKR4YG02GUu6oXLsCckDt9a7r42eIFu/HF5oh02GfS9GKWtnA7sqRjy1LEKOM7ieTzX2GV0cro0vrWMne1lb1Pg82xObYiusHg6fLdN81+iOMvrz4XeDxn7PffEXU0Iw9wxs9NVvUD78nPTOK5zxF+0L4vntZbLRLiz8G6WRgWXh23W1z/vSD94xx1yRWrJZ28gJXRtNBPeSIv8AzNDadmMrHpekIT0/0IN/M19rDiTKoRUKTsl0sfCVeGs2nLnqq7fmeE6ndSX1zLNczvczMctJNIZGJ9SWJNYVw6GVyWXcTjJIzX0XJo19KuI7bSE9/wCyojj86rvomvhdsd7psKjjjRIDj6elbriXK7XdWxyvhrM76QX3nzRMy84YY7c1nyoz52ozf7oJr1b4p/E7xX8NNRsLRb63ujdRNJuj0+CILg4x905rhp/2i/Gki4j1N4vZIYV/9kr3cNiaWLpqrRd0zw6+Fq4Wbp1laSOUltLiU5S1nPuImP8ASq//AAj+qzk+Xpl+4/2LWQ/+y11Evx/8eSKVHiS/UH+4yL/JazJ/jZ4+kyD4q1RQf7l0y/yrqOUxT4L8RXLYh8PavIP9mwlJ/Dim/wDCrfGU5Jj8J642em3T5P1ytWLr4t+ObgFW8Xa2B04vpB/Wsq48eeKpf9Z4n1mQnrv1GY/+zUAaA+CvxBuFXy/BWuvno32JgP5Vy93pf/CPTyR61G8V/ExVtOXG5SP+enoPanXXiXWppCZdb1N2Bzk3kh/m1YU7PLK0jOzs7FmZyWZie5J5NBpATUdRm1OZWlICIMJEv3EHoB/Ws7y1PJGT71Zk+9+AqAUGhDIoXGOKW0aZbq3a2LJdCQPE8fDhweCCOcg457UTnHYng8DrX1n+wZ+yTefGvxvHrut20kXhTTZFknZxtMjYysS/7Tfouc84pEydtVufXv7Onwk8ZePPgXpniHxDcwQ+JZhvt2MPli9gA+V5AOA7HIDgAEAHHq+LT9Zute/sBNPlh1sNg2kn3kH94n+7/tdDX2fa2SWVvFBDGkMESLHHFGMKigYAA7ADjHtUf9k2o1A3wtohemPyjcBB5hTOdu7rjPavi8x4XwWNqKrBcr626n0eDz/E4ak6cnzL8jzH4ffAnS/DnlXmtiPWdV4b50/cRH/YQ9T/ALR/DFeqCJVAUIMDoBwBVkDijFfUYTB0MFBQoRsfP4nE1sXUdSvLmZCq4I4H86mHSjFLXYcoUUUUxjGQHqM1EFweMVYpKAuzG1/w5pfiWze01bToNRt2H+qnjDj8M9D9K8G8ffsyvbebf+EZ3G35m025O4MP+mbnkH2b8DX0limSrlGAwTjvXlY7LMLmEHGvDXv1PSweY4nATU6EreXQ+Ays9pdTWl5DJa3cTESQTrtZT0/EUu1W5619Y/Fr4P2HxI095FVbTXIUJt73Gc/7L+q/yr5Hu7e80bUbnTNRhNrqNq5jmgb+E9seqkcg+hr8azrJa+W1eZawfX/M/Z8kzuhmdJxbtUW6/wAgc/LUTIG5IqRhkcU08cV85HY+siQdzUcnankcn60Y4NUdClfQhbpUHarLfeNRTfdH1oLKd5/qP+2ifzr7G8M/8gxPpn8a+Obz/Uf9tE/nX2N4a+XTUB6nmv1Xg7+HW+R+Pcdfx6HozYopM/8A66K/Rj8wFrH8Sf8AIPcev+IrYrG8TDOnSDucY/Ok9mXD4kfIGn823/bR/wD0I1bChic1UsDugbbz+8k/9CNXEBBORX82V/40/V/mf1LQ1oU7/wAq/Ik0qNZfEekQ4yXvYIz9DIoP863PiRKJfib4ozgn+0ph+AOB+gFZegDPi3RP+whb/wDoxa1PHQz8RPFR/wCopc/+jDXoRk1l8/8AEjwqi/4UYv8AuP8A9Lt+RmKi46D8qsCMY6VAn3TVpeleM3c9UI0xnk08j5cdR0oj6mp1TcgHciobdiG7M+W/2obUz+J9GyMKLRyMevmEf0rxoWQ9K9+/aSszJrGgzngeVKgP4g15zpPgW+1oLN5f2WzzzPIOTn+6K/d+GrPLYM/C+I7rHzRwfkMP4c+1Tx6FeXA3LbsF/vP8o/8Ar16rF4TsdFYeTH58o6zy/eP0FZ2pKVL549K+pPljzefw5JEP3sqLnsgzWdPpCrnMp9vlrstQHzCsDUegppN6IDlbyy2SNiQY9xWbOgU4H863LwZY1l3C5LYGcDNFmjWKdrmU54J79KgLBRkngDJ5xWnaWc2oTiG2haeU9FjXP/6q+j/2eP2VrLxT4i0288d38miaIz5d1iLDqMAdhn/now2j+6etc9WvSoJOrNRv3djeFKpWT9nFv01Oc/ZV/ZO8RftC+L40WFrPQbVla7vZE/dxrkZ543MR91R16nAFftB8N/hzofwv8H6f4d0C0Fpp9mmFH8Tt/E7Hux7mj4d+CvD/AMPvDFno/hqxisdJhQGIR8+Zn+Nm6sx7sfbtXUqwYZFbJpq6OR32YuKMUtFMQUUUm4CgBGJApoY/5FQ3d5Db28kssgjjQZZ2OAB61414s/aOstOuJbbQNPfWJUJUzzP5UOfbjLfhXnY3H4fAR58RPlR2YbBYjGz5KEL/AJHtm/2NNLn6fWvmKf8AaI8aO2YrTSoR/d8p2x7Z3VoaT+01q9tOn9saDDPB/E9jIyuPfY3B/OvBhxRlkpKPtH9x7M+HcxpxcvZrTzR9HBjjtT1rmPBfj3SPHWlm90q6EyZw8ZBWSI46Mp6GunU5FfVUqkKsFOm7p9T56pCVKThNWaFpCMilorUzI2iDcHOPT1rwf9pv4cpqWkDxRYRH+0NPTFyFHM1v/Fn1K9fpXvlUdQs49Qgmtp4hLDIhR1boVPBFefj8HDG4edGXVfid+AxksDiYV4dH+B8CwyLNErr0NI45FWtc0KXwn4r1nQ5SW+xXTojH+JONn/jpX/vk1WfqK/nutReHqSoveOh/RdCssRSjWjtJXK2eT9aO1SyD5WqLtWB6EdyNvvGo5vuj61I33jUc33R9aDYpXn+o/wC2ifzr7G8NfNpqE9uK+Obz/Uf9tE/nX2P4Z/5Ba/Wv1Xg7+HW+R+Pcdfx6HozWxz7elFLRX6MfmAVj+JP+Qe59P8RWxWR4k/5B0n4fzFJ7MuHxI+P9LGIGH/TST/0I1exVHTP9S3/XST/0I1fr+bK/8afq/wAz+pcP/Ap/4V+RPoJ2+J9Hf+7fQHH0kWtb4gKYfiP4pXqDqdxz/wADJrA0+V4td07YCzfa4goXrneuP1Irpvipby2XxT8Twy8E3rSYIxwwDAj65Nd6i3l03bTmR4NSS/tOMW9eR/8ApVzGQYU1ZXpVYdPwqyvSvEPWHx9TVhBlB296rx9TVgZ8sY4OKDKfU4nxJ8ONd+Imr2UWgaBB4ivdPSS5azmnWIlcBfl3EAnOOPrXD+LH1bw3J5XiTw7rPh6aP5St5aOI8+zAbSPTBxX15+y3AJfHOuSPz/xLwuD7y/8A1q+mZrKC7hMM8Mc0RP8Aq5EDL+R4r9z4X/5FlP5n4bxI75lNdkvyPx5u9Qtbg7orhJF9Qefyrm9TYOzbTnPpX64+I/2ffhv4pLtqXgjQ7iV8bpRZJG5x/tJg/rXEXv7E3wfvHLDws9vk8i2vp1H5bzX1p8sfk/eozt05Hasa7sZ5+Ficn0Ck1+uMf7DHwhjOToF5L3w+pT//ABVZ/wARP2Z/hX4D+H2s6hp/g3T47xIPLhuLkyTsjsQob5mPIznNYV6qo0pVJK6Sua0qbqzjTju3Y/JOHwZq2qS7YLRySe+M/kMmvRPCX7LOva3NDLfxm3gY5/fAxqw9QOWP5CvsfQfClnYIptraC2XAP7qNV/lXRQWECDIjGfcV+VYzjKrJWw1NR8+qP0PCcL0ovnryb9DyH4e/s9eH/BiJm1S9nXGZJUG0MO4X/Hn0xXrK6YiptAwCMeuPpmroQKMAACpjwK+DxeYYnGSdSvUcmfXUsJh8OuWlGx6T+z54wmt5rrwtdy71jXzrHeeVTPzID6DIIH1r3eI5QGvkjwlfnSviF4eugxUC7WJsHHyvlTn25FfW8QwgFfs/C2NqYvA2qO7i7H5dxBhYYbFqVNWUlf5j6KKK+xPmgqNjz+FSVE+PWgDwL9ofxlcNfQeFrN2SJkFxe+WcEqThIyfQnk15PbWaQoFwABzjHetXxjfDWfiD4hvG5zfPGhHORHhB+HBqrjjPev55z7GTxuNm5S91OyXofteT4WnhcJBW96138yBhgnHA9MVUmhE4IfkH2q7IdpOeKr4zXzr97c+iT6jvDPiq4+HXie31i3kYQswS7T+GWInBBA6kdQe2PevtCxvI761guIWDxSorqwPVSMg18QalD5tu4PIx0r6h+BOpvq3wz0SUsxkhja1fJz9xiB/Sv1XgzHTm54So72V1+p+bcWYSMOTEwW7sz0cdKWmRngc0+v1M/OwqJuCalpj9DQI+QP2k9OGnfFhLkIFF/YxykDgblLIT+WPyrzoruPpXr/7WMYXxd4YlC4ZrOZC2PR1/xP515HjFfg3EFNU8zrJdWfvnDlR1Mrot9rfiQP8Adaoe1TSfdaoRXzp9dDdDGXknNQy/dFWW6VWl+6KDcp3n+o/7aJ/Ovsbwz/yDE/Ovjm8/1H/bRP519jeG/wDkHJjp7elfqvB38Ot8j8e46/j0PRmxRRRX6MfmAVkeJP8AkHv7c/rj+ta9ZHiT/kHt9f8AP8qT2ZcPiR8f6ZxC3/XWT/0I1ezVHSv9S3/XWT/0I1dJ5FfzZX/jT9X+Z/UVFtUaf+FfkdV8GtC/4SP4veH7d1D29u5vZB2/dKSuf+BFfyrqv2n9IGm/Emy1BUwNQs1DkdC8bFf5EUfspwif4malM3Ji0x8H/ekjH9K7L9rjS86J4b1JfvxXjwsfZkz/ADWvucNg1Ph6cuvNf7j83xONa4lhB7W5fvPB85qwvSqqnKirS9K/O5aOx+hj4+pqwv3BVePqasL9wUjKR6p+y1/yOmu/9eEf/ow19NJ/U18y/stf8jprv/XhH/6MNfTSf1NfunC//Isp/M/C+I/+RlU+X5D6KKK+sPmBMV5n+0SSPhbqA9ZoAfp5q16bXmX7RP8AyS7UP+u9v/6NWvOzH/c6v+F/kd2B/wB6p/4l+Z88Wi+XCAOh6e1Xh3qlAf3aVcB61/M62R+8dPmHrUh6VH61Jnj8qHsZL4ivbEr4h0lx1F9b/wDo1a+yE4FfHEJ/4n2l/wDX9B/6MWvsha/YeCv4Fb1X5H5txS71aT8n+Y6iiiv0g+HCoJfvD6f1qeoJT8w/D+YqZbDR8XyMZdd1Vz1N3OT/AN/Gqz2qqp/4nGq/9fU3/o1qtHpX8yYv+PNeb/M/e8P/AAoei/Ihn+bj0qAVYk6mqhOHx2xXIegtiC8/1R/Kvoj9mon/AIVlCpOcXlyP/H6+eLz/AFVfRP7Nf/JNYv8Ar8uf/Q6+84N/5GD/AMLPjOK3bBx/xI9Xi71JTE6mn1+2H5Kgpj9DT6Y/Q0DPmH9rL/kZPC//AF7T/wDoa146etexftZf8jJ4X/69p/8A0Na8cJ5/KvwviT/kZ1f66H7vwx/yK6Xz/Mgk+61QippPutUNfMH2UN0DdKrS/dFWGPFV5fuig3Kd5/qP+2ifzr7G8M/8gxPyr45vP9R/20T+dfY3hg/8StfrX6rwd/DrfI/HuOv49D0Zrbvmx+tFKfut9aK/Rj8wFrH8Tf8AIMl/CtisfxKM6c49cD+dJ7MuHxI+QNPO2J/+usn/AKEat7s8+lU7E5gY/wDTWT/0I1bVcgiv5tr/AMWfq/zP6iopujT/AMK/I9Y/ZPuRD8S9UiJ/1umtj8JYyf0r1X9qez834WNKBloL+3cE+7Ff/Zq8C+Busr4f+MOgs7Yiumksz/wNMDP/AAICvov9pYb/AIO6yWGCs1tj/v8AoP61+mZRJVsiqQ6xUvx2PyLO4rD8Q0pvaTi/0Z8n2pV4QV+7k4z9avL0rOsTutVPT6Vor0r8ql2P1lofH1NWF+4Krx9TVhfuCszGR6p+y1/yOmu/9eEf/ow19NJ/U18yfst/8jnr3/XhH/6MNfTajFfunC//ACLKfzPwviTTM6i9PyH0UUV9YfMBXmH7Rf8AyTC8/wCvi3/9GCvT68w/aL/5Jhef9fFv/wCjBXnZl/udX/CzuwP+9U/VfmfPFiP3Cf7tWYh834VUsXPkDpwBVpSVOfwr+Z1sj94Jx1pQOaYhLcmlY7eRQ9iFF8xCB/xUOkf9fsH/AKNWvsxa+MImLeIdJH/T7B/6MWvs9elfsPBX+71vVfkfmfFH8WkvJ/mOooor9IPiAqGbt9R/Opqhm7fUfzqZAfFq8a1qn/X3P/6MarDNtquDu1rVPa6n/wDRjVNJ9K/mXGf7xU9X+Z/QGHTdGHovyGuc5quOlSM5BIwKiPFcZ2pEF5/qq+if2a/+Saxf9flz/wCh186XmTE3sM19F/s1f8k1i/6/Ln/0OvvODf8AkYP/AAs+L4sVsHD/ABI9YTqafTE6mn1+2H5Kgpj9DT6Y/Q0DPl/9rRtviPwuf+naf/0Na8achiDXsn7W/wDyMPhf/r2m/wDQ1rxrtX4XxJ/yM6vy/I/duGP+RVS+f5jZPutUPY1NIflaoe1fMH2cN0RsPmNRzfdH1qRvvGo5vuj60G5SvP8AUf8AbRP519jeGf8AkGJ9MV8c3n+o/wC2ifzr7G8Mn/iWJ+dfqvB38Ot8j8e46/j0PRmxRRRX6MfmAVj+JP8AkHP+GPzFbFZHiT/jwb6/1FJ7MuHxI+PbBx5BAP8Ay0f/ANCNXU6ms/T/APVf9tX/APQjWgnU1/Nlf+NP1f5n9TYf+DT/AMK/Iglmn0+8tdRtztntJlnjxwdykEf59a+tPjdrNv4k/Z/1LVLZg8N3bW9wmDnG6RD+lfKMyeZGVzt75xmvUtD8VNqf7N/inw/KcT6XJEsanqIXlRl+uDkV9VkWL9lSxFCT+KN19x8NxLgHUrUMVFfDKKfo2ea2P/HuKvq4JxkVQsyUhAI5zVqP74r42a2fkfZS+Jr+tiyjAU/ORwfyNRelSKcKKzMXuer/ALKxz4z1/v8A6BH/AOjDX1AvSvl79lUY8ZeIPewj/wDRhr6hXpX7nwx/yLKfzPwvib/ka1fl+QtFFFfWny4V5h+0Xx8ML3/r4t//AEYK9PrzD9ov/kl97/18Qf8AowV52Y/7nV/wv8jvwH+9Uv8AEvzPnKxkHk9RyBVwOD0NZ1j/AKtPoKuqcV/M62R+98q/EmB96MnPemq2R6c0pbFD2I2Y2H/kYtJ/6/YP/Ri19nr0r4rhmx4k0j5et9B/6NWvtROn41+w8Ff7vW9V+R+YcVK1el/h/UdRRRX6QfDhUM3b6j+dTVDN2+o/nUyA+KH413U+T/x9z/8AoxqsMwXqarStjW9UP/T3P/6MapHfd2xX8y4z/eKnq/zP6Ew38GHovyEdsscVHIcinZ60wtuHTFcZ2pdSref6p/pX0b+zS3/FtIv+vy5/9Dr5yvP9U/0r6N/Zp/5JpB/1+3P/AKHX3nBv/Iwf+FnxHF2mCi/7yPWk70+mrTq/a0fkgUx+hp9MfoaYz5e/a3/5GHwv/wBe03/oa14zmvZv2t/+Rh8L/wDXtN/6GteM+lfhfEn/ACM6vy/I/duF9cspL1/MhPU896TtSk8n60xmwOlfMH2kdxrfeNRzfdH1p5PU1Cz7wOMUGxVvP9R/20T+dfY3hkf8SxfrXxzef6j/ALaJ/Ovsbwyf+JYn51+q8Hfw63yPx7jr+PQ9GbFFFFfox+YBWP4k/wCQe31rYrH8Sf8AIPf3x/MUnsy4fEj4607/AFR/67Sf+hGr/SqOn/6r/tq//oRq9X82V/4s/V/mf1Lh/wCBT/wr8hw5HrVi2uprKC9ijkwl5D5E3OcrvDg/gwBFVw2BzTqzjKUXeLsFSCmrTV0TIDtAIwceuasx8MKqx/cP1qZXzxzWUtTORbBBpckd+KgjcKelS53Ln2qTJnrn7K2D4z1//sHx/wDo019Pp0r5c/ZT/wCR21//ALB0f/o019Rp0r914Z/5FlP5/mfg/Ev/ACNKny/IdRRRX1R8wFeW/tIkr8KtQIOCJ7fB/wC2q16lXlv7SQJ+FOoj/pvb/wDo1a83MnbB1f8AC/yO/Af73S/xL8z5wtRiFcdasI5zye1VLOQbQOeKnr+aFsj9/sWQ+Oh/WlLHjmqvWpd4IxQ9iWhIMN4l0buPt0H/AKNSvtdOn418SWJx4j0Qet9AP/IiV9tp0/Gv2Hgr/d63qvyPyzixWr0v8P6jqKKK/SD4YKhm7fUfzqaoZeo+o/nUy2A+ImYnWdVyf+Xy4/8ARjVNniqocf2zqvX/AI/Jx/5FY1OTuAr+ZcZ/vFT1f5n9D4T+BD0X5AScnmiimu20ZrjOwrXjARP9K+i/2ZG3fDKAk5/065/9Dr5uvjujc+3pX0f+zCP+LYRf9f1x/wChCvveDlbMHf8AlZ8Nxd/uMf8AEv1PYFp1MQ5FPr9qR+ShTH6Gn0x+hpgfLv7XBx4h8L/9e03/AKGteLOx3DB7V7R+13/yH/C3/XvP/wChrXiZ61+F8Sf8jOr8vyP3vhX/AJFVL5/mLimP2pxOBk0xjmvmD7Sw1ulQDpUrPyRzUQ6UDK95/qP+2ifzr7G8M/8AIMX16fhXxzef6j/ton86+xvDfzach9Biv1Xg7+HW+R+Pcdfx6HozXzziikIPP86K/Rj8wHVjeJjjTpD6f4//AFq2ax/En/IPf2/xFJ7MuHxI+OrL5YWx2lk/9CNW42JJziqdl/x7n/ro/wD6EatI20nNfzZX/jT9X+Z/UuH/AIFP/CvyJjUtQhtwyKkDA/8A6qwN3qPDlRxU0Z5FQ0R/fFBhKBcBqVT8g+lVVIFSdVqbGDXQ9g/ZS/5HbxH7afEP/Ihr6jTpXyx+yb/yO/iT/sHxf+jDX1OnSv3Phn/kWU/n+Z+C8S/8jSp8vyHUUUV9UfMBXl37SHPwsvx/03t//Ri16jXlX7S3/JJ9R/672/8A6NWvNzNXwVVf3Wehl+uLpf4l+Z82WDZjBPUjNWAx9vyqhYn90R6mry1/NN9Ej+gkrL5j0PH407PIqLFIcKQaT2FbW4tsSnibRMdr6Dr/ANdUr7fXpXw5ZsG8TaNj/n+t/wD0atfca9K/YeCv93rf4l+R+V8Xfx6P+H9R1FFFfpB8EFRS9v8APepahl6/59amWwWufDQP/E51T/r9uP8A0Y1Wh0qlI4GvaoM9Lyft/wBNGqWWQEDn9K/mXGf7xU9X+Z/RGFVqEPRfkTk8VXkkJHb8qYGB9abiuWO53KNyK6OYj+XSvpP9mL/kmEf/AF+3H/oQr5pux+6f6V9Lfsw/8kvj/wCv24/9CFffcIf8jB/4WfD8XK2Bj/iX6nrsfSpKjj6VJX7Oj8iYUx+hp9MfoaYj5Z/a7J/4STwqO32af/0Na8XP3vwr2j9rv/kZvCv/AF7T/wDoa14ufvfhX4VxJ/yM6vy/I/fOE/8AkWUvn+Y1z8pph6UY61FN1FfMn2gj/fNNoooAr3n+o/7aJ/Ovsfwz/wAgtfrXxxef6j/ton86+xvDB/4li/XNfqvB38Ot8j8e46/j0PRmxRRRX6MfmAVkeJP+QbJ+H8xWvWP4l/5B7f5/z2pPZlw+JHx1Z/6hv+usn/oRqeq9l/qG/wCusn/oRqxX82V/40/V/mf1Lh/4FP8Awr8hyuVAGKmBxVepg4PcVgdBMhyKVTgg0xGAHNOFBEyZG3ZzTw2Biq4bB4OKkDAqATn2NBi0ju/gv8Q9O+F/iLVr/U4Lu5iu7dLdFtEDEENuJ5I45/lXsQ/az8KDppmtf+A6f/F18zKRnnpTgoPvX02E4gxmAorD0XFpeR8fjuGsJjsQ8RV5k35o+mF/ay8KscDTNZ/8B0/+LqT/AIas8Lf9AzWP/AdP/i6+aQkZ7CneSv8AdFdn+tmZf3Th/wBT8v7y/A+k/wDhqzwv/wBAzWP+/Cf/ABdcf8VfjlonxE8GXWjWNnqFvcSPG4e4jUL8rBuzH0ryBIo+PlGaliVUbOAD2rCvxRmFanKnPls9NApcL4GjUVSnzXTur7EtuTEq/wBat+cO3P41T3L6inqMdK+IaV7o+vUdLMsecfQfnT3PyGqm4+pqTz+MYzSfmRa7sLbyLb6tp92wYpBdRTOqjnargnH5V9AH9qbwypI/s7VmweohTn/x+vn0uHGOlN2Rk5IUmvosuzvFZTFwoJWlrqeFmGS4bM5qdW946aH0J/w1P4Z/6Bmrf9+U/wDi6P8Ahqfwz/0DNW/78p/8XXz00acYVab5af3RXsf645j2ieV/qngf733n0P8A8NT+Gf8AoGat/wB+U/8Ai6Y37UnhmR1X+z9UUnu0KYH1+evnvy1/uik8tRn5R0x+FH+uGYvRqP3DXCeBv9pfMJHWXUr25QMEnuJZFDDBwzEjP508nIFNJ7n680u8Y6j86+JqSlUm5yd79j7CnTUIKC6aBnFR+afQfnTWf5j83H1pjNxwfyqkkb2EuX3RkfhXqnwi+OOh/Djweuk6jaahPcJcyyk2sQdcMRjkkV5Q3I55qJwhXgDI6Edq9TAZjVyyr7eja+2p52Oy2jmlP2Fa9r30PpFf2tPCSjnT9Z/8Bk/+LpD+1z4SB/5BmtH/ALd0/wDi6+amC96haNMk7RX0v+tmZf3T59cH5e+svwPpr/hrnwl/0DNZ/wDAdP8A4uo3/a88IhsHT9YH/bun/wAXXzLIiEDAFR+Un90Vr/rZj1vymn+puXvROX3o7z43/EzS/ilq2i3elwXcCWUMscguowvLMCOhPpXCFzx9KRlG0DAAHbFJXyuLxdTHVnXq25n2PsMBgaOX0Vh6Kdo9xHJVSahZi2KfI4KkZFR1xHpBRRRQBXvP9R/20T+dfY3hv5dOQfhXxzef6j/ton86+xvDPOmp9P1r9V4O/h1vkfj3HX8eh6M2KKTcM470V+jH5gLWP4k/5B0vYYH8xWxWT4hj8ywkDcKF3Z+hHFJ6qwdUz43sfmhk4xiR/wD0I1Yqra74bnULZ/vw3MkbfUMatV/OGKg4V5p93+Z/UmDalh6bXZfkFKp2nNJRXIdhMrb1PapFbkDFRRH5T9afQBL2ozTEOevNP60Gbi27kqvuyMGpFbA6VXBI6U+Mkik1cxaui0rYOamR93aqgY561IrEDg1PKzJqxZ6EUu/pxUCyMSuTUvUVJLRKpyAak8z2quCQODxS7j60EWZP5g9DSh8kDB5qsWb1qQHvSewizijFQea3rR5retZ8jET4pDUPmt60GRj3o5GMcJfY0vmexqBjgcU0M3rWobkzyDaeD0qIvx0pCSeppKB2Yuc5oppOBUPmNjrQWiRpMHGD61CxwM0rMTyTUW4kdarlZSVwLZ/Co3k6jHtSOxBHNMPJq0bJWE4xS9BRUZY54PFBtGNmBbcOlRvJtOMGh2IXjioySTk0FidaKKKACiiigCvef6lR6yoP/Hh/jX2N4Y50tfrXxzcq009jAhw01zGn/j4P8hX2VoEJg0+Nc5ya/VuDov6vVl3a/A/HOOpJ4ijFdE/xNIjgnv60UpHBor9FPzIWqWpxebZzL2KkVdqKQAqw6jFK/L73YTV9O58beMrL+xfiNrVqcKs5Fyg7ndjP6g1WBrtP2jtFl0zWNO8QxK3lo3kTemwn5T+dcRDKJYY5F6MM1+H8Q4T6vj59par5n9B8NY763llNveOj+RIDmigUV8s9D61bARxUqSDgf0qKlzgg0hk/WnK2ABVfzD6CpEbKg0ATc0DrTNx9qcrZwaDKUUkTeYP8ilVtw4qLNKH29KDJpMtK4AA5oDgnpVdZCSBgc1IDilZEuKSLSSBUAIPFL5o9/wAqrGQ46ClVyT2qGrGZaVt/SlxUKuV6Uvmn0FImxLijFReafQUeafQUByolxRiovNPoKPNPoKA5USMwUZP8qb5o9/ypjOW600mgLEvnD3/KmSMGxgfnUJc+1HmHHSqSuUO3gcYprtuFNJ6movNPoKqxoooczgHn+VRUrNnmgdKZrCKE5oJIpGYgimljQa8qBmDYqNpADj+lDsVxj9ajJyc0FCAcUUUUAFFFFAATigHJA9aDUcknlIZD91ev8qdm9FuFy34RsV1v4iaLablKwM1y65/ujA/nX2FpkQisogv4181/s46I+oarqOutGSsrC2gbHVRncR9T/KvptUChccAdq/cuHsL9VwKUt5an8+8TY2OMzKahtBWJqKKK+oPkQppyeMcHvTqKAOD+J/hKLxLoFzazIXikRlIA56cH+tfJOjTXOkX1xot+pW7spDE24feHZvx6192XMIniKEZ9K+Yfj/8ADW6iuf8AhI9Midr21B8yKPrOmc4HqwH5818rxBlqx2Hc4r34n2XDWbvLcSoTfuS3ON7nFFZeg61BrFqrxOpOM8HrWmDX4lKMoyanufvcZwnFThsxaKKKzLCgcYoooAmVweAad0qBTtOad5p9P1oAsBx60oYN0NRA04NigCTFL+JqMPyKfxQY8rJEcBQCeaXzB/eqLijFAuVkvmD+9Txk96r4p4kI7UBysl59TRz6movNPp+tL5p9P1oESc+poOR3qPzT6frSGU+n60AO8wf3qPMH96ogKMUFcrJd6/3qa7biMGmUcUC5WL+NJikJxTd/tQUou44uOmaazArgU3OTTXbauetBqOpjuORnnpTfNPp+tM6kn1oAKKKKACiiigAoopCcUwDrwKxda+06reW2jWC+ZeXjiFQp5UHq34dan8Qa1Bo+ntJI2GAzwcf5P0r0f9n74a3Mkw8R6rAy3dxzEhH+pjOMfQtjP4V9NkeVzzDERuvdWp8rn+bwyzDS5X770R7P8L/CUHhbw9ZWcC7I4EVF9TjqfxOT+Nd2BVe3thAqKuQqjAFWB0r9yikklFWR/PcpSlJynuxaKKKokKKKKAGsNwx61la5o0d/aOpUFiOua16Y67uO1HoB8ZfFj4Vah4O1OXXNDjLW7kyXdmvGOeXQD9R9awdB8SWuuW6GNhvPvz9K+09c0GDVLV0dR0xyuea+Yvip+zzPbX8+raA4sr05dozxFIfXA+6f0r4HO+Hlir4jDr3uqP0Ph/iWWC/2bEu8ejMHIwD29aM1w1v4tvNCvRY63bS2U69peVf3U9xXVWmr2t6m6KUN7d6/L6+Eq4eTjOL0P2ChjKGJgp0pJpl/OaKahDDIp3bqK4jtCigciigBdzepp8b9cn86joxQBPuGRzTtx9TVYcEH0qQSj0NAEpY+pp4YVX80eho8wehoAs7hRuFQIwYdKdigCTd/nNG7/OajooI5CTd/nNG7/OajooFyEu4UbhUWKYzhTjFBoTM3BwabuPqai8weho80ehoAlLH1pu4eo/OmGTI6GowOKAHsx3cE9KaSSME5pKKACiiigAoopQCegoATOKM0MAP4hn34qndalb2alpJAAOuDmqjFydkiZSUdZMuDBI+tY2veJbbRbdnkZcr0XPJPpWDc+L7nXr7+ztDtpb65zgrEuQo9WPYV6n8LP2fJ7q/g1LxCwvL4MGEW0+XF74PU/Wvqct4fxONmnJWj5nyebcRYbL4NQlzSMn4TfCfUvGesxa7r0Ti3QiS0snHXP8Tjpj0FfXOg6NFpNkkaxqpxzgVHofh2HRrZURVJHfFbQFfsWDwdPL6fsaPzfc/DMbjauY1XXru99l2DknntS0UV3HB6jT1757DtRS0UALRRRQAUUUUAMeMOCD0NQXdlFdLh1XOOpFWqTFHmB5Z43+Del+LLOSO4sopwTxlM4PqD2NfPviv9m3UtGuJH0K9ltyD8sM4Lr+BHI/GvtUiqkunwzvl4xXHXwVDEq1WJ34bHYjCNOjUt5dD4Au9M8d+GyUuNKe5RQP3lu4cH8M5qo3jrUrIlbzSbq3295YWX9SK+877wZZ3jqfLjxuyeKxrv4XWMyt+7Q5zXy1fhfBTfNBs+wo8X42KtOz/A+Iv+FrRfdMJU+tKPirD/AM88/hX2X/wqDT+0QH0ANKPg7ZH+D9K5f9UqH/Pz/wAlOpcaV760v/Jj4z/4WpB/zz/Sj/hakH/PP9K+yz8IbADlR+QpP+FR6f6D8hR/qlQ/5+f+Sl/66Vv+ff8A5MfGv/C1IP8Ann+lH/C1IP8Ann+lfZf/AAqGwAztGPoKT/hUen/3R+Qo/wBUqH/Pz/yUP9c63/Pv/wAmPjX/AIWpB/zz/Sj/AIWpB/zz/SvsofCKwI+7+lOHwfsT/Cv6Uf6pUP8An5/5KH+udb/n3+J8ar8V4VHEf6Uv/C2Yv7n/AI7X2QfhDZLwFX9KQfCPTycbR+Qo/wBUqH/Pz/yUP9c63/Pr/wAmPjj/AIWzF/c/8do/4WzF/c/8dr7JHwfsT/Cv6Uh+EGnjjylJ9eKP9UqH/Pz/AMlD/XOt/wA+v/Jj43/4WzF/c/8AHaP+Fsxf3P8Ax2vshfg/Yn+D9KD8ILEdVA/AUf6pUP8An5/5KH+ulb/n1/5MfG//AAtmL+5/47TW+K0LHJj/AEr7J/4VHp/oPyFA+EVgegH5Cj/VKh/z8/8AJQ/10rf8+/8AyY+Nf+FqQf8APP8ASj/hakH/ADz/AEr7K/4VHp/oPyFA+Eennoo/IUf6pUP+fn/kof66Vv8An3/5MfGv/C1IP+ef6Uf8LUg/55/pX2WPhBYH+EfkKU/B+yXkKv6Uf6pUP+fn/kof651v+ff4nxn/AMLUg/55/pR/wtSD/nn+lfZR+Edh/Eoz9BTh8ILA/wAK/pR/qlQ/5+f+Sh/rnW/59/8Akx8Z/wDC1IP+ef6Uf8LUh/55/pX2Wfg/YDrGrflSf8KfsSeI8fhR/qlQ/wCfn/kov9c63/Pv/wAmPjdPinCSQI8ntwacnjrUL5iLLSry4b0SBsfyr7I/4U9YLnMYP1ArStfhfp8Xl4RcKwNVHhLDX96d/lYxlxpibe7Tt87nxdb6T458Tf6jSJbWNv4rlwmPqOTXb+Ff2ab/AFuWN9dv5J+7W8JKx/nyT/KvrCx8FWVkBtjTIYnpW1FYxQFSka5A7cV7eGyLBYb4Y3fmjwsVxJmGK91uyPMvBHwe0zw1bpDbWkUMa4JVBjJ9z1P416XZWMVnGFjTaR6VaA9sUuK+gUVGPKlofMyblLnk7sQLilAxS0VWxIUUUUAFFFFABSHpRRQAzefN244p46UUUALRRRQAUUUUAFIRmiigBEXYcg0pZ8/eIoooAYIxTZPkxhQeaKKAHCMUuwelFFABsPZiB6CgR4oooADHk0eWKKKAAJjNGz5s++aKKAHlm7HFMKFjkkk0UUAIyhVJwKbGN6g9PpRRQBJ5Y9KQx+hx9KKKAE8v1JJpzJkUUUAIIx9aBHg55oooACmcU4EquAe1FFACMGbqxNAG0UUUANRyzMCOlPxRRQAtFFFABRRRQAUUUUANz8wFFFFAH//Z
[[Pearltrees|https://www.pearltrees.com/]] est un service web de curation qui permet d'organiser, d'explorer et de partager des contenus numériques.
La version générique de Pearltrees est pensée pour participer à la démocratisation de l'organisation des informations en permettant à chacun d'organiser ses contenus et en connectant les intérêts organisés par tous les membres en fonction de leurs éléments communs (pages web, images, fichiers, notes). Cela crée ainsi un ensemble organisé appelé « Interest Graph » (ou réseau d'intérêts).
Le collège souscrit à la version Education.
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
[[Pix|https://pix.fr/]] est le service public en ligne pour évaluer, développer et certifier ses compétences numériques.
Les 5 domaines abordés sont:
* Information et données:
**Moteur de recherche, veille d'information, fake news, organisation des fichiers, utilisation du tableur...
* Communication et collaboration:
** Email, agenda, réseaux sociaux, outils collaboratifs, e-citoyenneté...
* Création de contenu:
** Traitement de texte, image, son et vidéo, mise en page, droit d'auteur, programmation...
* Protection et sécurité:
** Données personnelles, accessibilité, ergonomie du poste de travail, cybersécurité, impacts environnementaux du numérique, cyberharcélement...
* Environnement numérique:
** Résolution de problèmes techniques, système d'exploitation, composants, histoire de l’informatique…
Au travers de ces domaines, 16 compétences sont évaluées sur 6 niveaux de qualification (compétences numériques du [[Cadre de référence européen DigComp|https://ec.europa.eu/jrc/en/digcomp/digital-competence-framework]])
Les connexions des élèves se font par le biais de leurs comptes EduConnect, les connexions des enseignants se font via la création d'un compte à titre personnel.
L'équipe pédagogique [[accompagne les élèves|https://dane.ac-bordeaux.fr/accompagner-les-eleves-avec-pix-orga/]] dans leur parcours au travers de l'espace [[PIX Orga|https://ent2d.ac-bordeaux.fr/mediacad/download.php?t=DtahqqPM07KIlsvCceb1EFMowzPscz&e=mp4]].
Les élèves de 3eme sont tenus de passer une certification (épreuve de 2 heures).
Toutes les infos en détails: [[La doc de la Dane|https://dane.ac-bordeaux.fr/pix-crcn/]]
[[''Pronote''|http://0333093h.index-education.net/pronote]], c'est la solution logicielle adoptée par l'établissement pour gérer toute la vie scolaire : cahier de textes, compétences, notes, absences, sanctions, QCM, infirmerie, stages, messagerie interne, casier numérique, application mobile, etc…
Pour le découvrir:
* [[des docs pour les élèves|http://dupatynum.go.yj.fr/dokuwiki/doku.php?id=pronote_pour_les_eleves]]
* [[des docs pour les parents|http://dupatynum.go.yj.fr/dokuwiki/doku.php?id=pronote_pour_les_parents]]
* [[des docs pour les profs|http://dupatynum.go.yj.fr/dokuwiki/doku.php?id=pronote_pour_les_profs]]
Les documentations, c'est bien, mais les personnes capables d'aiguiller/expliquer/aider, c'est mieux. Sont donc à votre service:
* des [[Référents numériques|Référents numériques]]
* une personne [[Ressource TICE|Ressource TICE]]
* et d'[[Autres référents|Autres référents]]
Il peut être utile de savoir à qui s’adresser en cas de souci d'identification concernant:
|! |!Référents numériques |!Ressource TICE |!Principal Adjoint |!Auto Dépannage |
|Scribe | !X | !X | (x) | |
|EduConnect | | !X | (x) | !X |
|Pearltrees | !X | (x) | | |
Remarques:
* X indique le contact préférentiel, (x) indique l'éventualité de recours mais sans abuser merci :o)
* EduConnect permet la connexion à l'[[E.N.T.|E.N.T.]], donc directement ensuite à [[pronote|pronote]], à [[Moodle|Moodle]] et à [[PIX|PIX]] et [[E-Sidoc|E-Sidoc]] ''sans autre forme d'identification !''
/9j/4QBsRXhpZgAASUkqAAgAAAADADEBAgAHAAAAMgAAABICAwACAAAAAgACAGmHBAABAAAAOgAAAAAAAABQaWNhc2EAAAMAAJAHAAQAAAAwMjIwAqAEAAEAAAAAAgAAA6AEAAEAAAAmAQAAAAAAAP/bAEMAAwICAwICAwMDAwQDAwQFCAUFBAQFCgcHBggMCgwMCwoLCw0OEhANDhEOCwsQFhARExQVFRUMDxcYFhQYEhQVFP/bAEMBAwQEBQQFCQUFCRQNCw0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFP/AABEIASYCAAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AP1TooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKSms4VclsUAPoqg2potR/2oKANOkrPXUlqSPUEJ5NAF2io0kWRdwapKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigCGRhErMzYUd65LUvEXnzPt/1S/KKt+OtU+wadHEG2vO2K84k1bjAagDrW1bJ+9xTP7X964/8AtT/ao/tUf3xQB2S6tUq6sc964pdUG2pF1Rv71AHeWviAW0m77691rqrO9ivIVkibcp/zivGV1f5q67wLrytdGzZtyvyv1oA9BooooAKKKKACiiigAoopjcUAG7moZLyONtu7msPWvEi28zQRnlfvH0rFXWAP4uaAOyGop3pwvomrixqwb+KpF1b3oA7SO4Rv4qkri11sr0atbSdeWSVYpWHzdGzQB0NFM3AdTRu96AH0UUmaAFooooAKKKKACiionmSNfmNADqKpvqse7AoTUo2oAv0VUW+i/vVNHIJPutuxQBLRRRQAUUUUAFFFFABRRSZoAWiiigAopu6nUAFFFFABRRRQAUUUUAFMxT6KACmYp9FABRRRQAUUUUAMxT6KKAPJ/jHfNBe2Eef+WTPivOJNVwzfMOfeu/8Aj/byQ22m3qL8qs0TN/vdK8Sl1RfWgDqm1YbvvCm/2svt+dcj/a6/3qb/AGsP71AHaLqnH3qP7S/2zXHf2uv96l/tUf36A3djsv7T/wBqtjwrrrQ+IbDnH79I/wDvputearq3vmug8ByHVvF+j26bm3XKt+C/M35UAfWNMxRuHrT6ACiiigAooooAZisrxNqh0fSLi5z8wwq1sV5z8Z9R+yeH7VM7fMnXPsNrUAclNrfmSMzSFi33qb/a/wDtVxJ1b5T83NL/AGuv9+gDt11b/aH51Muq/wC1XELqf+0Pw5p/9sKP4s0w6XO1TVP9qpY9Y2v97bj9K4P+3FX+OobzxfZ6ZAbi5uEiiHUsaUvd1ZdOEqslCK1Z9HeHNZTVtLjlDbnHyyD+6a01mU//AKjXxR4q/bd0n4T6S1pYafJq2pXDl4ogdiBfU5+b9K5Twp/wUzne/CeI/CQismba0unXJkdf+AsF/nXnyx9CEuWTPrqXCOcVqXtoUfdP0FDkjP8AKgcg9a4T4YfF3w58W/D8OreHr5LyE8OoOHjb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AKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApM0m8fhVW71CO0AB5bGcDtQBbzSbx61gPrB7NUf9qn+9QB0YcHvS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AFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQB/9k=
Les ''référents numériques'' à ce jour au collège sont deux pour vous servir. C'est ainsi auprès de ''Solenne ''(dénichable la plupart du temps aux alentours du CDI) et d'''Yves ''(souvent à proximité des salles de technologie) que vous pourrez trouver conseils et recommandations en ce qui concerne les sujets tels que:
* [[PIX|PIX]]
* [[E-Sidoc|E-Sidoc]]
* [[l'E.N.T.|E.N.T.]]
* [[Pearltrees|Pearltrees]]
* [[Moodle|Moodle]]
* [[les ressources numériques|les ressources numériques]]
* [[les projets en cours|les projets en cours]]
* [[les évolutions en cours ou à venir|les évolutions en cours ou à venir]]
et j'en passe…
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
Votre humble serviteur (Erichk) est à ce jour votre ressource TICE (acronyme de "Technologie de l'Information et de la Communication pour l'Enseignement"). Donc c'est comme d'hab: quelqu'un a besoin de quelque chose, lui en cause, et il essaiera de l'aiguiller/conseiller/dépanner/équiper.
Noté ici en vrac pour ne pas oublier mais à réorganiser par matières et par thèmes...
! Divers
!! Création de journal/magazine
Si vous n'avez pas envie d'installer un logiciel de PAO (tel que Scribus ou [[FaisTonJournal|https://www.jetelecharge.com/Education/3509.php]]) sur votre ordi, il est possible de créer des publications en ligne via des sites tels que:
* [[Canva|https://www.canva.com/fr_fr/]]
* [[MadMagZ|https://madmagz.com/fr]]
* ...ou via une palanquée d'autres sites mais sans option d'utilisation gratuite
!! Création graphique
* [[Polotno|https://studio.polotno.dev/]] : Création simple et intuitive de fiches, pas besoin de compte, sauvegarde en fichier pdf ou en fichier image, un vrai plaisir à utiliser
* [[Excalidraw|https://excalidraw.com/]] : Pour les esquisses et croquis, simple et au rendu sympa
* [[Funky Image Tools|https://www.funkyimagetools.com/photo-to-cartoon]] : Conversion d'images en ligne (aquarelle, bd, peinture à l'huile, crayonnage)
!! PDF
* [[CleverPDF|https://www.cleverpdf.com/fr]] : Boîte à outils PDF, pour convertir, scinder, fusionner, numéroter, compresser, etc... Simple, gratuit, pas de compte à ouvrir.
!! Enregistrement d'écran (vidéo)
* Rien de plus simple que [[RecordScreen|https://recordscreen.io/]]. Tout se passe à partie de la page d’accueil du site où il suffit de cliquer sur le bouton Record ! À vous de choisir si vous souhaitez filmer uniquement l’écran ou si vous voulez insérer votre tête sous forme de petite vignette vidéo en bas de l’écran pour commenter la capture. Attention tout se passe au niveau de votre navigateur. Une fois terminée il vous faudra immédiatement télécharger la vidéo. Si vous fermez le navigateur, votre capture sera perdue.
!! QCM avec réponses sondée par webcam
* [[QCMCam|https://qcmcam.net/]] est comme Plickers mais sans avoir besoin de compte, vraiment bien.
!! Vidéos pédagogiques (création):
* [[Polymni|https://polymny.studio/]] : permet à l’enseignant de se concentrer sur le contenu plutôt que de passer son temps à apprivoiser l’outil.
! maths:
* [[quelques outils|https://api.ceras.ch/calculscolonnes/]] pour la mise en forme des opérations, et des liens vers [[les gabarits du cartable fantastique|https://www.cartablefantastique.fr/gabarits-kits-fiche-en-savoir/]] et [[les opérations en ligne|https://ash21.alwaysdata.net/tramope/]] de Tramopé
* site sympa et accrocheur pour les piots (auto-corrigé) : https://www.jepeuxpasjaimaths.fr/
* site sympa aussi : https://mathsmentales.net/
* site avec vidéos yt : https://www.maths-et-tiques.fr/index.php
* super calculatrice en ligne : http://cabricloud.com/cabriexpress/
* https://www.thatquiz.org/fr/ a l'air au poil, avec gestion des classes et résultats, à tester en créant un compte (gratuit) et une adresse de mail pour recevoir les résultats
* a tester car a l'air pas mal et ouvert : https://learningapps.org/
* et la quiziniere : https://www.quiziniere.com/
! Histoire-Géo!
Autant voir le tout, donc la [[chronologie de l'univers, de la terre, et de l'humanité|https://www.wikiwand.com/fr/Chronologie_logarithmique_d%C3%A9taill%C3%A9e]].
Quelques visites virtuelles de musées dans les [[visites virtuelles]]
Quelques applications en ligne pour faire de chouettes frises chronologiques:
* [[Timeline|https://timeline.knightlab.com/]] : le site (tout est gratuit, pas de compte à créer) et les explications sont en anglais mais le résultat vaut le détour. Frises à publier en ligne.
* [[FriseKronos|http://www.frisechronos.fr/]] : tout est en français, les frises à exploiter en image/pdf/fichierOffice
* [[Tiki-Toki|https://www.tiki-toki.com/]] : il faut créer un compte (gratuit) mais les résultats sont joulis. Frises à publier en ligne.
* [[StoryMap|https://storymap.knightlab.com/]] : pas vraiment une frise chronologique puisque c'est une présentation de carte mais permet des présentations superbes.
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oAjeEP3waaLcKcjaD645qaigCD7Nznd+GP8ACj7MD35+lT0Uw17ld7QSY3bSR/s5/nUkcRQY3ZH0qSikAgGKWiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//2Q==
AAABAAEAAAAAAAEAGAAIIQMAFgAAACgAAAAAAQAAAAIAAAEAGAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAD7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f19/f19/f19/f09vb09vb09vb09vbz9fbz9fbz9fby9PXy9PXy9PXy9PXx8/Tx8/Tw8vPw8vPv8fLv8fLu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7s7u/s7u/s7u/r7e7q7O3q7O3q7O3p6+zp6+zp6+zo6uvo6uvn6ern6ern6ern6ern6ern6erm6Onm6Onm6Onm6Onk5ufk5ufk5ufj5ebj5ebj5ebj5ebk5ufk5ufj5ebj5ebj5ebj5ebi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXi5OXh4+Th4+Th4+Th4+Th4+Th4+Th4+Ti5OXi5OXi5OXj5ebj5ebj5ebj5ebk5ufl5+jl5+jl5+jl5+jm6Onm6Onm6Onn6ern6ern6ero6uvo6uvo6uvo6uvo6uvo6uvo6uvo6uvo6uvp6+zp6+zp6+zo6uvp6+zp6+zq7O3q7O3r7e7r7e7q7Ozr7e3r7e3r7e3s7u7t7+/t7+/s7u7t7+/t7+/u8PDu8PDv8fHv8fHv8fHw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f19/f19/f19/f09vb09vb09vb09vbz9fbz9fbz9fby9PXy9PXy9PXy9PXx8/Tw8vPw8vPw8vPv8fLu8PHu8PHu8PHt7/Dt7/Dt7/Ds7u/r7e7r7e7r7e7s7u/s7u/r7e7q7O3q7O3q7O3p6+zp6+zp6+zp6+zo6uvn6ern6erm6Onm6Onn6ern6erm6Onm6Onm6Onm6Onl5+jk5ufk5ufj5ebj5ebj5ebj5ebj5ebj5ebj5ebj5ebj5ebi5OXi5OXi5OXh4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Ti5OXi5OXi5OXj5ebj5ebj5ebj5ebj5ebj5ebj5ebk5ufk5ufk5ufl5+jl5+jl5+jl5+jm6Onm6Onm6Onm6Onn6ern6ern6ern6ero6uvo6uvo6uvo6uvo6uvo6uvo6uvp6+zp6+zq7O3q7O3r7e7q7Ozq7Ozr7e3r7e3s7u7s7u7t7+/s7u7t7+/t7+/t7+/u8PDv8fHv8fHv8fHv8fHw8vLw8vLx8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f19/f19/f09vb09vb09vb09vb09vbz9fbz9fby9PXy9PXy9PXx8/Tx8/Tw8vPw8vPw8vPv8fLv8fLu8PHu8PHt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7r7e7s7u/r7e7r7e7q7O3p6+zp6+zp6+zp6+zo6uvo6uvo6uvn6erm6Onm6Onm6Onm6Onm6Onm6Onl5+jl5+jl5+jk5ufj5ebj5ebj5ebi5OXi5OXi5OXi5OXi5OXi5OXi5OXh4+Th4+Th4+Th4+Tf4eLf4eLf4eLf4eLf4eLf4eLf4eLf4eLg4uPg4uPg4uPg4uPg4uPg4uPg4uPh4+Th4+Th4+Th4+Th4+Th4+Th4+Th4+Ti5OXi5OXi5OXi5OXj5ebj5ebi5OXi5OXi5OXi5OXj5ebj5ebj5ebk5ufj5ebj5ebk5ufk5ufk5ufk5ufk5ufl5+jm6Onm6Onm6Onn6ern6ern6ern6ern6ern6ero6uvo6uvp6+zq7O3q7O3q7Ozq7Ozq7Ozr7e3r7e3s7u7s7u7s7u7s7u7t7+/t7+/u8PDu8PDv8fHv8fHv8fHv8fHw8vLx8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb09vb19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f19/f09vb09vb09vb09vbz9fXz9fXy9PXy9PXy9PXy9PXx8/Tx8/Tx8/Tw8vPw8vPv8fLv8fLu8PHu8PHt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3r7e7q7O3q7O3p6+zp6+zo6uvo6uvo6uvo6uvn6ern6erm6Onl5+jl5+jl5+jl5+jl5+jl5+jk5ufk5ufk5ufj5ebi5OXi5OXi5OXh4+Th4+Th4+Th4+Th4+Tg4uPg4uPg4uPg4uPf4eLf4eLe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHf4eLf4eLf4eLf4eLf4eLf4eLf4eLg4uPg4uPg4uPg4uPg4uPg4uPg4uPg4uPg4uPg4uPg4uPh4+Th4+Th4+Th4+Ti5OXi5OXi5OXi5OXj5ebj5ebj5ebi5OXi5OXi5OXj5ebj5ebj5ebj5ebk5ufk5ufl5+jl5+jl5+jl5+jm6Onm6Onm6Onm6Onn6ern6ero6uvp6+zp6+zp6+vp6+vq7Ozq7Ozr7e3r7e3s7u7s7u7s7u7s7u7t7+/t7+/u8PDu8PDv8fHv8fHv8fHw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f09vb09vb09vbz9fXz9fXz9fXz9fXy9PXy9PXx8/Tx8/Tx8/Tx8/Tx8/Tw8vPw8vPv8fLu8PHu8PHt7/Dt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3q7O3q7O3p6+zp6+zo6uvo6uvo6uvn6ern6ern6erm6Onl5+jl5+jl5+jk5ufk5ufk5ufk5ufj5ebj5ebj5ebi5OXh4+Th4+Th4+Tg4uPg4uPg4uPg4uPf4eLf4eLf4eLe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHe4OHf4eLf4eLf4eLf4eLg4uPg4uPh4+Th4+Th4+Ti5OXi5OXh4+Th4+Ti5OXi5OXi5OXi5OXj5ebj5ebj5ebj5ebk5ufk5ufk5ufk5ufk5ufl5+jl5+jm6Onm6Onn6ern6ero6uvo6uro6urp6+vp6+vq7Ozq7Ozr7e3r7e3r7e3s7u7t7+/t7+/u8PDu8PDu8PDu8PDv8fHv8fHw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f09vb09vbz9fXz9fXz9fXz9fXy9PTx8/Tx8/Tx8/Tx8/Tx8/Tw8vPw8vPv8fLv8fLv8fLu8PHt7/Dt7/Dt7/Ds7u/s7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zp6+zp6+zo6uvn6ern6ern6erm6Onm6Onm6Onl5+jl5+jk5ufk5ufj5ebi5OXi5OXi5OXi5OXi5OXh4+Th4+Tf4eLf4eLf4eLf4eLf4eLe4OHe4OHe4OHd3+Dd3+Dd3+Dc3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/b3d7b3d7b3d7b3d7b3d7b3d7b3d7c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/c3t/d3+Dd3+Dd3+Dd3+De4OHe4OHe4OHe4OHf4eLf4eLf4eLf4eLf4eLg4uPg4uPg4uPh4+Th4+Th4+Th4+Th4+Ti5OXi5OXi5OXj5ebj5ebk5ufk5ufl5+jl5+jm6Onm6Onn6enn6eno6uro6urp6+vp6+vq7Ozq7Ozr7e3r7e3r7e3s7u7t7+/t7+/u8PDu8PDu8PDu8PDv8fHw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f19/f09vbz9fXz9fXz9fXy9PTy9PTy9PTx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPv8fLv8fLu8PHu8PHt7/Dt7/Ds7u/s7u/s7u/s7u/r7e7q7O3q7O3p6+zp6+zp6+zp6+zo6uvo6uvn6ern6erm6Onm6Onm6Onl5+jl5+jk5ufk5ufj5ebi5OXi5OXi5OXi5OXh4+Th4+Th4+Tg4uTe4OPe4OPe4ePf4eLe4OHe4ODe4ODe4N/d39/d3t/c3t/c3t7c3t7b3d7Z3d/Y3N/Y3N/Z3N/Z3N3Z3N3Z3N3a3N3Z29zZ29zZ29zZ29zZ2t3Z2t3Z2t3Z3N3Z3N3a3N3b3N3c3N3c3N3c3N3b3N3b3N3c3N3b3N3b3d7b3d7a3d7a3d7b3d7b3d7c3t/c3t/c3t/c3t/c3t/d3+Dd3+De4OHe4OHe4OHf4eLf4eLg4uPh4+Th4+Th4+Th4+Ti5OXi5OXj5ebj5ebk5ufk5ufl5+jl5+jm6Onm6Onn6enn6eno6uro6urp6+vp6+vq7Ozr7e3r7e3r7e3s7u7t7+/t7+/t7+/u8PDu8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fXy9PXy9PXy9PXy9PXy9PXx8/Tx8/Tw8vPw8vPv8fLv8fLv8fLu8PHu8PHt7/Dt7/Ds7u/s7u/s7u/r7e7r7e7q7O3p6+zp6+zo6uvo6uvp6+zo6uvo6uvn6ern6erm6Onm6Onk5+jj5+jj5ufi5ebh5ebh5ebh5OXg4+Tg4+Tg4+Tf4+Tf4uPe4uPe4ePd4OTc3+Xc3+Xc3+Pd3+Hd39/e393e4Nzg4dve4dvf39vd3tvc3tvb3dzY3NzU297P2+DQ3N/R297T293V29zW2tvX2trY2trY2drZ2dvZ2tzZ2d7Y2N3V19zX297X29zX29vZ2trb2dnc2dnd2trd2drc2Nrb2drY2NrX2drX2t3W293X293X2tvX2tvX29zZ29zZ29za3N3a3N3c3N7c3N7d3d/d3d/d3d/e3uDe3uDf4OHf4eLf4eLg4uPg4uPh4+Th4+Th4+Ti5OXi5OXj5ebk5ufl5+jl5+jl5+jm6Onm6Onn6ero6urp6+vp6+zq7O3q7O3q7O3r7e7r7e7s7u/t7+/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v6+/v6+/v6+/v7/Pz7/Pz7/Pz7/Pz7/Pz7/Pz7/Pz7/Pz7/f38/f38/f38/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXx8/Tx8/Tx8/Tw8vPv8fLv8fLv8fLu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/s7u/r7e7q7O3q7O3p6+zo6uvo6uvo6uvo6uvo6uvo6uvn6erm6Onm6Onm6Onj5ufi5ufh5ebh5ebg5OXg5OXf4+Tf4+Tf4+Te4uPe4uPd4eLd4eLc4OHc3+Tb3ubb3uXb3uLb39/c393d39rd4Nje4Nfd4Njd3tna3tna3NrY2trV2dvR2d7N2eDN2t/O2d3R2dzT2dnU2djV2NfV19bU1tbV1tfV2NnV2NvT19vS1trT2NnT2djU2djX2Nja2Nfb19bc19bb1tXb1tXZ1NXV1NXT1dbS1dnS19vS19rT19jT19jU2NnW2NnX2drX2drY2dra2dvb2tzb2tzb2tzc293d293e3N7d3uDd3+De4OHe4OHf4eLg4uPg4uPh4+Th4+Ti5OXj5ebk5ufk5ufl5+jl5+jm6Onm6Onn6ern6erp6+zp6+zq7O3q7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXx8/Tx8/Tx8/Tw8vPv8fLv8fLu8PHu8PHu8PHu8PHt7/Ds7u/s7u/s7u/r7e7q7O3q7O3p6+zp6+zo6uvo6uvo6uvo6uvo6uvn6ern6erm6Onl5+jl5+ji5ebh5ebh5ebg5OXg5OXf4+Tf4+Tf4+Te4uPe4uPd4eLc4OHc4OHc4OHc3+Hd3uPc3uHb3t/a397Z3tzZ3tvZ3tnX3tjX3drW29rT2trS2NvR19vS1tzV1t7Y1t3X1tzX1tvZ1dfZ1tXY1tPW19PV19LS1tHP1tLN19TM2NbJ2NXJ19TM0tHQ09HS1NLU1NPW09LV0dDV0M/V0M/V0dDS0NDR0NDPz9HO0NLN0NTO0dTO0tPP09TP09TS1NXT1dbU1tfU1tfX1tjX1tjY19nZ2Nra2dva2dvb2tzc3d7c3t/d3+Dd3+De4OHf4eLf4eLg4uPh4+Ti5OXj5ebj5ebk5ufl5+jl5+jl5+jm6Onm6Onn6erp6+zp6+zq7O3q7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXx8/Tx8/Tw8vPw8vPv8fLu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3p6+zp6+zo6uvo6uvn6ern6ern6ern6ern6erm6Onl5+jl5+jk5ufh5ebh5ebg5OXg5OXf4+Tf4+Te4uPd4eLd4eLd4eLc4OHb3+Db3+Db3+Dc3t/e3t7d3d3b3d3Z3dzX3NvV3NvU3NvR29vQ2dzO2d3N2NzN1d3N1N3P1NzV1Nvb1drb1Nnc09fc1NTZ1NHY1M/X1c/V1s7Q1c3M083J083G083C08zC0MzIzczLy8vKysrIycnHycnGyMjFx8fHyMnHycnJycnKysrMycvNyszNy83MzM7Kzc7Kzs/Lz9DN0NHP0dLQ0tPR09TU09XU09XV1NbW1dfY19nZ2Nra2dva29za3N3b3d7c3t/d3+De4OHf4eLg4uPh4+Th4+Ti5OXj5ebk5ufk5ufl5+jl5+jl5+jm6Onn6ero6uvp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXw8vPw8vPw8vPv8fLu8PHu8PHu8PHt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvo6uvn6ern6ern6erm6Onm6Onl5+jk5ufk5ufk5ufg5OXg5OXf4+Tf4+Te4uPe4uPd4eLc4OHc4OHc4OHb3+Da3t/a3t/a3t/c3dze3dnd3dna3NnY3NrU29vR2tzO2tzN2d3M2N7M19/L1t7K1N3L093N0tvR1NnU1dbU1dXV1NPU09LT08/S083S0czQz8rOzsnMzcjJzMjGzMfEycXBxsXAw8i9wMa4vMKzuL6wub6xu8CzvcK0vsK3v8O7wcLCwsTGxMTLxMXOxsbLxsjGx8nFycrHy8zIzM3Kzs/Nz9DO0NHQ0tPQ0tPT0tTV1NbX1tjY19na2dvY2tvZ29zZ29za3N3c3t/d3+De4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufk5ufl5+jl5+jm6Onm6Ono6uvp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXw8vPw8vPw8vPv8fLu8PHu8PHt7/Dt7/Dt7/Dt7/Ds7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvo6uvn6ern6ern6erm6Onm6Onl5+jk5ufk5ufj5ebj5ebg4+Tf4+Tf4+Te4uPe4uPd4eLd4eLc4OHb3+Db3+Da3t/a3t/Z3d7Z3d7b3Nvd3dbc3dbZ29jW2tnS2dvO2NzM2N3J1t7J1t3K1dzK1NzL0trM0tnN0tfO09XN1NLL1NHL0tDK0c/Jz87Kzs3Kzc3JzMvIysvFyMrCxsm+wsa4vMKzuMCmrr6fqryXpLiRorOPo7ORp7aVrLmarrqhsbmptLmzuLq+urzGvr7Lv77IwcHCw8TAxcbCxsfFycrGysvJzM3KzM3Nz9DOz9HR0NLT0tTV1NbX1tjY19nX2NnX2drY2tvZ29za3N3c3t/d3+De4OHg4uPh4+Ti5OXi5OXj5ebk5ufk5ufk5ufl5+jl5+jm6Onn6ero6uvp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fby9PXy9PXy9PXy9PXy9PXw8vPw8vPv8fLv8fLu8PHt7/Dt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvn6ern6ern6erm6Onl5+jl5+jl5+jk5ufj5ebj5ebj5ebg4+Tf4+Te4uPe4uPd4eLc4OHc4OHb3+Da3t/a3t/Z3d7Z3d7Y3N3Y3N3Z3Nra3NXa3NXX2tfU2dnQ2NrN19vL193J1NvJ1NrK0tjL0tXO0dTP0dLP0dDL0c/G0s7E0c7Ez83Czs3Ay82/ys29yM66xs63ws2wvcqotsaerL6UoraKmrJ6kLByjLBtia5qiatpjatskq5xlq98nbKHorKUp7GkrLOzsrS+trbFuLbCurm8v7+7wMG9wsPAxcbDx8jEyMnFycrJy8zKzM3Mzs/P0NHS0dPV1NbW1dfV1tjW2NnX2drY2tva3N3b3d7c3t/e4OHg4uPg4uPh4+Ti5OXj5ebk5ufk5ufk5ufl5+jl5+jm6Onn6ero6uvo6uvq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Dt7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXy9PXy9PXx8/Tw8vPw8vPv8fLv8fLu8PHu8PHt7/Dt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvn6ern6erm6Onm6Onl5+jl5+jl5+jj5ebj5ebj5ebi5OXf4+Te4uPe4uPd4eLc4OHb3+Db3+Da3t/a3t/Z3d7Z3d7Y3N3X29zW2tvW29nX2tbW2tbU2dfS19jP1tnM1tnM1dvL1NnL09bM0dPN0M/Q0M3S0czT0cvP0M3Jzs3Ey8zAyMu7xs22xc+yw9GrwNKguc6UscqEpcJ2mrppkLNgiK1ag6xVfrJRfbRPfbJMfrFOgrNQh7NUiK9fjbBula+BnbCUpLGmqrG0r7C9srG9trW4u7u4vb66v8C8wcK+w8TBxcbEyMnFyMnIysvLzc7NztDQ0NLS0tTT09XU1dbV19jW2NnY2tva3N3c3t/c3t/e4OHf4eLg4uPg4uPh4+Ti5OXj5ebk5ufk5ufk5ufl5+jm6Onn6ero6uvo6uvp6+zq7O3r7e7r7e7s7u/s7u/t7/Dt7+/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvo6uvn6ern6erm6Onl5+jl5+jk5ufj5ebi5OXi5OXh4+Te4uPe4uPd4eLc4OHb3+Da3t/Z3d7Z3d7a3t/Z3d7Y3N3X29zW2tvU2dnU2NjS2NfR19bQ1tfO1djN1NfM09bM0tbM0dTM0dHO0NHQ0M3Q0MnRz8fRzsfMysnHxszExc6+wtC0v9CluM2WsMqGqMdzncFjlb1RirdFg7Q9gbQ8g7g+hL1DgsZEgspBgcg+gsZAhsdBh8NAhLpHg7NWia9rkq+BmrCXoq+nqK+zrK+0sbGytba0ubq3vL24vb65vr++wsPBxcbCxsfFycrKzM3Mzs/Nz9DP0dLR09TT1dbU1tfW2NnZ29zb3d7c3t/d3+Dd3+De4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufl5+jl5+jm6Onn6ero6uvo6uvp6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zp6+zo6uvn6ern6erm6Onm6Onl5+jl5+jk5ufj5ebi5OXh4+Th4+Te4uPd4eLc4OHb3+Da3t/Z3d7Y3N3Y3N3Y3N3Y3N3X29zW2tvU2NnT19jS19jP1djO1djN1NfN09bN0tXN0dTM0dPN0NHJzs3JzczM0M7P0s7Lz8nCx8S8w8q2wdGxvdKnt9CWrst/oMFokblWiLRIgrRBgrk7g782hcQyhMcvhcktg8oxgdA0gdMwgNIugNAwhNEzhc80g8Y5gb1EgrRVha5pjayDmK6WobChpq+mqq6qsLKvtbWzuLm0ubq1uru6vr+9wsPAxMXDx8jHysvKzM3Mzs/O0NHQ0tPS1NXT1dbV19jY2tva3N3b3d7c3t/d3+De4OHf4eLg4uPi5OXj5ebj5ebk5ufk5ufl5+jl5+jm6Onn6ero6uvo6uvp6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3q7O3p6+zo6uvo6uvn6erm6Onm6Onm6Onl5+jk5ufk5ufj5ebi5OXh4+Th4+Te4uPc4OHc4OHb3+Da3t/Z3d7Y3N3X29zX29zX29zW2tvU2NnT19jS1tjR1tnN1NnM09nN0tfN0dXN0NTNz9LMz9DKzc7Jz9DHz9HCzNC+yc27yc24ytKtxtmauteGqstwl7xei7VShbRJgrdCgbw7gcE3gsUzgsougs0qgc4ogM4kfs8ngNQogNclf9YkgNcnhNkrhtgshNAxgcc4f75DfrRUg65rja5+lrGMnrCXo66iq66psLCus7Swtbayt7i2u7y5vr+9wcLAxMXEyMnHysvKzM3Mzs/P0dLR09TT1dbV19jX2drZ29zb3d7b3d7d3+Df4eLg4uPh4+Ti5OXj5ebk5ufk5ufl5+jl5+jm6Onm6Ono6uvo6uvp6+zp6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3p6+zo6uvo6uvn6ern6erm6Onm6Onl5+jk5ufk5ufk5ufi5OXh4+Th4+Tg4uPd4eLc4OHb3+Da3t/Z3d7Y3N3X29zX29zW2tvV2drU2NnT19jS1tfR1dbP1NjN09rN09nO0tfO0NTOz9LOztDMzdDHy87CytK9y9W2ydivx9mmxNmcwNp+rdFhnMhRj79DhLY7f7U5gLw5g8M4g8kygcovgMwvgM4ugNEvgdMwgtUvhNcphNcphdgmhNgjg9kkhdslhdokgNMqf80ygMg5f75Df7ZSgrBiirFylLKFnK6Zpamkq6upsbGts7Sxtre0ubq3vL25vr+9wcLBxcbFycrIy8zKzs/N0NHR09TT1dbV19jX2drZ29za3N3b3d7d3+Df4eLg4uPh4+Ti5OXj5ebk5ufl5+jl5+jl5+jm6Onn6ero6uvp6+zp6+zp6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3p6+zo6uvn6ern6erm6Onm6Onl5+jl5+jk5ufk5ufj5ebi5OXh4+Tg4uPg4uPd4OHb3+Da3t/Z3d7Y3N3X29zW2tvW2tvV2drU2NnT19jS1tfQ1NXP09XO09fM0tnM0dfO0NXOztHNzM7My83Iys7Izta6x9Suw9emxN+ZweGBr9VimMNHiL03g78ygcEwgcIwg8YvgsksgMspf8wpf88pgNArgNItgdIugtIwgtMugtEmgs0nhc8mhdIlhdYlhtokhdogftQkfdArfs0xfsY3fb4/e7VIgLFXiLJykquQnKOdpaWkrKyqsLCus7Syt7i1uru4vb67wMHAxMXDx8jGysvKzs/M0NHR09TT1dbV19jX2drZ29zb3d7b3d7d3+Df4eLg4uPh4+Tj5ebk5ufl5+jl5+jl5+jm6Onm6Onn6ero6uvp6+zq7O3p6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3p6+zn6ern6ern6erm6Onl5+jl5+jl5+jk5ufk5ufj5ebi5OXh4+Tg4uPg4uPc4OHb3+Da3t/Z3d7Y3N3X29zW2tvV2drT19jS1tfR1dbQ1NXP09TO0tPN0dXLz9XLzdTNzNHNy87MycvJyMrEx8u0vMiyw9ekwd+Dr9Vdk8JEg7k7gL04gsc1gMwxfswtfs0sf84oftAlfdAkf9IohdcmhdUkhNQlhNEkhM8mhM4nhMsphsYsisoti88ujNUujdsqidskgdcifdIlfNAqfMsue8QzfL04frhEgrVgiKiEk5uVnZ2dpaWjqqqor6+us7Sxtre2u7y6v8C/w8TDx8jGysvKzs/N0dLR1NXU1tfW2NnY2tva3N3b3d7c3t/e4OHg4uPh4+Ti5OXj5ebk5ufl5+jl5+jm6Onm6Onn6ern6erp6+zp6+zq7O3p6+zq7O3q7O3q7O3r7e7s7u/s7u/s7u/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/j19/j19/j19/j09vf09vf09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tx8/Tx8/Tw8vPw8vPw8vPu8PHu8PHu8PHt7/Dt7/Ds7u/s7u/r7e7r7e7q7O3p6+zn6ern6erm6Onm6Onl5+jl5+jl5+jk5ufj5ebi5OXh4+Tg4uPg4uPg4uPe3+Dc3t/a3t/Y3d3W29vV29rV2tnV2NjV19jU1tfT1dbQ09fM09bJ0tXL0dTPzNDPy8/Mys7GyM3Axs25ws6xwdKkvdiBpspcjLlEgbY7gb4zgsYugMouf84vftAufdIuf9QsgtUogtcmgdYjgdUhgtQfgtEghNAjiNEoj9Uyl9s6nN5AndpFn91EnuFBnOI9l+I0jt0qg9UmfdElfM4me8spe8gtf8YxgMMzfrxIga1miaJ6kqKKnKeZo6ukqa6tr7Cxs7O3vLu6v7+9w8TByMnGys3LzdHQ0NTS1NbV19jX2drZ29zb3d7c3t/d3+De4OHg4uPh4+Ti5OXj5ebk5ufl5+jl5+jm6Onm6Onn6ern6ero6uvq7O3q7O3p6+zq7O3q7O3q7O3r7e7s7u/s7u/t7+/t7+/u8PDu8PDv8fHv8fHw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tg4uPf4eLf4eLf4eLg3t/d3d3X3NvU3NnS29rS29jT2dfW1tbY1NXX0tXT0dXN0NXDz9W9ztXFztDSzMvSysnIx8u5ws6lu86Qsc98qtFWkMA7f7gwe7wyg8ouhc8mgM4kgM8ngNApgdArgtMpg9MlgNEkgNMkg9UoidgukN4yk+A9nulCo+pFpepKqe5LqexKpOhNpupQp+1Rpu5PpOxMn+pKm+g2h9Qsf8ssf8sqf8knfMYnfMQpfsUvgMA5grVMha9ojq+Ima+foq6tqay2r625ubW3vbu3w8S8x8nCyM7Ly9TV0djX1drW2NnY2tva3N3c3t/e4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufl5+jl5+jm6Onm6Onn6ern6ero6uvp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Du8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tg4uPf4eLf4eLg3+Hg3t7e3NzW3NvS29rO29rO2tnQ19fW1tfZ1NfY0dbV0NXMz9PDz9O8ztPAzM/Hx8rBwsmzvcuhts2Gqstll8JHhboye7kwgscuhM4lgM0jgdAlhNQkgtImg9Ing9EkgM8lgtEpiNgykeE2l+c3mOgxkt8pidUqidQ5l95PrPFZtfpTrfNcs/lftPphtPxhtftisvphr/hfrvZVpO0+jtgqfMcrgMksg8wkfMYkfMcogscpf783gLlRhrVvj7KKmK+ho7Gyr7O2t7S4vrm8xsPCysrIzNDPztXU0NjW1drW2NnY2tvb3d7d3+De4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufl5+jl5+jm6Onn6ern6ero6uvp6+zp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Du8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tg4uPf4eLe4OHf3+Hg3t7d29zV2trP2dvM2dzL2NrM1dnR1NnU0tfVz9TTztLNzs/Gzc2+y8q3xsuwv8+kt8+OqcZxlrtWh7RFgbc7gr83hsopfsgmfssphNEmgc8ifswlgc8lgc8ohNMzj947mOc4l+critodfMwTcsINbLoHZrIIZbAcd8A8lt1UrvNftvxarvRarvJcrfNdrfJdrPJdq/FcqvBcqvFUoupCkdkxgsoqfcUrgMgqgMkpf8QtgME0f75CgbpVhrdrjrWHnbihrbyts7W5vbjExr/LzMbQ0M7T0tXT0tjW1tvX2dvZ29zc3t/e4OHf4eLg4uPh4+Ti5OXi5OXj5ebk5ufl5+jl5+jm6Onn6ern6ero6uvo6uvp6+zp6+zp6+zq7O3r7e7r7e7r7e7s7u/t7/Dt7/Dt7/Du8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tf4eLe4OHe4OHe3uDe3N7a2t3T2dvO2NvM19zK1dvK0trM0djPz9XPzNHOy83Ly8zEyci5xMOovceOrc13n8lhkL9Ng7hAf7o5gMI1hMotgs0ogc4ngdAohNEqhNEuh9Mzjdg6lOM6luUxjt4lgdEVcsMKaLkFY7MGY7MKZrUKZLMKZLASarUedL03jNRbr/ZcrfFcrO5dq+9cqu1dqe5dqe5dqu5cqO5bqO5WoulFk9oygsopfcMqfcQugcUygsUygcU2gcQ+gsFNh75nlL6HpMCntb+8v77LyMDQzcPT0cvU1dXT1trW2dzZ29zb3d7d3+Df4eLg4uPg4uPh4+Ti5OXj5ebj5ebk5ufl5+jm6Onm6Onn6ern6ero6uvo6uvp6+zq7O3q7O3r7e7r7e7r7e7s7u/t7/Dt7/Dt7/Du8PDu8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tf4eLe4OHd3+Dc3t/c3N/Y2t7T2NzP19vM1tvL1NrK0djL0NbLzdPJys/HyMzDyMq5wsWrubyOrMBklsRMiMNAgb88gsU6hs0yhM8ofs0ngNEohNYngtQmgdEyjNg/luI+leAwitcfe8sPa7wGYrMIZLcMaLsMaLkKZbYJY7IKYbAOY7ASZrIMX6kdcLlTo+pdq+5equ1dqexdqOtdqOtep+tep+tcpupZo+hYoudVoeZGk9kzg8gtfcIxf8Q0gMcvgMgsgMsrgMkygcVIicFnlb6dtcq7w8vPzMrUz8jU0cvT19XR2drV29za3d7c3t/e4OHg4uPh4+Th4+Ti5OXi5OXj5ebk5ufl5+jl5+jm6Onn6ern6ero6uvo6uvp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Du8PHu8PHu8PHu8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufi5OXi5OXh4+Tf4eLd3+Dc3t/b3d/Z2+DW2d/S1tvR1dnQ1dfP09XO0NLNztHJy8/Cxs27w8yxv8mhtcGMpbZrl7hGh8E5g8gygcgsf8oof80ngNImgtgefNEkg9g1keU/m+s7lOIthdEieMUUbbwMZ7kLZ7oLZ7kJZLYHYrQIYrMKYrMKYrIJXq0KXqsQYq8KWqYWZrFOm+NeqOxgqepfqOlep+hdpuddpeddpOhYn+Nao+ZbpOhUnuJQnOBNmd4+is8yfcQ0fsgtfcomf80hgM4jgcoxg8RMir1/o8equ9HJzdfS0dPS1dLR2tfP3NnW3d3c3t/d3+Df4eLh4+Ti5OXi5OXi5OXj5ebj5ebk5ufl5+jm6Onm6Onn6ero6uvo6uvo6uvp6+zq7O3q7O3q7O3r7e7s7u/s7u/t7/Dt7/Du8PHu8PHu8PHu8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f19/fz9fXz9fXz9fXy9PTx8/Px8/Px8/Px8/Tw8vPw8vPw8vPu8PHu8PHu8PHu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zo6uvn6ern6erm6Onl5+jk5ufk5ufj5ebi5OXg4uPf4eLd3+Dc3t/a3ODW2+HT2N/T1tvV1tfX1dTW09DU0c3OzMvFx8m3wcqqusuYs8qBpMFlkLNJhLU3g8Uugswsgs4pgtElgdMigNYggNcxkek3luwyj+MkgNIadMQZcL4Zb70Wb78Qa74IZLcGYbMIY7QLZLUKYbIJX68LYLAOYa8LXKoPX6sOW6cdarZUoOlfp+thqOhgp+dfpuZdpeVco+VbouVZoONYoeNXoeRXoORYoeVWoORLlttAidI0fsssfMslgM0gg88gg80og8c7hcJUhriIqNC2x+LI0uLO2NzQ3dvQ3tnX3t3c3+De4OHg4uPh4+Ti5OXi5OXi5OXj5ebk5ufk5ufl5+jm6Onn6ern6ero6uvo6uvp6+zp6+zq7O3q7O3r7e7s7u/s7u/s7u/t7/Dt7/Du8PHu8PHu8PHu8PDu8PDv8fHw8vLw8vLw8vLx8/Px8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f09vbz9fXz9fXz9fXz9fXy9PTy9PTy9PTx8/Tx8/Tw8vPw8vPv8fLv8fLu8PHt7/Dt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zp6+zo6uvn6erm6Onl5+jk5ufj5ebj5ebh4+Tg4uPf4eLe4OHb3d7Y2t7R19/R1+DU19rX1dPa083a0MfXzcTQzMa9w8SnuMSVscp1n8VUibtGhb89hscyhcsqgssqhM8qhtMlgtIqiNw9nfE1lOsdfNMNab4MZ7sOaLoRaboXbb4VbcANZ7sLZrgMZrcGYLAMY7QOY7MHW6kJW6kNXaoQXqoPW6cQXKgteMRfqfNfpupepOdbouVbouVbo+Vbo+Zbo+dZouVVn+NQm99Pmd5Omd5Pmt9Rm+FOl+NBi9wygtEmfsgjgsclhskqhskyhMZChMRXicN5nMyowuPJ3OzN3N7T4NnZ4N3d3+De4OHf4eLg4uPh4+Ti5OXi5OXj5ebj5ebk5ufl5+jm6Onm6Onn6ero6uvo6uvp6+zp6+zq7O3q7O3r7e7r7e7s7u/s7u/t7/Dt7/Du8PHu8PHu8PHv8fHv8fHw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f19/f09vb09vbz9fXz9fXz9fXz9fXy9PTy9PTx8/Tx8/Tx8/Tw8vPv8fLv8fLv8fLu8PHt7/Dt7/Ds7u/r7e7q7O3q7O3p6+zp6+zo6uvn6erm6Onl5+jk5ufj5ebi5OXh4+Tg4uPf4eLd3+Db3d7X2t3U2uLM1NvO0NHX087d08razsPSyL7Cwr2xvcGdt8p4ocVPiLw8g8Uxgs4me8gthM0xidArhs8ohNA6luVCnvAlgdUUccYEYbYCXbIKZLkNZ7sMZbcQaboTa74OZ7kPaLkTa7sKYrIHXKoNYK4NX6wOXqoYZbEOWqUKVqEoc79Ml+Ncpe9aouhdpOhfpupep+tYouZPmd5GkNU/i9A8ic46hs04hMs4hMs5hcw7hs89h9Y8iNw2hNMwg8othsQriMQrhsYrgsgygcw7fcdOg8N/p9a00OnJ2+DV4Njb4Nzd3+De4OHf4eLg4uPh4+Ti5OXi5OXj5ebj5ebk5ufl5+jm6Onn6ern6ero6uvo6uvo6uvp6+zq7O3q7O3r7e7s7u/s7u/s7u/t7/Dt7/Du8PHu8PHu8PHv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////8/v78/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj19/f19/f19/f19/f09vb09vbz9fXz9fXz9fXz9fXz9fXy9PXx8/Tx8/Tw8vPv8fLv8fLv8fLu8PHu8PHt7/Ds7u/r7e7r7e7q7O3p6+zp6+zo6uvn6erm6Onl5+jk5ufj5ebi5OXg4uPf4eLe4OHd3+Da3N3W2dzS2t7J0tbMzc3V0MzYzsfQx8HGw8C3wMObssB4oL1Wj704gcArgdEohd4lhNgshc8mfsQuh85KpO5Fn+wcdsYHYbUEXrIEXrIJY7cNZroLZLgIYLMJYrMMZbYPZrgPZbcTabkWabcNX6wMXKcRYKkOW6UJVZ8QXKUwe8VXouxgq/VPmeNdp+9apOlUn+RMmd5Fk9g9jNI2hcw1hMs1hcw2hc03hc45hc44hc43hM40gtIygdc2hdM5h8w2hsIyhb4thMMqhMsmf9AugdM5fslglM6lx+jL3+fb4tvd4Nzd3+De4OHf4eLg4uPh4+Ti5OXj5ebj5ebk5ufl5+jl5+jm6Onn6ern6ero6uvo6uvp6+zp6+zq7O3r7e7r7e7s7u/s7u/s7u/t7/Du8PHu8PHu8PHv8fHv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////9///8/v78/v78/v78/v77/f37/f38/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj19/f19/f19/f09vb09vb09vbz9fXz9fXz9fXz9fXy9PXy9PXx8/Tx8/Tw8vPv8fLv8fLu8PHu8PHt7/Ds7u/s7u/r7e7q7O3q7O3p6+zo6uvn6erm6Onl5+jk5ufj5ebi5OXg4uPf4eLd3+Dc3t/Z29zV2NnM09LP1dTS09POzMvJxcbBwca0vsiguMp2n7xMh7A9hb0yh80lg9Ygg94hhNonhM88lt5Lpe4vh9MLZLEJYrIKY7QKYrYRZrsRZ7oMYrYJX7AIXrAIX68HXa0OYrIOYbEOYa8bbboaa7UPXaYQXaQUYKckcbZFkthapu5VoehSnuZgq/RWoetNmOI/jdY1hs4yhc0zh9A2itU0iNMzh9I1iNQ2idY4idY4idY3h9Yzhdkxg9s2hNY4hMs2gsA0gb0vg8Urhs8if9Qog9k2hNFaldKlye7R4eze4dzf393e4OHf4eLg4uPh4+Ti5OXi5OXj5ebk5ufk5ufl5+jm6Onn6ern6ern6ero6uvp6+zp6+zq7O3r7e7r7e7r7e7s7u/s7u/t7/Dt7/Du8PHu8PHv8fLv8fLv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////9///9///9///8/v78/v78/v78/v78/v78/v78/v78/v77/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj19/f19/f19/f09vb09vb09vbz9fXz9fXy9PXy9PXy9PXx8/Tw8vPw8vPw8vPv8fLu8PHu8PHt7/Ds7u/r7e7r7e7q7O3p6+zo6uvn6erm6Onl5+jk5ufj5ebi5OXg4uPe4OHc3t/b3d7Y2tvV19fO1M3T2dHP0tDEx8q+xM+ywNSWsc9wm8JOi7s9iMEzicophc0mhdQkhNYkg9U7mug8mucdeccGYrEGYLEIYbMSabwJX7MMYLQMX7EKXa8KX64MYa8KX60IXKkKXasJW6kOXqsZZ7AVYqkcaa0yf8JGkdVWoeRcqO1ZputVoudUoudUouk9i9c6idU1h9Mzh9MyiNQxiNUwiNQuh9Quh9QuhtQuhtQxhtUxh9Uzh9cxh9swht4yhNg2g885g8o3g8gvgsomgcwigtQkgc81hcxbmM6myerO2+fe3Nzh39/e4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufk5ufl5+jm6Onn6ern6ero6uvp6+zp6+zp6+zq7O3r7e7r7e7s7u/t7/Dt7/Dt7/Du8PHu8PHv8fLv8fLv8fLv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////9///9///9///9///8/v78/v78/v78/v78/v78/v78/v78/v77/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj19/f19/f09vb09vb09vb09vb09vbz9fby9PXy9PXy9PXx8/Tw8vPw8vPv8fLv8fLu8PHt7/Ds7u/s7u/r7e7q7O3p6+zo6uvn6erm6Onl5+jk5ufj5ebh4+Tf4eLd3+Dc3t/a3N3X2drV19XX2s/U18rHy8i8xMyzwtmbt9txnM1NisQ1g8MrhckritEkhMwlg8s5kttAnOgxkeIMbMACX7QEYrYIZLkLY7kEWrEJXbILXrINX7APX68PYa4OX6wKW6cLXKkJWaYJWaYRX6sPXKUPW6AzfsJapuhgrO1bp+hWo+VYpulZp+tOnOE8jNM0hdExhNIwhNMvhtQvidYuidgsidgsidksitksiNksh9kuh9kviNoxiNsviN0tht4xhds2hdg8h9g6h9UvgdEjfconhtMjgMY3h8NdmMWpyubR2ufk3+Ll4OLf4OHf4eLg4uPh4+Ti5OXj5ebk5ufk5ufl5+jm6Onm6Onn6ero6uvo6uvp6+zp6+zq7O3q7O3r7e7s7u/s7u/t7/Dt7/Dt7/Du8PHv8fLv8fLw8vPw8vLv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////9///9///9///9///9///8/v78/v79///9///8/v78/v78/v78/v77/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f19/f19/f09vb09vb09vb09vbz9fbz9fby9PXy9PXx8/Tw8vPw8vPv8fLv8fLu8PHt7/Dt7/Ds7u/r7e7q7O3q6+zp6uvn6erm6Ork5+nj5uji5ebh4+Tf4eLd3+Db3d7a3NzW2NnV1tPa2szS08TFy8q5x9afudt2n9JPico4hc4qhdMihdMihtIoiM85ktVJmtw0i9QGZ7wFaMEBYroAX7cBXrYBWrIEW7MMYbcNX7ENXq4QX60OXqoMW6YNXKUMXKcKW6cPXakPXaULV54lb7RNl9tgquxapOZZpeZbqetWpedGltk5i884itE1idUwhtUshNQqhdQriNcridgqidkqidkqidoriNsriNssh9sshtsshtorh90tiN8uht0zhdw3ht02h9wwhNkpgtMigMokf789ir5gmL6uzeTX3uvm3uPl3+Lg4OLg4eLg4uPi5Obj5efj5efk5ujk5ujl5+jm6Onn6eno6erp6urp6uvp6+zq7O3q7O3r7e7s7u/s7u/s7u/t7/Dt7/Du8PHu8PHv8fLv8fLw8vPw8vLv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f37/f37/f37/f37/f38/v78/v78/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////+///+///+///+///+///9/v79/v79///9///9///9/v79/v79/v79/v78/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr3+fn3+fn3+fn2+Pj2+Pj2+Pj2+Pj19/f19/f19/f09vb09vb09vbz9fby9PXy9PXy9PXx8/Tw8vPw8vPw8vPv8fLu8PHu8PHt7/Ds7u/s7e7s7O3t6uzr6uzn6evk5+vj5uvh5eng5ebf4uLe4N/f4d/d393Y29nU2NjS1dPX1svS0sm+ytKqxeB7p9dQi8s7hdAuhdUohtcoidgkhNA1kdtJoekvgssUbboEY7gCYbgBYLcAXbMBXbIEXrMGXbEKX7IKXKwKXKoLXKkLWqYLWaQOXKYIWqIMX6gPYagHVZwYY6hGj9NdpelbpehapehZqOtSo+dFmN06jdQ1iNAxhc8yidQuiNMuiNYvi9ktitgph9UoiNYqi9ori9wqidwqidwrid4rid4qiN0oiN0oit8piNsrhtcvhtgzidowidsrhtchfswlfcI5grxilsKuy+fZ4O/k3eLl3+Hj4OLj4ePk5Ofj5Oni5Oji5Onj5erk5url5+nm6Onp6enr6ujs6+fs6+nq7Ozq7O3r7e7r7e7s7u/s7u/s7u/t7/Dt7/Du8PHu8PHv8fLv8fLw8vPw8vLv8fHw8vLw8vLw8vLw8vLx8/Px8/Py9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb19/f19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v6/Pz6/Pz7/Pz7/Pz7/Pz7/Pz8/f38/f38/f38/f38/f38/f38/f38/f39/v79/v79/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v77/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pj19/f09vb09vb09vbz9fby9PXy9PXy9PXx8/Tw8vPw8vPw8vPw8vPv8fLu8PHt7/Ds7u/t7u/v7O3w6+zt6uzn6e3j5+3h5u3g5erg5eff4uHf4d3i4t3d39rX29jV29vQ19fY2dXHzM21y9+KtNtPjMg5hc8vhtcohdYqhtYog9A+l+NEm+ckeskTa78GYLQHZLcFYrUEYLMEX7EFX7AHYLALYLENYbAMX60LXaoJW6gJWqYLWqYLW6UKX6YKX6MFWJwSYaU9h8tepelfp+tZo+dXpepVp+1Fm+I1jNYxiNMziNYwhtMuiNIvi9MsidMphtEsidUykNw1k+AzkuEzkuIykuQvj+Iri98oid0oiN8mit8kit0ni9oqitUuitQyjdYvi9gohNUtiNssgNAwdrxbj8WmxejX4/Xf3eLj3+Hn5Obn4+fj4ubh4efi5eri5eri5erk5+vm5+ro6Onq6ejt6+fv6+Xu6+fs7Ozq7O3r7e7r7e7s7u/t7/Dt7/Dt7/Dt7/Du8PHu8PHv8fLv8fLw8vPw8vPw8vLw8vLw8vLx8/Px8/Px8/Px8/Py9PTy9PTz9fXz9fXz9fXz9fX09vb19/f19/f19/f19/f19/f2+Pj2+Pj19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v79/v77/f37/f37/f37/f36/Pz6/Pz6/Pz7/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj19/f19/f09vb09vbz9fbz9fby9PXy9PXx8/Tx8/Tx8/Tw8vPw8vPv8fLu8PHt7/Dt7/Dt7u/v7e3w6+zt6uzn6e3k5+7h5+7h5uri5ufl5uTj497h4dvb3NfZ3dvZ3+DO19nQ2dy4ydKixN9lmsc7g8MziNUnhNYkhNUnhdM6leBHoOslfcoIYLEJYrkEYLcDX7IGYbIHYbIHX7AGXq4HXa0KX68KXasIW6kIWqcIWqcJWaYLWqcLW6YOYqoFV5sMXaA6iMxao+dgp+tfpupapOlXp+xLnuY7ktswiNMthtMxiNcyitcwi9UwjNQvi9Y0kNs9meU/nOk6l+YzkeExkOAwjuEsjOAqid8pid8qiuEpi+Enit4rjNswjdgzjdUzjNMuidUsiNcuid0ziNsvecNEf7qBqdK60urY4ezd3+Tk5Ofo5+vi4ubh4eTl5unn6Orm5+nm5+ro5+rp6Orp6erq6unr6+rr6+rr7O3r7e7r7e7r7e7s7u/t7/Dt7/Dt7/Du8PHu8PHu8PHv8fLw8vPw8vPw8vPw8vLw8vLx8/Px8/Px8/Py9PTy9PTz9fXz9fXz9fXz9fXz9fX09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/v77/f37/f37/f37/f36/Pz6/Pz7/f37/f36/Pz6/Pz6/Pz6/Pz6/Pz5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn3+fn3+fn2+Pj2+Pj19/f19/f09vb09vfz9fbz9fby9PXy9PXx8/Tx8/Tx8/Tx8/Tw8vPv8fLu8PHt7/Du7/Dv7u/w7e3s7O3o6u7k6O7j5+3j5url5+fn5uTl497k4t3e39zZ3d3V3eDI1Nu/09+vz+NunsFIh7o9jtAvitclhtckiNgxkt9AnuggfcYHY68Oa70AXbUDYroFYbMGX7AEXa4DW6sDWqoFW6sHXKwGWagHWqgKXKkLXaoNXaoNXKkMXKgHWqILX6MvgMRWpOlao+hYn+Nfp+tdqO1VpetAldwxitMth9Ith9Qwh9czi9kuidQuidM5lN9En+s6luMohNIgfcwffM0aeMoUcMQScMUbeM8kg9osiuEti+IriN4tiNo0jNg4jdY2i9MyidQwitosh9szjN4zhM83erlNgbF9o8S91erY5fHd5Ovh5Ovl5+vm5+jn5+fr6ujt6+nr6Ojr6enq6ern6ezn6u7m6vDn6/Dq7O/r7e7r7e7s7u/t7/Dt7/Dt7/Du8PHu8PHu8PHv8fLv8fLw8vPw8vPw8vPx8/Px8/Px8/Px8/Py9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn2+Pj2+Pj19/f19/f19/f19/j09vf09vfz9fbz9fby9PXy9PXy9PXx8/Tx8/Tw8vPv8fLu8PHu8PHu7+/u7u7s7e7p6+/m6e7l6O3l5+nn5+fp5uLk4Nvm4+Di4+LY3N/S2uHG1+Wv0Oh/sNJGhLNAisUyidAmhtMkidgskd8/ou0efccHZa4NabcEXK8BYboBXbUFX7EFXKwDW6sGXKwIXq4KXq4KXK0LXqwJXKoHWaYFVqQGVqMGVqMIWKQNYaksgcdOoOZWpOlaouhfpetdputZpetMnuQ2jtQth88uidQuidYuh9cxidkphNA/meVIou83kN8deMcSbb0UcMAVcMIVccQWcMUPa8AKZrsQbcMjftYvieEwieExhtk2iNY7jNU6jNQ3i9Y0jNktidswit0zitc4hsk6fLRJgKtznb661OrV5fLZ5O/d5evk6Onq6ujs6eTu6uPv6uXu6ujs6uvo6e/k6fLi6Pbi6vXp7PDr7e7s7u/s7u/t7/Dt7/Du8PHu8PHu8PHv8fLv8fLw8vPw8vPx8/Tx8/Px8/Px8/Py9PTy9PTy9PTy9PTy9PTz9fXz9fX09vb09vb09vb19/f19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///8/v78/v78/v78/v77/f37/f37/f38/v78/v77/f37/f37/f36/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr3+fn3+fn2+Pj2+Pj19/f19/f19/j19/j19/j09vfz9fbz9fbz9fby9PXy9PXx8/Tx8/Tw8vPv8fLu8PHu7/Dt7u/q7e/o6+/n6u7o6e3p6ens6Ofs5+Pk39vl4eDg4ePW3OPQ2+nE2u+KuNxMjbw/icI4jc8sitQlidcqj946nusggcwJaLEIZq8FYrACYbUAWLIAXLUCW64EW6sGXKwIXa0IXa0GWaoDVaYCVKIFV6UKXKoOX60PX6wMXKkHWKUgc75KneZbq/NXpOxjq/NiqvBbpOpYpuxBlNszitIsiNEvi9YuitcuiNcviNg+l+dIofBPqPhJovI3kOAie8wUbr8UbcAYcsYcdMkVb8QKZLkIY7gPab8ed9AyiOE2id85itk7i9U9jdU5jNczidYsh9gwjN0uiNgyh9A4hcY4frVAeadtlreoxNzV6vre7vrc5erl6ebt6+Tw6uHy7OPw7Obt6+rp6vDk6fXh6fni6vfp7PHs7u/s7u/s7u/t7/Du8PHu8PHu8PHv8fLv8fLv8fLw8vPx8/Tx8/Tx8/Tx8/Py9PTy9PTy9PTy9PTz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///8/v78/v78/v78/v77/f37/f38/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr4+vr3+fn2+Pj2+Pj2+Pj19/f2+Pn2+Pn19/j19/j09vfz9fbz9fbz9fby9PXy9PXx8/Tw8vPw8vPv8fLu8PHs7/Dq7vHp7PDp6u7q6evr6enu6eft5uPp4+Dj4uLa3uTV3+3K2u2oxeNaksM8icc9kNQth9Ivj94vk+IzmOcoitcJZ7IIYqwOZrICXKwBXrMDYbsAV7ECWKsGW6sHW6sGWKkEVqcHWqkMX60UZ7UdcL4pe8kxg9EyhNIsfswmeMUvgs5Ak9xPn+ddqPJiq/Vdpe1dp+9Xpu04jNQyi9Mui9QujNcti9cuitkwidlHoPAsgtQvhddRp/VasPs8k+Qcc8UUa74Sab0PZroPZroSar4PZ7sHX7QLYrolfdY2i+A6jdw4idU6jNU6jdgyiNQqhdUxjd4sh9kogdAvg800gsY7gb05cKFijrSgw+TI5PvX6fTf6Orq6+fy7uX07uPz7eTw7Onr6+/n6vTi6fjj6vfp7fHs7u/s7u/t7/Du8PHu8PHu8PHv8fLv8fLv8fLw8vPw8vPx8/Tx8/Tx8/Ty9PTy9PTy9PTy9PTz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f19/f19/f2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///8/v78/v78/v78/v77/f38/v78/v78/v78/v77/f37/f37/f36/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr3+fn3+fn2+Pj2+Pj19/f2+Pn2+Pn2+Pn19/j09vf09vfz9fbz9fbz9fby9PXx8/Tx8/Tw8vPv8fLu8fLr7/Dq7vHp7e/q7O3q6urt6ejv6OXq4+Dr6Obj5OjV3uvP4va40Ox9pM1HicY0idE0j9wujNwggdQ3mOoykuENabcMZLEOZLALYK0PZLYBWa4BU64DW7QCVqkGWqoHWakFWKgMXq4cb70sf805jNo4i9k1iNc0h9U1h9Y2idc5i9kxhNEnesY1hNBQnedbpO9hq/Vfq/RJmuIyidExjdUujdYsi9Yti9cvi9kyjNw7kuQhd8kSaLole81HnO5UqftKn/Eofc4XarwUZ7sUaLoVZ7wTZrkQZLgMY7kSbcUshts2jd0ziNQ1itM5jtgyitYzjNwtidssh9swi90xiNgrfsswfcVChsU9d65HeqmLtNjI5vrb7fjg6Ono6uXw7eXy7OXy7eju7Ozq6/Ln6/Xn7PTr7fLs7u/s7u/t7/Du8PHu8PHv8fLv8fLv8fLv8fLw8vPw8vPx8/Tx8/Ty9PTy9PTy9PTy9PTz9fXz9fXz9fXz9fX09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f19/f19/f2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///8/v78/v78/v77/f37/f37/f36/Pz7/f37/f37/f37/f36/Pz6/Pz6/Pz5+/v4+vr4+vr3+fn3+fn3+fn3+fn3+fn2+Pn2+Pn2+Pn19/j09vf09vf09vfz9fbz9fbz9fby9PXy9PXx8/Tx8/Tu8vPr8PHr7/Dr7u/r7e3t6+vv6unw6uft5+Xm5ufc4uvP3/DC3PaPstdZi71DjdMog9QyjuIphdo0keU5lucRa7wIYK8NYq8NYK0OYK4LXa4DV60CVrAFWrEGWqoEV6ULXascb70ugtA0idcyh9UxhtQxhtQxhtYyh9c0h9g0iNk1idg0iNY5i9ktfMkrd8RCi9hbpe9frfVBld0xidMwjdctjdcsi9cridUvi9o8leYmfM4dc8UTabsTabslectAlOZWqflUpvc5i9wbbb4UZrYXZ7kUZLUSY7UNZLcKab4fftAvjNozjdkyjNYyjNY0jdgxi9gvitswid4xit4xh9svgtYtfc8xfss3gMY3eLZEfK2Bq8/D4fXb7fbd6Orn6+jt7efy7+rx7evu7O3u7/Hq7fDt7vHt7/Dt7/Du8PHu8PHu8PHu8PHw8vPw8vPw8vPw8vPx8/Tx8/Tx8/Tx8/Ty9PTy9PTz9fXz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///8/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz5+/v4+vr4+vr4+vr3+fn3+fn3+fn3+fn3+fr2+Pn2+Pn2+Pn19/j09vf09vf09vfz9fbz9fbz9fby9PXx8/Tw8/Tu8vPs8fLr8PHs7/Dt7e7u7Ovw6+ju6ujr6enp7PHV4u/L5PihxuZpmMZOi8Y1htEyjOIrht0tiN1DnPEddcgMY7QPZLQNYK8LXasIWaoIWKsJWbAGV68CVakGWagYa7kqfsszhtQyh9UxhtQxh9U0itgyi9kyitoxidkxidkxidgwiNgxiNgwhdQ4idg0gtASXastesVSoug4jdYxitQui9Uujtgsi9ctitgzjN01i90YbsAWbL4XbL4Wa70Xa7wnectClOVRo/NSo/JCk+EmdcMXY7IZZbQXZrQMYrIGZrcRc8Mjg9Eujdgwjtgwi9cwi9cxi9gxitoyid0zid4zhtwwgdcsfdMqfdArfc0yfcY7fLpJgLFznsKz0+jZ7vbg7fLm7e/p6+ny8O7w7evr6Ob08/Lv7/Dt7/Du8PHu8PHu8PHu8PHu8PHw8vPw8vPw8vPx8/Tx8/Tx8/Tx8/Ty9PTy9PTz9fXz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///8/v78/v78/v78/v77/f37/f37/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz5+/v5+/v4+vr4+vr4+vr3+fn3+fn3+fr3+fr3+fr2+Pn19/j19/j19/j09vf09vf09vfz9fby9PXy9PXx9PXu8vPs8fLs8fLt8PDu7+7v7e3x7erv7Ovq6+3h6/TT6Pi42/Z2p9NOi8NEjdExhtUxi+Esh9w8leozid4JX7IJXa8OYbMKXa4KW60HWKsHV6oHV6wFVKkGV6kabbsxhtI0itYuhNE1itg6kN4widYyidkwitoxi9sxi9sxi9swi9ovitoviNg1i9s1iNk6itoresgGVKAcZ7I3jdcwi9UritMwkNoti9cvitk2jN4qf9EVarwQZrgVabsXa7wUZrYXaLgoeshEluNWpfJZp/RNmuY4g88lb7wVYq0JXaoGY7IObrwigs8vj9wujtksiNYtitcxi9gxitk0ito2itw1h9syg9gtftQrgNYnftMrfsw0f8Y5erdJgLJwnsWmyeLO5/XZ6fTp8/jr7+/v7uv38+7w7enw8PDu8PHu8PHu8PHv8fLv8fLv8fLw8vPw8vPx8/Tx8/Tx8/Ty9PXy9PXy9PXz9fXz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///9///8/v78/v78/v78/v77/f37/f38/v78/v78/v77/f37/f37/f36/Pz6/Pz5+/v5+/v5+/v5+/v5+/v4+vr4+vv4+vv4+vv3+fr3+fr2+Pn2+Pn19/j19/j19/j09vf09vfz9fbz9fby9PXv9PTt8/Pt8vLv8fHw8e/x7+7z8Ozw7u3o7fDb6vXM6fuSv+FVksdCjM44jNgwitorhdg6k+Y+legRZ7kHXa4IXa8HXK8EWq0GW60IXK8EV6kCUqQJWqobbLsxhdIwhtI0itY1jNkyitcwidUwi9gxi9suitksidgqiNcridgsi9oujNwvi9w0jd8vhNY1iNlBkeAOXqoRWaU1jNYxjNYridMxj9stitgxi9o3i90gc8UYbL0SZ7gRZrYUaLcWaLcWaLYYabYqecZFk95ZpfBZpO1Qm+RIkNgzfMUba7QMZK4MZ7MdecUti9kujdssitkujNkwjNkxi9g0i9g2i9k2idkzhtcugtUrgdUpgNQqfs8ufco3f8Y/gb9Gf7Vfj7ubwuPN6fzc7/vi7fPt8fDw8Ovx7+vw8PHv8fLv8fLv8fLv8fLv8fLw8vPx8/Tx8/Tx8/Tx8/Ty9PXy9PXy9PXy9PXz9fXz9fXz9fX09vb09vb09vb09vb09vb19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///9///9///9///8/v78/v78/v78/v78/v78/v78/v78/v77/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/z5+/z4+vv3+fr3+fr3+fr2+Pn2+Pn2+Pn19/j09vf09vf09vfz9fbw9fXv9fTv9PPw8/Px8/Hz8fD08e7w8PDn7/Pc8Pyx1e5roMxGjsozidMsi90uitwyjNxCm+oiecgFW6kHXq0HXrACWq4AV6wBV6sDWKwBVacEVqUbb7syhtEzidQ1jNg0jdgyi9cwi9YvitYsidUxjtwzkeA3leQ2l+YzlOQtj98nitoritwuitwyi9wyiNkzhdUnecchdsMuh9IwjNcsitUvjdktidczi9s1h9kaa74VabkVaroTaLYRZLITZrIWaLQVZrAYZrExfcZNmOFUn+VXoOZcpOlWnuNEjtUresMZa7YacL0qhNIyjt4vjd0ritkwjNoxjNgzjNY0jdY0jNYyidYwhtMtgtAtgdAugdAugM4wfco0fcY8f8FDf7lbjb6TutzF4/fa7frl8PXw9PPu7+zw8vLw8vPw8vPw8vPw8vPx8/Tx8/Tx8/Tx8/Ty9PXy9PXy9PXy9PXz9fbz9fb09vb09vb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f36/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///9///9///9///9///8/v78/v78/v78/v79///8/v78/v78/v77/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6/P35+/z5+/z4+vv3+fr3+fr3+fr3+fr2+Pn2+Pn19/j09vf09vfz9vfx9vbw9fTv9fTx9PTy9PL08/D18/Hv8fLm8PbT6vmOt9ZTkMA/kNEnh9cjieAsi91Am+gwiNMIXqkJYKwEXasDXa4BWa4AV60AVKoAU6gBWaoTbLguhc08k9s3jtgyi9YyjNcyjdgvi9Yyjts6mOQ/new4mecwkd8oi9kmidkojNwskN8sjd8tit01juAzitw3i9sug9EjeccuiNUui9YvjdgtitcuiNY2jNwzg9UZaLsTZbYUabcVaLYSZbIPYq4RY64WZrAYZq8earM3gshVn+Rfp+tXnuFaoORgpupUm+I+iNIwf80xhtYzjd8wjN4ph9kvjNswjdcwjtQyjtQzjtUwjNQwitI1iNE1g80zgs01htMyg9EsfMoxfcg6gMU/e7hRg7OJsNHK5ffi8/zj7e/x9vXv8vPw8vPw8vPx8/Tx8/Tx8/Tx8/Tx8/Ty9PXy9PXy9PXy9PXz9fbz9fbz9fb09vb09vb09vb19/f19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f36/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///9///9///9///9///9///9///9///9///9///9///9///8/v78/v79///9///9///8/v78/v78/v77/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/P36/P35+/z4+vv4+vv3+fr3+fr3+fr3+fr2+Pn2+Pn19/j09vf09vfy9vbx9vXw9fTx9PTz9fP18/L18/Lu8vbh7/y01O1toMpFi8U1jNMsj+Aiid0wkOBGoe0PaLIEXKYJX6sHX6wEW6wAVakAWK4AVqwAU6cIZLMohc81j9YwitEzjdczjtgwi9Yyjtk9muZCn+w8mecoh9YfgdAXeckQc8QOcsQQdccUecskhtgui94xjN0shdY1jNwzitkmfswyjNktitYyj9ssiNUuh9Y3jNwuf9EYaLoXabgQY7ERZLEVZ7USZbEPYawVZbAZZrAVYakhbLNCi9BaouZaoeRaoONeouZgouddouxQmuc9jd4xh9kvid0xjuEwjdsvjdgvjdUwjtQyj9QwjtMwjNI2ic45h803hs0zhM8vgtAtgNAtfs0yfsk8gMRDfbZRga2DqMbH5Pfg9vnc6e/u8vTx8vPy8vTx8/Tx8/Tx8/Ty9PXy9PXy9PXy9PXy9PXz9fbz9fXz9fbz9fb09vb09vb09vb19/f19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz7/f37/f37/f39/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+///////////////+///+///+///+///+/v79/v79/v79/f39/f38/f38/f37/Pz6/Pz6/Pz6/Pz5+/z5+/v5+/v5+/v3+fr3+fn3+fn3+fn2+Pj2+Pj2+Pj19/b1+Pbv8/Px9ffz8/Ty8PD7+vzn7vbT6/qEsd5Ji8w2idQxjdwwkNoujdVGo+4he8gCWaYIXaoHW6gJW6oHWKkBUqQDVqgBU6QGW6wngM4yjdkqh9Exjtgui9QvjNY0kNs+muZLp/QsiNYdecoXdMYXdckYdswTc8oNbsYIa8MGasERcMYiftIwjN0xjN0vidozi9syitoyi9swidkyi9svidgyito2jd0ofc8RZbYUZrQSZLEQY7ARY7AQYq8PYa4RYq4UYq8WYq4UX6olbrdPmN9epetZoOVYnuJaoeRbpOlUoelDleAziNYzjNwtidowjN0vi9svjNkxjdgzjtgyjdcyi9Qyh88zh80yhs4vhM8ug9AtgtAvgs8zg801gMQ6frxKhrtIfapyosfG8PvU8fro7/X19vX08/Pw8fDz9PPx8vL19/fy9vXw9fTw9fTx9vXz9fXz9vTz9fXz9fX09vb19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn4+fn5+vr5+vr5+vr6+vr6+/v6+/v6+vr6+vr6+vr6+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/f39/f39/f39/f38/Pz8/f38/f38/f39/f39/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f39/f39/f39/f39/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v3+fn3+fn3+fn3+fn3+fn2+Pj2+Pj2+Pf1+Pby9vbv8vb19ff19PXx8PTp9f621vVhmNQ5h9cuieEsit4xjNQ/ltk7k94OZ7cBWKgLXa0GV6gKWKkMVqgJVKQFUaEIV6YdcL4xhtQwitcui9cxj9oxkNositQ4leA7l+QadsMLZ7YYc8YjfdIZc8sSbMUSb8gVc84PcMsFZcAFY7oTb8MlgdIuitsvitsvidoviNguh9cxitozi9syidkzi9s1jNwlfs4NZLQTZbMUZLETY7ARYq8PYa8PYa8QYK8RX64UYa8SXakVYKo6gctVneRYn+RTm99WoeJap+hXpupGl98zh9I3j9w0jd0xi98vi90vi9sxjNszjds0jNg0i9YxiNIvh84vhtAthtAshNAsg88uhM4xg8s1g8g5g8Q8gb1AgLdJhbd3sNvP9//p9Pvx8fD29vb09fP29/Xy9PLx9PLw9fTw9fTx9vXx9vXz9vTz9vT09/X09/b19/f19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn5+vr6+vr6+vr6+vr6+vr7+/v7+/v6+vr6+vr7+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f39/f39/f39/f37/f37/f36/Pz6/Pz6/Pz5+/v5+/v4+vr4+vr4+vr3+fn3+fn3+fn3+fn2+Pj19/b3+fnw8vP4+fn5+v7e5u7c8fuKs9xHhsM6itkzjeIqiNoyjdZGnOIcdL8CWqoEWqsKXK0EVKUIVqYLVqUIVKMEUJ8XZbQ4itgziNYuiNU2kd4ui9cujdc5mOJOq/ZDn+srhdIogdEfeMkRab0Vb8Qac8kVb8gOasMNasMTcMkPa8EPa7wcd8grhtc3kOE2j+A1jt40jd0yi9s0jNwyidk0i9s1jNwkfc0MZbISZLEUZbATY7AQYa4PYa8PYK4QX64RX60VYrAXYq4RXKYka7VKkdlcouhXn+NYo+RZpudXpelImeA2itU5kN00jd0xi98wit4wi9wxjNszjNs0jNg0i9YziNIxiM8wh9EvhtAshNAshNAuhM8vg8w1hcs7h8o3f71Dh8FAgLQ7eKul0PLo+P3t8fTz9vfy9fT09/Xz9vTw8/Hx9fTx9vXx9vXx9vXy9/X09/T1+PT29/b19/f19/f19/f2+Pj2+Pj2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn4+vr4+vr6+vr6+vr6+vr6+vr7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f39/f39/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz5+/v4+vr4+vr4+vr4+vr4+vr3+fn3+fn2+Pj6+fj39fP39/f1/P7b7vq63fNhlsdBhcY6i9g0jd8siNg7leE4j9oJYa0BVqYGW6sHWaoDVKQIVqYIVKMDT54KWKcoecc/kuA1itgwitc1kN0titYykdtFo+tTsPhWsfxYsf1Wrfw+k+UtgtQgdsgTar4PZroRab4TbMETbcETbb8ParsTbL0je8wwidkxitswidkxitozjNw1jd0zito0i9s1jNwkfc0MZLESZLETZK8SYq8QYa4OYK4PX64QX64QX6wSXqwYY7AYYasaYqo7gcdVmt5Yn+FdpuZYo+VWoudLnOM7jto5kN0uh9cxi98wit4wjNwyjdwzjds0jdk0i9YzidMziNAwh9Ewh9EthdEthdEuhNAvhc8xg8s3hco8hcdAhcJDh8E/f7Zfj7jM4vTw+f3s8vfs8vLw9PL09/X2+ffz9/by9/by9/by9/by9/b0+PX3+PT2+PX19/f19/f2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr6+vr6+vr6+vr7+/v7+/v7+/v8/Pz7+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f3+/v7+/v79/f39/f39/f3+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v79/f37/f37/f37/f37/f37/f36/Pz6/Pz5+/v5+/v5+/v5+/v4+vr4+vr4+vr5+/z5+vv6+PX9+vXy9PHu+/7X9/2EttxIisNEkdU3i9U0jNoyi9o/mOcdd8UDW6kDW6gHW6kFV6YFVqQIVqUFUqEBTZwaZ7Y2h9Y3i9k2jNozjdovidYzj9w+nOg1k98zj9xUrvpUrPhXrPpcrv5Vp/dHmek0htYjd8YZbr0SaLgQZrUWbLwUa7sTarkheMgyidk2jt4yi9sxitozjNw0jd0xito0jNw1jNwmfc0PZLIRY7ASY64RYa4QYK0PX6wPXqwPXq0QXqsOWqgVYKwbZK4YX6cobrM9gsZJj9FXoOBZo+VcqOxQnuY6i9c4jdsxitoyjOAxi94wjNwyjdw0jdw0jdk0jNY0idMziNEyiNIwh9EuhtIthdEuhdIwhtEzhtAzg8o6h8s8hsc9hcJIjclCeaiYtc7m9/7l8vrt9fjw9PT09/X6/Pr0+ffy9/bx9vfy+Pfz+Pf1+Pb4+fX3+Pb2+Pj2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr6+vr7+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz7+/v8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v79/f3+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v78/v78/v77/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v5+/v5+/v6+/36+vv7+PX+/fbx9/Lm+/665/lXmMc9i8pClt01i9U2jNg7kd4yjNwLYrQDWqsIXKsGWacDVaMHVqUGVKMCUJ8IVaUqeck9jd0whdM3jtw0jtwrh9U7l+U3leIceccZdMI9luNWrPhTp/RcrfpZqvdbq/dZqPROnuk8jdgrfMcfcbwYbLgSZ7QQZbMacMAuhdU6keE5kOAzi9wzjNw0jd0xits0jNw2jd0nfs4QZbMRY7ASYq4QYK0PX6wOXqsOXqsPXqsTX6wTXqoWYKocZKseZKkkaKwvcrU5fr9Hjs5UnN9eqe5Rn+c3iNQ4jNo3j980jOAxi98xjN0yjdw0jdw0jdo1jNc1itQ0idE0idMxiNIwhtIuhtIuhtMuhdI0idUyhc40hcs8ic4zf8I7hcZMiL1rkbPH4PTh8//u+f/y+Pn09/T4+fX2+Pbz+Pfy9/nz9/n0+Pn3+Pf4+fX3+fb2+Pj2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v7+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v78/v78/v78/v77/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz5+/v5+/v6+/35+Pv9+vf+/fXz/Png/P+Px+w+i8M3kNU2kds2jtc6kNlCl+IedMgDWbADWaoIW6kDVqQDVKIGVaQDUaAAT54VZLU2hdY7jN0yhtY4j98yi9swjNs+muklgdETb78Vb78ke8pInepWqPRZqPVbqPVZpvFapu9dqfBbqO5Sn+REktk1hM4necUabboWargkeMc0ito2jN4xiNoyi9wzjN0xits0jN03jt4ogM4RZ7QSYq8TYa0QYK0PX6wOXqsPXqsQXqsRXakYYqwXYKgVXaIkaKwtcLIwcbMydbY0e7tBictSnOBQneU7jdk5jtszi9s0jOAxi98xjN0yjd00jdw1jdo1jNc1i9U1itI0idMyiNIyh9MwhtMvhtMvhtQwhNIwhdE0iNI0hs4zg8kygcZGicRVha+XudXZ8v/m9/7w+fr2+fb3+PT3+Pb0+Pjz+Pvy+Pv0+Pr3+fj5+vb4+vb2+Pj2+Pj3+fn3+fn3+fn3+fn3+fn4+vr4+vr4+vr4+vr5+/v5+/v5+/v7+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7////////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v78/v78/v78/v78/v77/f37/f37/f37/f37/f37/f36/Pz6/Pz6/Pz6/Pz6+/36+Pv8+vf5/PXx/v3P8/5jpdI3jMswkNotjtozjtc+lNw9kdsRZLgCWbEEV6oIWacFVqMEVaIEU6EDUJ4GUaAkc8M6i9w3ido3jNw2jN0wido4lOQzj98WcsQUcMEXccEYb78qfcxKmuddq/dapfBape5cpuxapOlZpOddp+pdqOxVoulNnOVAkNw0htI0h9Q1ito0itw0i90yi90zjN4yi9w1jN01jNwrg9ARaLQTY7AUYq4SYa0QYKwPXqsQXqoRXakRXacWYakWXqQWXKEnaqwyc7MycrMwcrIvc7Q0er09hstCjtY9jto7jtwwh9czi98xi98xjN0yjd00jtw1jto1jdc1itQ1idI1iNM0idMzh9Mxh9QxhtQwh9Qtg9EuhdIzidQvhM4zh9AyhM07hcRNh7pvm8DB4/Xh9/3t+Pr3+vf4+PP4+ff1+fnz+Pzy+Pz1+fv4+vj7+/b6+vf4+fj3+fn3+fn3+fn4+vr4+vr4+vr4+vr4+vr4+vr5+/v5+/v5+/v5+/v7+/v7+/v8/Pz8/Pz8/Pz8/Pz9/f38/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/v78/v78/v78/v78/v78/v78/v78/v78/v78/v77/f37/f37/f37/f37/P78+/37+vj0+vfp/v6u2fJKk8Y0jtMpjdwrjt4yjdk/ld8tgc0JXbEDWK8GWKoIWKUFVaIFVKEBUJ0DUJ4NWagtfs46jN01iNk4jt4yidsxits7lucmgdIQbL8Vb8IYccIYbb4db743htRZpfFcpvBbpOtepetcpOdbpOZfp+hdpehZo+hapu5Ype9RoOxImug5jdwyh9k1i94yit4zjN4zjN01jN00i9othdMSaLQUZLAVY68UYq4SYKwRX6sQXqoRXKgTXqgVXqYYXqQfY6crbK0yca8yca8xcbAydLUzeLsyeb80f8c6idU7jtsyidkzi98xi94wjNwyjdw0jt01jto2jdg1idQ2idE1iNM1iNM0iNQziNQyh9UxhtQvhtMuhtMvhtMvhtIwhdEwhtA3h8tFh8NXjryiy+Xe+P/s+fz2+vf5+fT5+fj2+fvy+P7y+P72+vz5+/n8/Pb7+/f5+vn4+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz8/Pz8/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/v78/v78/v78/v78/v78/v78/v78/v78/v78/v78/v77/f37/f38/f39/v78/Pz6/fzr9/vc+f6HuNpGkcsyjtYoi90qjN4zj905kd0ecr8HW6wEV6oGVqcGVaIEU58EUp4ATJkCUZ8XZ7YzhdU5i9w2its2jN0xitszjN00juEeecwSbMETbMAZcMMabb8XZ7codcRJlOBep/FdpetepOlepehdpOZepuVepeVbo+Zcpetbpu9XpPBPoO0+kN8zh9kzidwyit4zjN4zjN01jN00jNovhtMUabUTZK8VY68UYq4SYKwRX6sQXqkRXacTXaYWXqUcYaYiZ6gsbKwyca0zca4zcrAzdbU0d7oxeL0yfMU6iNQ8jds0ito0i98yi94wjNwyjdw0jt01jto2jNg1idQ3iNI1iNM1iNM0iNQ0iNQziNQxh9QwhtMvhtMuhtIvhtIuhtIuhdEyhs45hcdKi8CEs9fR7//q+f31+vf8/Pf6+vn2+Pzy+P/z+P/2+f35+/n8/Pb8/Pf5+vr4+vr4+vr5+/v5+/v5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz7/f38/Pz8/Pz8/Pz9/f39/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///9///9///9///8/v78/v78/v78/v77/f38/f3+/vz8/fv3/v7l+P7I7P9km8dDjs01jtkrjN0sjOAyj+EwidgQY7IGWKcFVqUHVaMEUp4EUp4EUZ0AS5gGVKEidcM3itk3i9s2i900itwzi9w1jt8pg9cVb8QTbcITar8YbMEZa74VZbYda7ozfstao+1epu1do+leo+hfpeddpORepeVdpOZfpupdp+9bp/FWpPFCleM0idozitwzi98zi94yi9w1jNw0jNoxh9MWarYTZK8VY68UYq4SYKwRX6sSXqkTXqcUXaUYYKUgZaknaaoubKwxb6s0caw0crA0dLUzdrkwdrsyesM5htM8jds2i9s1i98yi94wjNwyjdw0jt01jto2jNg1idQ2h9I0h9I0h9Izh9Mzh9Mzh9Mzh9Myh9Mxh9MvhtIuhtIuhtIuhtIuhtEvg8xAicZonsnA4/fp+v31+vf9/Pf6+vn2+Pzz+P/y+P/0+f36+/n+/Pb9/Pf5+vr4+vr5+/v5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f38/Pz8/Pz9/f39/f39/f39/f3+/v79/f39/f39/f3+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///9///9///9///9///9///8/v78/v78/v78/v39/fj8/fry/v/h+v+p1fZTj8RBi886j9sxi90wjeIwjeQifdEFW6sGV6QKWKEHVKAFUZ0FU58EUp4ATJkKWKYrfsw5jNs3i9s2jN4xidozjN80jOAeeMwPab0Ua8EUasAUaL4VaLsZaboea7ohbLlPmOJdpe1do+hcouZfpedco+NdpORfpedhputfpuxdp+9ZpvJHl+Y4i9w0i90yi98xi94xi9s0jNw0jNoxiNQXa7cTZK8UYq4TYa0TYKwTX6sTXqkTXqcVXqYbYqckaKwpbKwubaowbqk0cKs1cq81c7Q0dbgwdLoxecI6hdI8jds3jNw1i98yi94wjNwyjdw0jt00jto0jdg0iNQ0htM0h9I0h9I0h9I0h9I0h9IziNIyiNIxiNIxiNIwiNIwh9Euh9EshtIqhNM4iMtWkcGu1enn+vz2+/j++/b8+vn3+fzz+P/x9//1+v77+/r//Pb9/Pf5+/r5+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f39/f39/f39/f39/f3+/v7+/v7+/v79/f39/f3+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///9///9///9///9///9///9///8/v78/v79/v39/fb7/fnu/P/W9v+GuORPjsxBitA/jts3i90zjeQqiOIWbMUFWKsHV6ANWZ0JVJ0FUZ0HVKADUZ0AT5wQYa4yhdM5jdw2jNw0jd0wido0jOAxid0Vb8MOZ70SacETacERZbsUZbodbL4gbLsYY7E+hNFbouteo+tZn+RepOhcouVdo+Vhpuhjp+pfpupcpe1apvJKmeg6jd41i94zi98xi98witw0jNw1jdszidUYbLgSY64UYq4TYa0TYKwUYKsTX6kUX6cZYagfZaomaq0rbKwua6kxbac0b6g0cK00crMzdLcwc7kxecE6hdI8jds2i9s1i98yi94wjNwyjdw0jt00jto0jdgziNQ0htM0h9I0h9I0h9I0h9I0h9I0h9I0iNMziNIyiNIxiNIxiNIwh9EqhtMlhtgxh89NjL+dxt7j+Pv3+/r9+/T8+vj3+f3z9//y+P/1+v77+/v//Pb9/ff6+/v5+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f38/v78/v79/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///9///9///9///9///9///9///9///8/v79/v3+//j7//jp/P7A5/9lndFMj9FFi9JAjNk5ido0jOIjgNwHXLcFV6sHWJ8PWZkLVZwHU5wFUZ0ATJgCUZ4Yarg5i9k5jdw1jNw0jN0wido0jeEqhNgNZ7wRar8RaMARZ74SZrsVZrsaaLscZ7caZLIrcr9YnuhfpOxWnOFco+dco+Zco+Vhpedkpehfo+hepu1dqfVMm+o6jd40i90zjOAxi98wit0zjNw1jdszidUZbrkSY64TYa0TYa0TYKsUYaoUYKkVX6gdZawjaq0oa6wrbKkubKgxbKczbqczbqsycbEyc7Ywc7gxecE6hdI8jds1ito1i98yi94wi9wyjdw1jt00jto0jdgziNQ0htM0htM0htM2h9I2h9E1iNA1iNA1idE0idEziNAziNAxidAxidAqh9Ujhtsuh9JGiL2KtNPc8Pr5/vz//fb9+/n3+f30+P/z+P/1+v77/Pr//vb9/fj6+/v5+/v6/Pz6/Pz6/Pz6/Pz6/Pz7/f37/f37/f37/f38/v78/v78/v79/f39/f3+/v7+/v7+/v7+/v7////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///9///9///9///9///9///9///9///8/v79/v3///r4/frj/P6o2PlPkMtFjtRDjtc9i9c3itgyi98fedIBU60FV6sHV58MWJoLVpoLVJ0FT5kBSpUEUp8fcr87j904jt01jNwzjNwxits2j+AogdINZbgUa78QZ7wQZbkUZ7sWZ7sUZLUWY7IcZ7QgabVSmuNdpetVnOBbouVdo+Zdo+RgpOVipOdfpOhepu5fq/ZOnus5jNwyidszjOAxi98vitwyjNw0jdszitcab7sQYq8RYq0TYa0TYKsUYKkWYaYZYqUiaasoa6wqaqosa6gubKgxbKgybagxbakycK4yc7Mvc7YxesA5h9I5jdozidsyi98xi98wi94yjN02jt03jts2jNgziNMzhdIzhdIzhtE1htA1h882h882iM82idE1idE0idEziNAxidAxidArh9Qnhtgxh9FEhr17qMvO5/Tz/v77/fv9+/n8+/v5+v73+v73+/75/fz8/fr8/fr6/Pv6+/v6/Pz7/Pz7/Pz7/Pz7/f38/f38/f38/f38/v78/v78/v78/v79/f3+/v7+/v7+/v7+/v7////////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7//v30+/zY+v6Fw+hBkM07kNg9j9o5jdk0jtkwjNsRaL0GVq0GVKgGVaEIV50KU5kOVZ0ETpYFUJoJVaEoe8g3jds2jtw0jNwwidk0jd02j94je8oSabYRaLcRZrcRZbcQZbYRZLQTZbMUZbIXZbEfarRAitJVnOJaoORdouVeouNfo+NhpeZgpedhqOxcpuxdqvNSo+44jNozitozjd0xjN0vitoxi9szjNwzi9kbcb8PYrAQYq8TY64TYaoVX6UbYqQkZ6YrbKktbKgubKgvbKgwbKgxbKoxbaswbqozca0yc68rcbAxfcA6jNU2jtouitowjN8wjeAwjN4yjNw5jt47j9w4itc0htIzhtA1htA0hs43hs43h844iM84ic83iM81iM80iNAziNAxiNIxiNIvh9MxiNM5ic1HicJpm8W93vHq/P/0+vv9/Pn//fj//fj+/fr7/fz3/v31/v74/f78/f39/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7//v70+/7O9P9zt946js05ktw5jdk3jtoxj9kqiNULY7YGVKoJU6cGVaEFVZwJUpgNU5kGT5cFUZoKV6Mqfso3jds1jtwzjNwwidk0jd03j90iescTabUTaLURZrYRZrURZbQRZLISZLIUZbEXZq8XY60ueb49hcpLktVcoeNipuZgo+JeouNepOdjqe5dp+xap/BPoOw7kNw4kN4zjd0xjdwvi9oxi9szjNwzi9sbcsIMYa8PY68SY60UYakXYaUgZaUqaqgubakvbagwbKcxbKcwbKgxbKowbawwbqszc60ydK8rcrAxfcA5jdU3jtsvi9swjN8vjOExjN4zjN05jt48jtw4idY2htE1hs40hs00hs01hs02h842iM81iM81iNA1iNEziNEyidMziNUxiNUziNUwhM83hspDhsJlmciz1+/j+P/z/P/9/fv//ff//vX//vf9/vr3//z0/v73/f78/f79/f39/f39/f39/f39/f39/f3+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/f70/P6/5/php9M4jcw7k944jNg5j9oyj9gjgMwFXK4EUqgKU6cGVaADVZkHUZYKUJYHUJgFUZoLWqYugs43jts1jtwzjNwxito0jd02j9whecYRZ7MSaLURZrYRZbQRZLIRZLISZLAUZLAXZa8farMsdbsudrs1e71Gi81WmtpipeRipudeo+ZiqO1eqO1eq/RSo+44jdkyi9gzjd0xjdwwjNsxjNszjNw1jNwddMQNYa8QY68SY60UYacZY6UiaKcsbKovbqkwbKcybKcybKcwbKgxbakxbasxb6ozc60wdK8qc7ExfsM6jdY3jd0wjN0wjOAvjOEyjN81jN06jt07jds3iNQ2hc42hcw1hcw1hcwzhM00hs4zhs8zh9E0iNMziNMyh9IxhtIxhdIxhdIwhNE1iNY8itJEh8Zil8is0erg9v/w+v/7/Pz//fj//vb///f+//j5//v3/v35/v79/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/v/y/f+u2O9Tm8k4js87lOA3i9c6kNozj9gceMMCV6kFUqYLVKYGVaACVJgHUJYHTZMJUZkEUJkOXakyhtI3jts1jtw0jd0yi9s1jt42jtsgeMQQZrIRZ7QQZbUQZLMRZLIRY7ESZK8WZK8YZK0eaK8tdrovdrotcrU0d7hAg8NQk9JfouRgpehgputapepdqvNTpO85jtoyi9kzjdwyjt0wjNsyjNszjNw2jd0gd8cOYa8RY7ASYq0UYacaY6YkaagsbKkvbqgwbaYybaYybaYxbKgxbakxbasxb6oyc60vc68rdLQ0gMY7jtc3jt0yjd4wi+AwjeEzjOA1jN06jt07jNk4htE2g8s2g8k2g8k0g8ozg8wyhM0xg88xhNAyhdAzhdA0htA2htA3h9A4ic84iNA1htE+itJDhcNckMKnzOTj+f/v+f/6+/3//fr//vf///f///j8//r6//37//79/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/v78/v/t/P+byuNKlcc5kNQ3kuA3i9g5j9oyjtYWcLwBVaYGU6YKU6QGVZ8CU5cIUZcGTJIKU5sCT5gPX6o2itY3jts1jtw0jd0zjNw1jt41jdoedcIPZbERZrMPZLQQZLMQY7ERY68TY64WY6wZZKsdZ6src7YvdbgwdbY0drc1d7c5fLtJjM5TmdxepOldp+xeq/NSpO88kd04kN4zjd0yjt0wjNsyjNszjNw3j98keskMYKwQYq4SYqsUYaccZacna6ksbKgvbacwbaUybaUybaUybKcybakybqoxb6oxcawtcq8sdbY2g8k8kNk2jt0yjt8wjOAyjuEzjd81jd06jds7i9c3hM42gsg2gsY2gcY0gcczgckzgssygswzg801hMw3hMs7hcs+hslCiMhEisdDick+h8tIjs5MiMFejLunyN/l+v/u+P/6+/7//fv//vj///j///j9//r7//z7//3+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/v74/f/k9v+Ju9lHk8g6lNkzjt44jdo5j9ovitEQarMBVKMHVKYHUaEFVJwBUpYKVJkGTJILVJwBTZYQX6s4jNg3jts1jtw0jd0zjNw1jt40jNocdMEOZLAQZrMQY7QQY7IQYrASYq4UY6wYY6saZKonb7Mtc7YscLIvcrI2eLg2d7c2eLg2ers8gsVPldtYo+hfrPVUpfA6j9s1jdszjdwzj94xjdwyjNw0jd05kOAnfMoHW6cNX6oSYKkVYKUgZqgqbqstbagwbaYxbqUzbaQzbaUybKczbagzbaoxbqoucKwrcrAtd7k4hs09kNs1jdwxjd4wjN8yjuE0jt43jtw7jto7i9U3hMs3gcY3gcQ3gMU1gMU1gMY2gcc4gsg6hMg/hsdDh8VJiMJOib9SirtVi7pUirxLiL1Ri79cjbpqkLWnw9vk9f70+//8/P7//vr///r///n///r+//v8//79///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/v71/f/a8P96r9NEk8s5lNwvi9w6j946j9oshs0MZK0AUqEIVKYGTp4FU5oBUZMMVpoGTJIMVZ0ATJQRYKs6jdo3jds1jtw1jt40jd02j980jNkcdMENY68QZbIQYrMQYrERYq8TYq0WYqsZY6ocZKgmbK8tcrMucbEwcbEzc7Mzc7M2eLc5e70zeLs1e8E8h8xSn+hUpvE7kNwyitgyjdwzj94yjt0yjNw0jd05kOAofcwCVqILXKURX6YVYKQiaKktcK0vcKkxbqUybqQ0baQ0baQzbaYzbagzbaowbqosb6wrcbIteLs5ic89kdw0jdwxjd4wjN8zjuE1jt44jdw9jtk9itM3g8k4gMU5gMM5gMM3f8M5gMM8gMJAgsJEhL9Kh71Sibpdjrlok7pymLl5nbp5nr1yncJul7t2mLh3kqubrb/J09ze4uT4+Pf//vv///r///v+//v9//77///8///+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/v7z/P/G4PNtpc5Bk84vi9cxjOA5jd47jtsqgskEXKUCVKEGUaEGTpwCUJYEVJYLVZgMUpgJUZkDT5gUY684jNg3jds1jdwyi9szjNw2j980jNofd8QLYa0RZrQPYrIPYrASYq8VYq0WYakcZKkla68rbrAvb68vcK8yca80crI0dLQ1drY3ebszd7s0er81f8UzgMk2h9I4jdk1jdszjdwzj94xjdwyjNs2j982jd0sgtAJW6gJWqIMWqAWYKMla6ovcawvb6gxbqQzbaI0baEzbKM0baU1bqc1bqkwbaoqbqwocbEuer09jdY7kN0vh9czj+Auit0yjeAzi9s4jNlFld89itIxfcM2fsI7gsU4fL47fr5Dg8BDgLpJgbZThrVjkLl3nb+JqsSXssagtcSmuMGnusWhuMqhtsmjtsSjsrynsLasr7Gvrau2sq/Ewbze2db09PD9///7///5/v/3+/36+/v+/v7////////+/v78/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v77/v7w/P+72u9ioMw+ktEti9kwjeM3i906jtonf8YEWqMDU6EHUKAITpwEUJYFVZYJU5cMUpgHUJgDT5gUY684jNg4jtw1jtwyi9s0jd01jt41jdogeMULYa0RZrMPYbEQYa8TYq8WYqwXYaceZKgoba4ubq4wb6wxcK0yca80crI1c7M1dbU2drkydro0er80fsQue8Qxgs04jNk1jdszjdw0kN8xjdwyjNs3kOA2jd0ug9ELXaoKWaINWJ8XYKMma6ovcKwwb6cybaIzbaE0baE0baE1baQ0baY0bakvbqspbq0pcrQyfsQ9j9g7kN0xi9szj+AxjeAzjd41jdw9kN1Glt88iM43gcU5fsI5fLw2dbM9ebRFfbNLfaxgi7R4nr+Mq8Wdtcetvci3wca8wsLCxL/CxsK7wcO7wsW/xcXDxsXFxsPHxMDHwr3Jw77AvLe0sa2ysK+9wMHW297v8/b6/f79/v7////4+Pj4+Pj+/v7////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76/v7t/P+x0+pYmck5kdQujuAti+Q3id47jdokesEDWKADVKAIUZ8KUJwFU5YFVZUIUpULUZcHUJgCTpcTYq44jNg4j9w2j90zjNw1jt41jt41jdsje8gMYq4PZLEPYbEQYa8TYq0XYqkaYqYhZqgrbKwvbqswbqoxb6sycKwzca80c7E0c7M0dLcwdbgyeL0yfMEtesMxgs03jNg0jNoyjdwzj94xjdwyjNw2j981jd0whdMOX6oKWqAOWp4aYqMobKkvcKkwb6UybaI0baA1bJ80baE0bKM1baQ1bacvbqsoba4qdLg4hcw9jtk5kN02kOExjeAzj+EyjN04jt1Bk948itIueL4yebw5ero9ebZBerFGeqxRgKxpkbOIp8KguMuwwMy6xcnDyMfKyMTOycDSy7/Vz8PRzsTSzsbTz8bV0cjW0MjW0MjW0MnW0MrRzMnKyMfCw8O9v8G5vsG6vsLKztDo6en4+Pj+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76/f7q+v+kyeRPk8g2kdYtkOQsi+Q2id07i9kgdLwDV54FVJ8JUZ8KUZsGVJcFVpUHUZQKUJYGT5cBTZYSYa03i9c5j902j900jd01jt40jd02jtsnf8wNY68MYa4PYLASYK4TYawXYagcY6YkZ6gtbKovbakvbakxbakxbqsyb60zcbAzcrIyc7Uuc7Yxd7wwer8secIyhM84jdk0jdozjd0zj94yjt0zjd01jt41jd0yh9UPYKsMWqAQWp4cZaUpbaoub6gwbqMybKAzbJ81bJ81bJ81a6A1bKM0bKYubKombK8td7w9itI7jtk4jt04kuMuit0xjeAyjd02jNtAktwqeL8YY6ceZKQraaQ2bKFIeqpVgKltkrKQrcamusmzwcm/xsfHysbPzMbSzcXV0MbZ0sfc1Mnc08rc08na0snY0sjX0cnW0crW0MzU0MzV08/W1tbW2NnS1NXJzdDCxsm/wcTDxMTW1tbx8fH9/f38/Pz7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76/f7m9/+YwN9LkMg0kdgsj+UqiuQ3it86itgbb7YCVZwFVJ4JUZ4KUZsGVJYFVZMGUJMKUJYGT5cATZUQX6s1idU4j9w2j900jd01jt4zjNw3j9wshNEQZrILYK0OX68RX60TX6sXYKYfZKYnaKgsa6gva6cwa6YybKcxbakybqsyb64ycbEwcbMtcrUvdboueL0secE1htE6j9s0jNozjd0zj94yjt0zjd01jt41jNw1itgSY6sNWp8RW54fZqUpbqkubqcxbaIybJ8za541a541a541a6A2bKE0baUta6knbrAwfME+jNQ6jdg0jNs2keEuidwvi9s1kN44j9s9j9gfbbIQWJwTVpQcVIodTXpDbJRvkrKOqsCnu8i0v8TCxsXKysXRzsbW0crY083X1c/Y1tLZ1tLb1M7b1M7a1M7Z1M/Y1dLZ1tPZ1tXX1tXV1dXU1NXR09TT1NXV1dbW19fT1NTJycnCwsLQ0NDt7e3+/v7////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76/f7h8/+Nt9tJkMkzkdoojeMpiuU5jOE5idcXa7ICU5sHVJ4KUZ4LUZoGVJUEVJIGUJMKUJYHT5cATJQOXakzh9M4jtw1jtwzjNw1jt4yi9s3j90wiNUTabULYK0OXq8RX60SXqkXX6YgZKcoaagsaqYtaqUwaqQxa6UxbKcxbaoybq0xb68wcLItcbUvdboteL0secI4idQ8kd01jdszjd0yjt0zj94zjt00jd01jNw3jNoUY6wOW6ASXJ8haKcrbqkubaYxbKEya54za501ap02a540ap81a6AzbKQsa6gqcbM3g8o+jdY4jNg0jNszjd4uit0uits2kd89kt81htAbZ60RWZwRU48WS3wUPmVOcZGPq8OnvMq1wce/w8LQzsjTz8XW0MfX0s3W09LT1NbQ1NnP1NjY1tjZ1tfY1dfX1tfV1tjW1trV19rW2dzX2tzY2dvY2dna2dja2Nba19XZ19bY2NjR0dHLy8va2tr5+fn////6+vr////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v75/f7b7/+EstpJk8w0ktsni+AqieQ6juM4idYWaLADU5oJVJ4LUpwMUZkHVJQDU5EGUJMLUZcHT5cAS5MOXKYzhtE3jds0jdszjNw0jt4xito3kN0zi9gVbLcLYKwOXq4RX60TXakYXqUiZacraqgtaqYvaaMwaqIxa6Mxa6UxbKgybasxb64wcLEtcbQvdbotd7wtesM5i9Y9kt41jdszjd0yjt0zj940jt00jNw2jNw5jtsVZK0OW6ASXaAiaagsbqoubKUwbKExa54yap01apw1ap00ap81a6A0a6Msaqgtdbk9itE+jtc6jto3jdwxi9syjt8vi9w0j94/leEmd8EXYacUWpsSUYsXR3IoS2tzj6ikusyvvcW/xsjHyMPV0snZ08rY0svW0s/S09bP09zL0+DM1N/U1t3V19zV197U2N7U2N7U2eDU2eDV2d/W2t7Z293c3Nze3Nrg3Njf29fc2tfb2tnY2NjT09Pe3t739/f////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v74/f7P6v13rtpHk843kdYtjdwvjOE5juE2iNUWZa4IU5oNU5sNUpgNU5cHU5UEU5QIUZQLUZYHT5QGT5UNWp8wgck9kdw1jdsyi9wyjd4yjd01j900jdgedLwMYKkOX6sRX6sSW6QaX6QlZaYpZaMvaKMxaaEzaKAyaqEyaqMybKcxbKkwbKotba0vcbQuc7gsdbs0gco6i9c5jto2jtwzjd0zjt01jt02jdw3jNs5jdw9j9wZaLELWZ0TXqEla6wsbasubKcvaqEwaZ8wZ5w1ap42a58wZZo0aZ40bKMpa6oufMQ8jtg8j9c7jtc8j9k2jdg2j9w0jt40j98+lOIdbrgTXKERVJMUTYMXPmFQaH2VqLirusW1vsXGycvMy8rT0MvY08/Y09DX1NPV1dfS1trQ193Q1tzT1trV19vX2d3Y2t/Z3ODZ3eHa3uHZ3eDa3d/d3t/f39/g3t7g3dve29nb2tjc3Nza2trV1dXi4uL7+/v////8/Pz+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7F5/xrq9xEks46kNM0kNozj902jt41h9UWYa4MUpsQU5kPUpYOVJYHU5UGVJYJUZQMUZYJT5IKUZQNVZkuesBBktw4jdwyjd0xjd8yjuAyjts2j9gqf8USZqwLXKURXqYSWqAbXqEnZaMrZaAxaKAzZ500Zp00Z50zaKEyaqUybKcwbKguba0wcrUrcLUrdLs8iNE8j9o3jNg3kN4zjNw0jd01jd03jNs4jNo7jtw/j9wcbbUJV50UXqInba4rbKova6gvaKIxaJ8wZps0aJ02ap8wZJkzaJ4ya6MpbrAvhNE4j9w5jtc7jtQ+ktY7kNY4j9k1jt89luc0idkVZK8UWp4VU5AXSXknRV92hpCmsruvucC9w8nGyc3NzdDRz9DV0tLX1NPY1tXX19bW2NfU2NbU2NXX2NjY2NnZ2trb3Nzc3d3c3d7d3t7e39/f4ODg4ODg4ODg4ODg4N/g4N/f39/d3d3Z2dna2trv7+/+/v7+/v79/f3////+/v7+/v7+/v79/f3+/v7////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7D5vtoqtxDkc88kdM2kNozj901jt80h9cUX60MUZoRVJkPVJcNVZcHU5UGVJYHUZQLUpYKUJMIT5ILUpUqdbo/j9g6j90zjt4yjuAxjeAwjNs2kNszitEfc7kGVpwOWp8VXJ8cXp0nZKAwaaEwZZs2aJw1Z5w1Z5wzaJ4yaaAya6Mva6Yubq0sb7Mpb7UvesFAj9g+kt02jdk1jtwzjdwzjt00jt01jNw3jNo7jtw9j9wdbrgIVp4UXqIobK4sa6owa6YyaKA0aJ00Z5wzZZozZ5w0aZ4wZ54uaqMudro1i9k3j902jNU6j9U+ktc6j9c1jdg0jd1HoPAidcQPW6QYW5wcVo4VQ29GYHeQnaauub60vcLAxcrGyM3NzdHRz9PV09TX1dTY1tXY2NbY2dfV2dTV2dTX19fY2NjZ2dna2trc3Nzd3d3e3t7f39/h4eHh4eHh4eHh4eHh4eHh4eHk5OTg4ODY2Njk5OT6+vr+/v75+fn+/v79/f3+/v7+/v79/f39/f3+/v7////9/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7C5Ptnp9xDkdA8kdU0j9syjt0zjd4zh9cSXqwKUZwQVJoPVJgOVpkHVJYGVJYHUJUKUJYLUZUHTpEKUpUncbY9jdY7kN40jt4zjuExjuEui9s1kNs6ktksgMYMWp8JU5USWJgbXJklYZswZ58rYJQ0Zpo1aJs2aJw0aZ0zaZ4ya6Ewa6UpaqombLEtdr07h89DlN47kNwyi9gxjdoyjt0yjt0zjt0zjdw1jdw5jtw9kN0ecLwIVp8TXaEobK0ubKcyaqI0aZ03aJo4aZozZJYxZZkzaqEqZZ0sbKg3gsU6j902j900i9Y5kNg8kts1jdgyi9g5keJFnOwVZrMVXaMbWZQXS34dRWxpgZaksLmyu8C6wcbFyc7Hyc3NztLR0dLV1NTY1tXZ19bZ2djZ2tjW2tXW2dXV1dXV1dXW1tbY2Njb29vd3d3f39/h4eHh4eHi4uLk5OTk5OTj4+Pj4+Pf39/d3d3e3t7e3t7q6ur19fX6+vr////+/v77+/v6+vr9/f3////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7B4/plptpCkdA7kdYzkNsvjd0yjeAxiNgRX64IUZwPVJsOVJgNVZkGU5YEU5YFUJUITpQMUZYJTpMOVZglcLQ8i9I+kt00jd0zj+EykOMui9wzjts6kts1ic8gbbEHT5AHS4oRUo4dWZIqY5ouZJcuYJQwY5UyZZkyZ5sxaJ0xap8vbKUoa6socrk4hM1Cktw9kdw2jNg0jtszj98xjd4yjt8zjt8yjt40jd02j945kd4gc8AGVqAQW58obKsvbKU0ap44apo6aJU8apk1ZZUtY5YuZ58mZKAxc7Q/jNI5kNs0jtsxjNc2kds2kNwwi9kyjd5Hn/AxhdUVYqwcX58bUocSQGs9YICIna6uuL6yu7++xMnIzNDJy8/P0NPR0tPW1tbY2NfZ2dja29nZ2tjX29bW2dXT09PS0tLT09PV1dXY2Njc3Nzf39/g4ODh4eHi4uLk5OTl5eXk5OTj4+Pj4+Pk5OTW1ta4uLiqqqqurq6xsbG1tbXBwcHNzc3f39/w8PD5+fn7+/v5+fn+/v7////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7A4vlkpNpCkNE7ktczkNstjd0wjeAwiNkRYbEIUp4NVJsNU5gMVJgFUpYEUpYFT5cGS5QNUpYKUJMTWZwlbrE3hMs/kNs2jdw0j+EzkeQvi9wxjdw2kds4j9U1hMgTXp8CSYgFR4UQTYkgWpMuZp4tY5kuZZguZZoqY5goYpkoZZwpaKItdbUzg8o9kNo+k90yiNQ0jdo4leQ0kuEvjt4xj98yj98xjt4yjt00kN83kOAid8YFVaEOWZ8obKovbKM1aps7apY8aJM8aJQ1ZpUtYpcmYp4oaak4gMRCkdo3jtozjdoxjdo0kN8xjd4xjeA9mOtJofIbbLcaYqQYVY0cTHknTW9wjKSgsL2yusC2vMHEyczKzdHLzdHS1NXS09TY2NjZ2dja29nb3Nra29nX29bX2djT09PS0tLQ0NDR0dHU1NTY2Njb29vd3d3f39/h4eHj4+Pk5OTj4+Pi4uLk5OTc3NzBwcGsrKysrKywsLCysrK3t7eurq6tra2pqampqam4uLja2tr29vb+/v7////////////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f6/4fhjpNlCkNE7ktgzkNssjNwvjN8viNsSY7MJU58NVJwLUpcKU5cFUZUEUZYGUJgFSpMOU5cOUpQYXZ0jaqwwe8A+jdc4jdwzjN80j+Ivi9wwjdw0kN03j9g+j9UxfsMWX6MESowDRYQLSocYVZEkYZokYpsjYpogYZoiZJ4qbagyeLU3hcc5jdU8k902jtoth9Q5leI3k+IohtUwj94xkN8xj98vjt4xjt8zj+A2kuEieckEVqIOWJ8pa6kxbKE3a5g9a5Q9aZE3ZI4zZJMrZJgjY6AtdLg9itA+kNo2jto0jtsyjtwwjt4tjN40kuZNp/kyhtIWYqccXJkcT4EoUHVYdZCTqLqst8G5v8O9wcXHzM/JzM/M0NHV19jT1dXZ2dna2tnb3Nrb3Nrb3Nra29nZ2tjX19fU1NTQ0NDOzs7Pz8/S0tLV1dXa2trc3Nzg4ODi4uLj4+Pi4uLg4ODc3NzNzc25ubmzs7O7u7u6urq2tra9vb26urrBwcHDw8O/v7+6urq6urq/v7/u7u77+/v////////////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7A4fhjpNpEkdI8kdczkNssjNwujN8widsUZLQJU58NVJwLUpcJUpYFUJUEUZYJUpkFSpIOUZUTVJUeYZ8laaksc7c+itI8j9s1jdwzjt8wjN0xjd41kd81j9o8kdtDld0te8MSXaMITJEDQ4YCRIUSVZQWWpkaX50fZqUocbE3gcFCj9E9kNY2jtk2j9owi9cwjdk/nOgvi9gZdcMzkN8zkN4ykN8xj98vjd0xjt43k+Ile8sFVqINV54pa6kybKA2aZc8a5M7aI80ZI0vY5InY5klaqk1f8U+jdg5jNk4j9s1j9wxjd0wjd8rit09m+1QqPQaa7MeZaMdV4omUnk/X3uDmayjsbyyub++w8bDxsnKzs/Jzc3P0tPX2drU1tbY2dnb3Nvc3dvc3dvc3dvb3Nra2tnZ2dnX19fR0dHNzc3Nzc3Pz8/Nzc3R0dHV1dXa2trf39/f39/c3NzY2NjJycm5ubm4uLi5ubm+vr6+vr68vLzAwMDBwcG+vr69vb2+vr7AwMC/v7+9vb3g4OD29vb////+/v7////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v72/f7D4/pop91FkdI8kNYyjtosjNwtjd8uidoXaLcIUp4PVp0NU5gKUZYIUpYGUpYLU5oGS5EMTZAdXJwoaKQpaqcpba04gsZAkNk5j9s2j980kOAzjt8zj900j9w1jds6kN08kNw4idQresQcarEVXaQZZKojbrMvesA4hss9jtI/j9U7j9Y1jtc1kdw0kd0riNM7mONDn+oadMARZ7Q4k+Ayjtozj90zkN4vjNsykN8/nOougtIJV6MMVJonaacxa6E0Z5c5aZQ2ZY42Z5MrYpQgYJgyerw+jtY5jds3jdo5kNw0jtsyjt4xjuExj+JNqfYxhtAZZKYmZZwfUXwyV3ZviJ2fsLuttr27wMPCxsfIysvMzs7P0dHS1NTV19fU1tbV19fd3t3d3tzb3Nrc3dve3Nvc29rZ2dna2trW1tbT09PT09PLy8u7u7uysrK4uLjExMTMzMzLy8vExMS9vb26urq7u7u8vLy+vr7AwMDCwsLCwsLCwsLDw8PExMTFxcXGxsbGxsbFxcXFxcXLy8v19fX////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7E5Ptqp9tFkNA8kNU0j9oujt0ujt4wi9oecLwKVJ4NU5kNUZYNUpYLVJcIU5YKUJYJTZIVU5YkYp8saqMraaIoaKQvdrY8iM4/kt04j94witoyjd00kN8xjd0uidkxi9s2jd05j948kN49j90+jts7i9g8jNc9jtk8kds6kNo4j9o1jtkzj9sxj9s3lN8zkNtGo+0xi9UBVZ8Ua7Y6kt03kds4kt49mORBnes+m+k5lOErfcoRXqgOVZkkZKMxa6MxZ5k0Z5Q0Z5QrYJAhXZEqbKg6hco9kNs4j982jt04j9s2kNw3k+Exjt9Dn+8/mOMhcbUgY50mXYsqUnRYdYuTpbOosrq5v8LExsfHyMjKzMvO0M/Q0tHS1dTV19fX2tnZ29rZ29rZ29nZ2tjZ2tjc2tnb2tnZ2dnY2NjZ2dnW1tbGxsa0tLSqqqqoqKirq6uvr6+ysrK1tbW3t7e6urq9vb3AwMDBwcHCwsLExMTFxcXGxsbGxsbIyMjIyMjJycnKysrKysrKysrKysrKysr09PT////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7H5fxuqNxFj848kNM1kdovj9wvjt0xjNohc74LVp0NUpcMUJMNUpQMVJUKU5UJTZMOT5MdWposZ6IybKMvap8raaAqbak1fsBAkNg8kN0yi9kzjd01kN8yjt0xjd8xjd8xi94zi901jNw2jN03jNw5jt04jdw1jdszjNoyjdsyjdsyjtsykd0xj9sxj9pCnug5k90OZK0FVp8Zb7dGm+RLoOlFnOY4kdwqhdAdd8MSarYRY6wUYacYX6ImZ6YwbKUsZZkuZZcxaJojXZIjZJ04f78/jdQ5jtwzjN8xito3j9w4kd4wi9k9mehJpPAsf8YfaaYlYJAlU3dJaoOEmaiotLy1u8DAwsTIx8fLy8rPzs3R0tDS1NLU19XW2dfY29nX2tjX2tja3dvd393c3dvc2tnd3NvY2Njb29vS0tK9vb2qqqqlpaWpqamurq6xsbGzs7O1tbW4uLi9vb3Dw8PFxcXExMTGxsbHx8fJycnKysrKysrLy8vMzMzMzMzNzc3Ozs7Pz8/Pz8/Pz8/MzMzz8/P+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7K6f50rN9IkM0+kNI3ktoxkNwwjtszjtkpe8UVYKYXXKASVZcPUpIMUZEKUJEPUZUXVZgkYJ0xaqI1bKA0a54xbKAsa6Quc7M4hco9kNo7kd01j900jd0xjd0xjN0xjd8zjuA2j+E3kOE4j+E5j+E3jt42jt41j980kN80kd40kd4zkd4ujdkvjtlJpu1Am+QTabIHXKIGWqAXaa88jdQvgckgdb0Va7QMZa8IYKoIXagJWaAZY6cfZqgxdLJBf7o2casnYpogXZUdXJYucrJCjdE9jtk3jt40kOMyjNw1jdo0jdk0jtxMpvM7k9shcLEkZpwjV304X3l1j5+hsLivtrm+wsTBwsPIx8fPzczS0M/T1NLU1tTU19XW2tjW2tjV2tjY29nc393d393a2tja19bc2tne3t7Pz8+2trajo6OlpaWurq6vr6+xsbG1tbW6urq+vr7AwMDBwcHDw8PGxsbJycnKysrLy8vNzc3Nzc3Ozs7Ozs7Pz8/Q0NDR0dHS0tLT09PT09PT09PPz8/z8/P9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7P7f98s+FMks1AkNE6k9oykNswjto1j9oxg8sha7AlaqsgYqIbXJsYWpoXWpodXp8jYKErZqAyap82a502a5sza50ua6Epbagtd7o3iNA9kt04kN41jd00jt42kOA1j980jd4zjN00jN01jN02jd03jt41j902j98zj90yj9swj9oujtk3mOM8m+U9muEeeL8IXqUPY6cFVJkMWp8TYKYQX6URYqgPYqkJXqYIXqgQZK0ndbo6gsVGjM1ZnNxlpOJUks86eLUhYaAkZ6g7hMdEktk3i9k1jt81keQ2keA0jdkwidRLpOxHn+gmer8gaqYeW4onVHNkhJeVqbGstrm5vb2/wsLFxcbMysrRzs3V0dDV1NPV1tTU19XW2dfV2tjW29nZ3dvZ3Nra2tjc2tnf29rc2trOzc2ysrKhoaGkpKStra2ysrKzs7O3t7e7u7vAwMDExMTHx8fIyMjKysrLy8vMzMzNzc3Pz8/Q0NDQ0NDQ0NDQ0NDR0dHS0tLU1NTV1dXW1tbW1tbX19fV1dX29vb+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v73/f7V8v+Du+RPlc9CkdA7k9kykNkxjdk3kNk1hcwlbrErbq8raqopaagnaacmaagoaKkraKgvaKIyaJw3aZk3apg0apkuap0oaqQmbq8qesA1iNI6kNw4kN42j9w5kd83kN02jtw1jds3jtw6j947kd86j943j9w0jtwyj9s0ktw3luA6meNEpO42ld8TZ7EFXaQTaK4MXaEMWZ4KVpoGUpYKVZoMWp4PX6UXabAkecE0h85RnOBZoOBboeJand5Zm9tbnNxYm9s8gMI5gMRDjtY+j9o2i9swi9wwjN41kN82jto7k99QqfIvhs4aaqwdY5sfV4BJcYqMprOmtLe0urnExsXBw8PJycrQzc3Sz8zW0s/W1dLV1tPU2NTV2dfV2tjX3NrZ3dvW2dfa2tjh397g3NvPzcyqqamhoaGlpaWurq6urq6urq64uLi9vb2/v7/ExMTHx8fKysrNzc3Pz8/Q0NDQ0NDR0dHS0tLS0tLT09PT09PT09PU1NTW1tbX19fY2NjZ2dna2tra2trc3Nz7+/v////9/f3////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v74/f7e9v+RweRUl9FAkdQ3ktsxj9kyjtc8ktg8jdEncLMqbq4sa6ksbKcqa6cmaKUqaaktaKcvZqExZ5s2aZo3a5o0apouaZsqa6ImbKoibrAte8I/j9hCld45j9g2jtg3j9k6kds8kdw8kN07jtw4jdw8keE3j94wjNswjNo1lN4+nuZHp+0ujdUNZK0RZ7EOZq4FVZsSY6cQXqIKV5oKVZgFUJMBSY0LVJkreb1NnOBcqexaoOBXmtheoN5cn95VmdlVmdtOlNdDjNBDj9Y9i9c1h9U4j98zjN4wi940kOA3kt9PqPI8k9ofcLIhaKIdWIY1Y4R+nrGdsLiwuru9wb/Gx8XHycjKysvOzczSz8zW0tDW1dHU1dPV19TV2NbV2dfY3Nra3dvW2NbZ2tje3dzNy8qtrKuampqioqKrq6uwsLC0tLS5ubm+vr7CwsLGxsbLy8vPz8/R0dHR0dHS0tLS0tLS0tLT09PU1NTV1dXW1tbW1tbV1dXX19fY2NjZ2dnb29vc3Nzd3d3d3d3h4eH9/f3////9/f3+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7/f7u/P+rzeRXlc46j9wukOQtjt43kNNAk9M9jdAxfL8kaakqa6Qxb6QnaZ8pa6UsaaUwZ6QvZ6IvZp4vZ50vaJwuaZwsaZ4sa6IsbqgobKknbKwzeLpGjs9NnN4/mNs4kdU1i9A7jtdAkN06ido3h901iOIyiuM5lu1Hp/lJq/YxldsScrcKZasLYqsMYasLYKoIXaUIXaQHWqIGV50GVZkEUJMASYoITo4MT40cXpxPkMtkodhhntNenNRcnNdYmtlPlddDjdM4hs5GluE5jNkxhdU7kuI5keE4kuMti906mutGoesldrYlaZ4qX4kjS2h6lqier7urtbu4vsDAxMPFyMfHy8nJzMvOz83R0M/U0tLU1dPV1dXW1tbW19fW2NfV1tXW19bZ2tnU1dTZ2dmsrKyTk5OhoaGoqKiwsLC1tbW6urrAwMDExMTFxcXIyMjPz8/U1NTV1dXV1dXV1dXW1tbX19fX19fW1tbX19fX19fY2NjY2NjY2Njb29ve3t7g4ODf39/e3t7d3d339/f////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/f72/f/B2epim9E4j+EsjucojN85kNFDlNI+jtIzgcUkbK4pa6Qxb6IqbKAqbaUuaKQxZ6MwZqIuZ58tZ58saJ4saJ4saqAtbKIubqUtbactbKcvbqo0c7A3fLhGlM5ZqOJUod9Un+BUn+VSn+pTo/RJoPdIovk6mPIhgNUJabcFY6sRbbITabEOYawLX6kIXacGW6UEWaECVp0DVJoGVpkFUJEHTYwQUY8HRIAHQn0vaJ9dlslemctdms9ZmdJSldRIkdQ/jdRBk94wg9E7kN88k+MthNQ3jt4yi9g5l+VEpfEpg8kncqwoYY0wWXhviJyVpK2ttLq2ur29wcLCxsbFysnHzMrLz8vP0M/R0dHS0tLU1NTW1tbX19fX19fY2NjZ2dnW1tbV1dXd3d2pqamdnZ2dnZ2lpaWsrKyzs7O6urq+vr7ExMTJycnPz8/R0dHT09PU1NTU1NTW1tbX19fY2NjX19fX19fW1tbW1tbW1tbX19fX19fZ2dnc3Nzf39/f39/h4eHn5+fu7u78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/f72/f/Q5/dvpdc7jtwuj+UojN41kNU+k9Y7kNc2h84ocrYnaaQwbaEtbqIrbKMvaaMxZ6MwZqEuZ58uZ54saJ4saZ0ta58sa6Esa6ItbKUwb6oycKwvbqo2cqxgmct5sd9alcZLib1FicA8iMUxg8YgeMMQa7sCYLIEXrAJYrEOY64MXqYKXKYJW6cIWqYHWaQHWqIIWaAJWZwHVZcGUZIMVJMPVJERUo4LSIQbVpFLhr9Vj8RWk8hWlc1QldBJkNFBjdM8jdY6jdozitk4j981j983kOA1jt05lOFMqPQ3ktsZba4gZpslWYFIa4iUqrugrLS0ub67vsHCxMXGyMnIysrKzcvM0MzQ0dDS0tLT09PV1dXW1tbX19fY2NjY2NjZ2dnV1dXX19e7u7uUlJSWlpampqarq6uxsbG5ubm/v7/ExMTJycnOzs7R0dHS0tLV1dXX19fY2NjZ2dnb29vc3Nzb29va2trZ2dnZ2dnY2NjY2NjZ2dnb29ve3t7f39/e3t7h4eHr6+v39/f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/v72/f7c8v98sNw/jdQxkOIrj+E0kNo3kNg4j9s4itYteL8naqktaqEvbqMraqEwaKEzaKEyZ58wZ50vZ50uaJwuaZwwa58vbKEtaqAraqEubacycKwzca0/dKl4osbI8P+x2/R+rs9NhKoubpoeaJoTYp8PZKcOZa4PY64PYKwTYasWYqsRXagKWaUIWKMHV58IV50JVpoJVZcLVZMQV5YRVZMLTYkMTIgZV5M2c69dmdRUkstQkcpNj8xIj89DjtI+jtU5jdgyiNc8leUzjd0yjt03k+I1kd5Iou49ld4fcrYhaqYeWoo4ZYl3la6VprSstby5vcHAwcTExsfHyMnJysrKzMvNz83Q0dDS0tLU1NTV1dXW1tbX19fX19fY2NjU1NTX19fGxsaSkpKXl5ehoaGmpqavr6+2tra9vb3Dw8PIyMjNzc3S0tLS0tLU1NTY2Nja2tra2trZ2dnZ2dnZ2dnZ2dnY2NjX19fW1tbW1tbW1tbW1tbZ2dnc3Nzg4ODl5eXr6+v09PT7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/v73/v7k+f+PvuFIkc83kt4vkeIykt8ujdoyjt42i9sygMoqb7AraaMubKQraaAwaaA1aJ80Z54yZ5wxaJswaJswaZswa50wa54wbKAva6IsaqMsa6UwbahAcaJ4mrnS7vzZ9v/V9v+95PSKuNJRhqgwbZghZpoYYZ0VYKEUX6MRW6EMVZwLVZ8LVqEKVZ4KVZwLVJgMVJUMU5EMUY0QUo0SUowRUIwhYJtAfrpUks5WldJWmNVNks9FjM1Bi9BAjtY9j9o3jts1j94zj+Ayj98yj94xjtw/nOg4k90ecbUeZqIjYZQoW4RfhKKWrsChrbe3vMG+v8LDwsTGxcfIyMnKysrLzMvNzszR0dDS0tLT09PV1dXW1tbW1tbW1tbV1dXV1dXOzs6hoaGQkJCampqoqKipqam0tLS6urrBwcHHx8fLy8vQ0NDU1NTW1tbY2Nja2trb29vb29vd3d3f39/g4ODg4ODf39/e3t7d3d3d3d3d3d3d3d3i4uLk5OTr6+vz8/P6+vr+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/v74/v7q+/+q0+9am9A/k9gxkN4ylOUqi94tjeI0jOA5idYwd7wqaacsa6UraqAwaaA0aZ40aJwzaJsyaJsyaJsxaZsvZ5kuZ5oxa54ybqMxbaUwbqczb6lAcaBrjqzE3/Df9f/l+f/p/P/g9f/K5faQs8lkkLY9caApZpwnaaMmbKgfaKcWXqMSWaETWaAWXJ8bX6AfYp8iY54kY50qaaE2da1Bf7lLisVamNVfntxUltdRl9hIkdNAjNE8i9M7jtk4j9wzjt0yj98ujNwzkuIvjdtAnulBneYac7kZZqQmY5clV4FHcJGBnbWcrbu2vcS7vMDDwcLFw8XIxsjJyMnLysrMzMvPzs3Q0NDR0dHS0tLU1NTV1dXV1dXV1dXS0tLS0tKwsLCOjo6ampqhoaGjo6Ozs7O5ubm/v7/FxcXKysrOzs7S0tLW1tbX19fZ2dne3t7j4+Po6Oju7u7z8/P19fX09PT09PTz8/Pz8/Pz8/Pz8/Pz8/P29vb39/f6+vr9/f3////+/v78/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/v76/v7u/P/F5/tvqNJIldEzjdcylOgojOQrjOYyjeM+kOA2f8cpbKwra6csa6MwaaAyaZ4zaJwyaJszaJszaJozaZoxaZovaJkvaJsvap8xa6IybqY1b6k9cZ5dhaK41+Tm+//w/P/5/f77/f/2+v/y+v/L3u+VttVlkbpIgKxCg7JIjsBIjMdFh8hHhshJiMdOjMhRj8dTkMdUkcdXlMpXlsxcm9RbmtZXmNVYmdpTmNtGj9VAjtU9jdY4jNc1jNkxjNswjd0vjt4tjdwykd5DoOtBneUkfcITaKofZJwnWIQ8YoR1lK6ZrL2nsbq8vsLAvb/GwsPIxcXKx8nLyMrNysvPzc3Rz87R0NDR0dHS0tLT09PT09PT09PT09PU1NS+vr6UlJSQkJCbm5umpqatra22tra9vb3Dw8PJycnNzc3Q0NDU1NTY2NjZ2dng4ODr6+v19fX5+fn8/Pz+/v7+/v7////+/v7+/v7+/v7+/v7////////+/v7+/v7+/v7+/v7+/v7+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76/f7y/P/d9/+MutdUmMo6kNUxkuYpjukrjegxi+Q6jd88h9IvdbklaKYsbKYvaqEwap4xaZ0xaJsxaJsxZ5kxZpgyaJkxaJowaJouaJsvaJ8wa6IzbaU5bp1Sfp2lyNjj+f/z/P/9/f7//v3//Pz++/z4+v/i8f292uyPudVmmrpNh6tTjbxgmNFjmtNhmNBimNBim9Bhm89indFhntNYl89Wl9JYmthWmdpSltpJktY9idE9jtk5jNk4jt03keAvjNwujd0ujt0vjtxDoOpOp+8heL0PY6QaaKYdWowwWHtkgJqUqryotcC0ub29vLzHwsLIw8TKxcbKx8rLyczNy8zQzs7Rz87NzMzR0dHU1NTR0dHR0dHU1NTPz8/Nzc2kpKSOjo6VlZWgoKCpqam0tLS6urrBwcHFxcXKysrPz8/T09PW1tbW1tbi4uLt7e35+fn////////////////////////////////////////////////+/v7////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///6/f/1/f/r/f+u0eVgmsRCktAzkuQmi+cqjOcxjOQ4jN4+jdk2gcgjaqsdYJwqaqMva6IuaZ4sZpkvZ5oyaZwyaJsyZ5kyZ5kyZ5oxaJswaZ4waqEybKI3bZ1IdpqSts3e9v/y+//8/f3///n//vf//fj+/fz4/v/r/P/X8vu32emSutBkjrFOeqdcirlvns1tn89lmsthmcxcl8tZmM5ZmtRXm9hSmNlMk9ZFjtM/i9M/jto4i9k6kOAzjNwsiNkykeEwj98ujdtEoetGoOgsgsYVZqYZZKEbYZsgVIFLaIaFmKyir72wt728vL7Cv7/Hw8HJxMXJxsfJyMvLys3NzM3Pzs7Qzs3Pzs3Q0NDU1NTS0tLPz8/S0tLPz8+2traQkJCPj4+bm5uoqKiurq60tLS9vb3ExMTHx8fMzMzR0dHU1NTX19fe3t7w8PD5+fn+/v7////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///6/f/3/P/z/v/T7PZ4p8ZKksg5lOMmieIrjOQyjeI6jd48jts7i9UreL0PWpgaXpooZqEraqIqZp0taJ0ya580aZ0yZ5oyZ5oyZ5oxaJsxaZwxap8zbKA5bZ5GcJt9nsDT6/vq+P73/P7+//j///T///b9/vb3+/j1/fzz/v/u+v7j8/rL4+6iwdxskLNYf6Rnlbxnmsdfl8lgndJZmtRZn9xVnd5JlNg/jNI+itI/jtk6jNo6j982jt4wi9swjd4zkuExkN0+m+ZNpu4tgMUUY6IhaKQbXZUTUIQrVn1sg5ucqbistL20t7nDwMDJxMLGwr/HxcXGxsfHyMzJys3MzM3Ozc3Qzs3U0tLMzMzPz8/T09POzs7Pz8/MzMyampqIiIiUlJSioqKsrKyxsbG4uLi+vr7IyMjIyMjQ0NDV1dXT09Pb29vv7+/8/Pz+/v7////////9/f39/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///6+//5+//6/v3v/f2ix91WlcQ8kt4vjuUxjuMzi946jNw4i9k6j9w4itMfb7EKUpITWJQiZKAra6QsaqEtZ50uZZswZpozZpoyZ5oyZ5ozaJsyaZw0a547a55Fa5tlhKy91+rl+P/w/P/3//j8//b9//f9//f7/vj7/Pr9+/z++vz7+f7w+f/b7v3H3/ScvddfiapShK1gmspen9dZoN1OmdpDktY9jtU7jdc8jtk8kNwxhtQ5kOAyi9syj943lOQzkN4/nOdJo+stg8cVZKMaY50hYZcYUoUWSXdBZIWNnrCstL+yt724uLnEwr/JxMHHw8LGxsbFx8jFyMzHys3KzM3Nzc3PzczS0tHKysrMzMzPz8/Ozs7MzMy2traJiYmPj4+enp6mpqarq6u0tLS9vb3CwsLKysrMzMzR0dHV1dXX19fl5eX5+fn////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///7+//8+v///fn7/vrS7PpqoMc4itA3k+Y2kOA1ito8j9s2jNoyjNw6kt02i9IVZKgIUpIJUI8cYJwpZ6MpZJ4tZZsxZpoyZZkzZpgyZ5kyZ5kxaZozaps5a51BbZxOc5uevdHj+v/u/f/1//35//n5//X8//j9//v///3//v///f///f/9/v/2/v/q+f/g+P3K7vmCsthMh7lIjchKltc6jdIyh9E0itU5j9o4jto2jNg4kN0yidk4kuIzj94ti9g9m+ZHo+ssg8gKW5wXX5sZWpAYT4AhUX8qU3xmgZ2irrywtr21uLu/vrvEwLvEwb3Jx8bExsbDx8nEyczGy83JzM3NzczPzczOzs7MzMzMzMzNzc3Pz8/Hx8eXl5eIiIiYmJiioqKnp6esrKy4uLjBwcHDw8PLy8vPz8/R0dHU1NTi4uL09PT9/f3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/P/9+////vj+/fPs/v2Ovd0+jdA3kN83jto5jNg+kd05keAti9wvjNo5kdw3itIZaKsCSIsGTIwZWpclYp0vaKAyZ50yZZkzZpgzZpg0Z5kzaJozaJo1a5k7b5xAbpR5nrvS7fnr/f/2/v/7//37/Pf8/fj//fz//f3//P7+/P///v79+/j+/fj2/v3l9//U8v/D8vyY1fJMlNE5is82jNc1jt00j94zjtwzjdo1jdo6kt84j98xi9o1kd5Foe1AnOUgeb0NYaIJVJEVV48TTH8aSncaQms9XoKPpL2rtcGytru4urvEwr/EwbzBv7rJysjFx8jDyMvCyc3Eys3IzM3LzcvNzcrMzMrQ0NDOzs7Nzc3Ly8u0tLSGhoaOjo6YmJihoaGpqamxsbG8vLzCwsLBwcHLy8vQ0NDR0dHa2trv7+/9/f38/Pz9/f3////////////////+/v79/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/f/++////vj///Px//295v1dpOE6jtg8kNo+kNs7j9k4keAwkOIri9oxjto+lN00hc0aZ60GT5EHSokWVJAlX5guZJoyZZk0ZpgzZpgzZ5cyaJcyaJkvaZgvbpk3cJVWgp2309/r+f/6/P///v7//f3//f7//f///v/8/v/5/f/6/v/8/vn9//Xz+fTm9/rI6fKIud9ZmMxIlNM4jdU1kN40kuEykOAyjt0zjtw3kN01jdo8lOE4kt9AnOhAm+YeeL8GWZwIVpUMU44KR30XSnkYQGolRmpqg6Kissewt8C5vL68vr3Fw8DHxMDDwr7FyMbDx8jCyMvCyc3Eys3HzM3KzcvNzcrMzMvOzs7Ly8vNzc3CwsKWlpaFhYWUlJScnJykpKStra21tbW7u7vCwsLGxsbMzMzOzs7V1dXl5eX4+Pj////8/Pz+/v7////////////////+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f/8+v7+/fn///b0/Prj/P+QxvBOlNREk9s8kN8yi90wjuEykuQzkds0jtY0itk+kOM4htYbZrAITI8GSIQSUYggW48rYpQvZpcxZpkwZZkvZJovZp4tap4ma5owcZg/cpGRs8Xe8vr0+v39/P3++vn/+/v//P79/f/3/f/y/P/v+//o9v3f7/vM4/Kiw+Bsm8ROjMBFj809k9k3kt4wjt4ujNwwjNs1jdo6jdo8j9o1jdU9l95Mpu48lt4UbbMDV5wJWJoGTosLSoENQXIZQmsaOFlSZoKerMKpsb+0uL69v8G/wL/Dw8DHxsPExcLExsTDx8jDyMrEycvGyszHy8vKzMvMzMvLysrNzc3Hx8fMzMyysrKBgYGMjIyXl5eioqKoqKiwsLC1tbW6urrCwsLKysrNzc3MzMzZ2dnx8fH8/Pz////8/Pz+/v7////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///8/v/4+v38/Pv///n5+PL0/v7P7vx7rt5JkNU5j+IujecrjOUwkOA6k9g9kdU3i+E0h+Y7jOU8i9spdbwRWZYIS4EJTH0UVIMiX5ArZpksZZwrYp4rYqEoZqIjaZ8qbZw1bJReiKW/2+jm9/v0+/76/Pr7/Pz4/f/2/f/u+//h8/zM5fOsz+yHs+VlmNFQjMlHjc9Aj9Y3j9oxj90vjt8ujN0zjd45kN48j9tBjtlCkddFnN5Io+Mzjc0RZ6kFWJoGV5cFTIoFRX4SR3kSPWYTMVJGWG+Nl6evs720tLq6u7y8vb2/v7/BwsHDxMLExcTFxcXExsbGx8fHyMnHycnIycnJycnJycnGxsbOzs7Hx8fIyMiVlZWAgICSkpKYmJiioqKqqqqysrK3t7e9vb3Dw8PIyMjNzc3Pz8/h4eH8/Pz9/f3////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///8///4+/78/Pv///n9+/P9/vzp+v6z1/NjndZIleAxi+AujeUxkOIyjdY8lN03jeE1iuM2id88jd5AkNs2g8kga6wNVpIGTIUKSYESToYeWpIrY50tZJ8oY54naKIva6I2appIc5mQss3X8Pnl+f/r/P/o+//a8f3F4vCrzuKSvNh4qc9ZlMhHi8pHjtFHkthCktw5jNo1i9w1juAyjeAwi901kOA4kt82j9o9k9xJn+RNo+QofbsMX54IWJgFUpECSYUISIAORngRO2YOMFIyS2SAjp2pr7e1tbi7urq9vb2+vr7AwMDCwsLExMTFxcXFxcXFxcXGxsbHx8fIyMjIyMjIyMjHx8fIyMjExMTKysq3t7eCgoKNjY2Tk5OcnJykpKSrq6uzs7O5ubm+vr7ExMTJycnNzc3U1NTt7e3+/v7+/v7+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///7/v/5/P/9/fz///n///b//vf0/f3d9v2jzu1fnddBjtY6keEykOMwkOIsjNwxjNs8k+I6kOAzh9g3itpAj+E8itkyfcknb7gdX6MUVJETUowdWo8lYZMnYpkoYaAuZKI4aaE6ZpdTeqSjxuO83vas0Oeaw9uDstJto8tbmcdNlMVEkcZBk8w+lNI+k9U+k9Y9kdk7jdo8jd88juE7j+I7k+UxjNwvjdo8nOc/oekzk9gZbK0TXp0IUZAHTYoKTIYJRnsIPW0LOWIQMlU2Umx7kaGfrLSnr7C3ure/wL2/v77AwMDCwsLExMTFxcXFxcXGxsbGxsbGxsbGxsbHx8fHx8fGxsbGxsbIyMi/v7/Ozs6VlZWAgICSkpKYmJifn5+np6eurq61tbW6urq/v7/FxcXKysrMzMzb29v6+vr+/v7////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///6/f75/P7+//3///n///f///b6/Pfx/v7W8vyUwedZmM5CkdU5lOMsjuYojeUtj9w2kt00kNsxito1i988jeU9i+Q+ieBAids/htM8gcY1ebcwdaovdKUyc6o0brAyaq49c7RFeLVDda1jlcptoNNfl8lVksZKj8dCjss7kNE0kdUwkNUyldc0ltYykdIxjtI3kNk7kN07jt06jN04jN01i9s6luNDou06neQegcgJZKgMVpcTUpARTYkOR38KP3MIOWULNFsfQmJRbYWBlqaUpaumsbK3vrq7v7i8vbnBwcDCwsLDw8PFxcXFxcXGxsbGxsbGxsbHx8fHx8fHx8fGxsbFxcXFxcXExMTFxcXBwcF7e3uKioqQkJCbm5uioqKpqamwsLC3t7e8vLzAwMDGxsbKysrMzMzh4eH+/v79/f3////8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7/f76/f7+//7+/fn///j///j+/vb7/vrs+vvQ7fuRwORXmM47jdQujeIqj+gsk+Irj9ksjdk0kuI6kuc6jOY4huI9ieNCjeNDjN5DjdlDjtJDkc1DkspEkMxFi9BHidJHiNFLjNNQkddJjNBEic1Gj9RBkNg7kNozjtsrjd0pj+Iqk+UpkdwrkdYwldkyk9oykds1kdw2kNw2jts7kt9Lo+1JouozjdMWcrUDX6ABVJMPTosTR34PP3MKNmYJMFsdP2NDYHxpgpeInKmcqrGlsbG0vLi5wLm8wLjCxL/Cw8LDw8PExMTFxcXFxcXFxcXFxcXGxsbGxsbGxsbGxsbFxcXExMTDw8PAwMDJycmhoaF7e3uOjo6UlJSbm5ulpaWrq6uxsbG4uLi8vLzAwMDGxsbJycnQ0NDr6+v+/v79/f3////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//7+//3+/vz9/vv//fv///r///j///j6/vru/f7P7fuPv+VWmtNDlt8si94tkuQqkuIrkOEwkeMzjOA2it8+juNAjeE9id09itw8jNs8kNw4kdkyjdQwi9I4j9k+k945jdk0iNQ4jNk6jd08keE3jd8zjOAyjOIxj+Uvj+cqjOYmiOIqi90xkt4zlN8sjtknidMpjtYylNw8nOJFouc6lNUlerkTYp8LVpELUosRUYcPQHION2QPM1wgQWRBXXtofpWFlqeXpK+apKmrsrO7wb+1ubS9wrzFycPAwr/Cw8LExMTExMTFxcXFxcXExMTExMTExMTExMTExMTDw8PCwsLBwcG/v7/AwMC4uLiFhYWGhoaNjY2ZmZmcnJynp6erq6uysrK4uLi8vLzAwMDFxcXJycnZ2dn6+vr////+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3+/fn8/fr7//76/v/3+/v9/fv///n+//f2/ffq+/vT8/2Zyutam9NDktg4lOIukuQsj+Evjd4zjt03jd46jt07jdw7jt47kOE4j+IyjOAvjOAvj+QylOUukd4pjNgtkN4ylOUmiNouj+Mqi+AwjuUxj+Yyj+YwjOUviuMxi+Q0juc1j+U1keI0kOAxj9szlN4/oedHquxDo+Iogr0SZJwMVYkUU4UVTHwPP20ON2ITNlsoRmZKZYFuhJqDlaWRnaigp62qrrC1t7a4uLW6ubbBwsDBwcG/wcDDxcXCwsLExMTExMTExMTExMTExMTDw8PCwsLCwsLCwsLBwcG/v7++vr69vb3ExMSdnZ19fX2JiYmQkJCYmJigoKCkpKSrq6uysrK4uLi8vLy/v7/ExMTKysrg4OD+/v79/f39/f39/f3////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///r///j+//z4///z/f/z/f/2/v/7//7+/vj///j5/vrt/f3b9/+y3PZ4sd9Kk9Q9j9w8kd45j9s1jtkzjtkzkNwwj9sujtwvj+EvjuQwjuYwjegvjOgsjeMrj+Arkd8rkuErkeIpj+Erj+ItkOMpi98wjuA1kOI3kOE4jd87jt09j944jN80it85j+JHn+xTq/VFnd8le7cUZZoXYJAXV4EUSW8TPmEcPl4uSGg/VnJof5V1jJuEl6ORoKibpqmnrKuxsq67uLTAvLfCvbrEwL/DwMPCwcbAv8jCwsbFxMXExMTDw8PDw8PCwsLBwcHBwcHBwcHCwsK9vb3AwMDCwsK5ubm5ubmzs7OJiYl7e3uQkJCRkZGampqkpKSioqKurq6ysrK4uLi9vb2+vr7Nzc3Gxsb29vb6+vr+/v7////////+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///r///f+//z2/v/w/P/t/P/x/f/3/v79/vv///j+//b5//ny//7i+v/G6P+OvupopOBNks9FkdFGmt08md8qjtYmjdgqkuErkuQskOUtjOQwiuM0iuQzjOItjNstj90ukN4tkN4sj94rj94sj94ylOEzk94zj9ozjdU1jdI8ktVDl9tLnupQpPRRo/FGk94oc7cQVZERT4MXTnsTQ2gjS2o2VnBKYnhgdIZ6iZqOm6qImKCRoKWdqKqmr62ts662t7DAu7TEvrfGwLvIwMDIwsPIwcnFwszEwc3DwsrEw8bDw8PCwsLBwcHAwMDAwMC/v7++vr7BwcG+vr67u7u7u7u5ubm4uLicnJx9fX17e3uOjo6SkpKbm5ulpaWnp6eurq6zs7O4uLi9vb2/v7/Hx8fR0dH5+fn8/Pz+/v7////////+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///r///f+//z3/v/v/f/t/P/u/P/1/f/8//7///r///f///X8//f3//zv/v7d9v+63v6Nu+NkoNBLlcw9lNI1l9wtluAok+EpkeItkOIzj+A5jd1Bj95DkuE/k+A9leE8lOE4kt40kdwykdsxktsvkdcxktU0lNc6mdlDod9Pq+dZs+9WrO48jtMfa64XWpsfWJImVIUwU31AWn1UZ4RqeY5/i5uLlqKPm6OQnaOSnqGeqaekrqqstK6zt7C4urK/vrTFwbnIwrvJwr7Kw8PKw8bJwszGws3Ewc7DwcrDw8XCwsLBwcHAwMC+vr68vLy8vLy4uLi7u7u6urqzs7OysrK1tbWpqamDg4N5eXmCgoKOjo6Wlpabm5ukpKSqqqqurq61tbW4uLi+vr7AwMC/v7/h4eH9/f3+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7///v///n+//z5///0/v/x/f/z/f/3/f/7/v7+//v///n///b9/vP8/vX6//zx/f7o/P/T8f6y3faLxOhor99Qo91Am9s2lNoyktk2lNw8lN09kNg+jNM9jNQ9kNo8kdo7kdo4kdk3ktk4lts5mt0+n+BCpONJq+hQs+5WufNcvfdiv/hWqOE8g7snZZwoXZA7Yo5Qa5FvfpyJj6aTlaaamqadnqWeoKWdpKafqqqkr62utK+yt7G4urS8vba/v7jEwrvIxb7IxcDIxMHIxMTIxMfHxMnDwcrBwMrBwMfCwcPBwcG/v7+9vb27u7u5ubm4uLi1tbWysrK0tLStra2tra2qqqqPj491dXV/f3+JiYmNjY2ZmZmcnJyhoaGqqqqurq62tra3t7e9vb3BwcG/v7/x8fH////////////////+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////3///z+//38//77///6/v/7/v/8/v79/v3+/fv///v///r///n+//n8//v3/fzz/v3q/P3i+//R9P+14/uVzvF9v+tqsuZZp+BSpOJQpOVNouRLoeNKouZLo+pLpOtLpetLp+tNrO1SsfBVtvNbvPhbvfpcv/tdwPxcv/xZu/lct/NvuOtqoMpRfaRXe511j6qJmK2TmamcmqWjnqSooqarpqiqqamqrayrs7Kwt7W6u7i+vbrBv73Dwr/FxMLHxsTKyMbHxsXGxcXGxcXFxcbExMbAwsS/wMO/wMG/v7++vr67u7u4uLi1tbWzs7OysrKysrKrq6urq6uqqqqlpaWXl5d3d3dwcHCDg4OLi4uMjIyampqenp6hoaGpqamurq61tbW3t7e8vLzAwMDIyMj8/Pz////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//79//7+//z+//z///v///v///z///v///z//vz+/v38/v37//37//34//32/vv0/vvy/Pvy/f7v/v7o/P7b9//G6fmo1fKKw+tyuOlhsutSru5QsvVUufhWvP5Yvv9awP9cwf5dwv9gxP9jxv9hw/1gwP1fvf1evP5fu/5duP1itfd0rNyAoL1+lq6EmKyOnquVoKidpKimqamqqqiuraqysK21s7G2trW5ubm9u7zCvb7Evr/FwcPGw8bGxcjFxsnExsjCxcfCxcbCxcXCxcS/xMC9w728wLq7vrq6urq4uLi1tbWysrKurq6srKyrq6uqqqqkpKSjo6OioqKVlZV+fn5ubm5zc3ODg4OKioqOjo6ampqfn5+ioqKpqamurq6zs7O2tra5ubm+vr7Y2Nj////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///8///7///+//7///z///n///f///f///j//vr///79/v/5/f/3/v/4///0/f/z/v31//v6//v8//n9//n8//r6//zz/v7h9f7F6Pim2vKBxvFdsOZOq+ZMsepNuPRRvfhWw/1ax/9bxv9cw/9dwf9cv/1bvP1cvP5fu/9kuf5mtftusfJ9osyOmq6Wnqqbo6ueqKugqqmkrqmpsKuttK2wta+0trG5uLa/u7zEv8HHwcTHwMTIwcXJw8jJxsvHxszExcvBxMi/w8a9wsS+w8K9w7+7wru5wLa3vbO2urO1tbSzs7OwsLCsrKyoqKilpaWkpKSenp6cnJyampqXl5eAgIBoaGhwcHB6enqDg4OMjIyUlJSampqenp6jo6Opqamurq6xsbG2tra3t7e9vb3m5ub////+/v7////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///8///+//////3///v///r///r///v//vz////+///8///6///7///6/v/6///9//3+//3///z///r///v///39///1/f/r+//h+v/O8v+14PaYy+l5u+JWq9tJqt9JsOdSvPZbxf5dxP9Zvv9Suf9Uvv9Uv/9cvv1uwft8u/CAqNaOobygpa6mqKyprK6rr6+tsrCutLCwtbGzuLS3u7e8vrvAwL/DwcHFwcLFwcLJxcjJxcjJxcjIxsnIx8rFxsnCxMe+wcO9wMC9wMC7v725vbq3urW0t7Gys7CwsLCurq6rq6ulpaWgoKCbm5uZmZmOjo6Xl5eSkpJ/f39qampmZmZ1dXWAgICCgoKJiYmXl5ebm5uYmJifn5+rq6urq6uurq63t7e3t7fExMT09PT+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+//////////////7///7///7///7////////////+///+///+///+///+/v///v///v///v////7///7////+///8/f34/P34/v72///z/f/o9frL6fmg1/R7xO5bsOBJpdtJp+NUsPRcuv5fxf9VxP9NwP5XwPdvwu6Fut6RqcSeprSqrK+vr7CxsbGys7O0tbW3uLe5urm7vLu9vr3AwcDDw8PFxcXGxcXGxcXKycnJyMnIx8jHx8fGxsfExMXCw8O/wMC9vr68vLy5urm1trWxsbGtrq2qqqmmpqajo6Oenp6YmJiTk5OQkJCPj4+QkJCPj4+AgIBra2thYWFpaWl1dXV8fHyFhYWMjIyPj4+VlZWgoKCmpqaoqKipqamtra2wsLC0tLTa2tr8/Pz4+Pj//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v///v/////////////////////+/v7+/v79/v78/v76/f38/v75/v/t+//Z8//F7f6r4PqLyvFvtOVepeBTn+BWre1RtvRWxP1lzftzx+t+ttSRrMOjrrmwsrS1tbW3t7e4uLi5ubm8vLy+vr7AwMDCwsLFxcXHx8fIyMjIyMjIyMjLy8vJycnHx8fFxcXDw8PAwMC9vb26urq4uLi1tbWysrKvr6+rq6uoqKikpKSfn5+dnZ2ZmZmTk5OOjo6JiYmGhoaCgoJwcHBgYGBdXV1kZGRtbW11dXWAgICIiIiMjIyNjY2NjY2Tk5Obm5ugoKCoqKisrKyvr6+4uLjk5OT8/Pz9/f3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v/////////////////////9/f3+/v7+///9///7/f34+/r3/Pz3+v/0+P/t+f/h+f/T9v685/2ezPWAuOlbn9VQo9hVteJnxOt3w+SCuNOTscWos722uLm6urq8vLy9vb2/v7/BwcHDw8PExMTHx8fIyMjKysrLy8vLy8vKysrIyMjGxsbDw8PAwMC9vb26urq2tra0tLSxsbGsrKyoqKimpqaioqKenp6ZmZmSkpKNjY2IiIiDg4N/f398fHx5eXl4eHhkZGRaWlpiYmJtbW1ycnJ0dHRjY2NYWFhTU1NTU1NWVlZoaGiKioqenp6kpKSmpqapqanDw8Px8fH+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f38/Pz9/v79///9///9///9/////f7//P78+f31+P3x+//s/f/k+//W9f+z4f+Mxutpr9Jiqcd1scqNt82ftsivuMG7vL6/v7/AwMDBwcHCwsLFxcXHx8fJycnKysrLy8vLy8vLy8vKysrJycnGxsbCwsK/v7+8vLy4uLi1tbWxsbGvr6+rq6ukpKSdnZ2YmJiTk5OMjIyKioqMjIyEhIR7e3t0dHRwcHBsbGxqampXV1dRUVFQUFBQUFBCQkIsLCwdHR0UFBQrKytISEhNTU1OTk5WVlZYWFhpaWmOjo6hoaGxsbHg4OD7+/v+/v7z8/P////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/f37/f39/v79/v79/v7//fv/+vj//fn///v+//z5/v30/f7t/f/g+//Q9/+45vmj0eWavtOgtsmwucm6vsW/wMHCwsLExMTExMTGxsbIyMjKysrMzMzMzMzMzMzLy8vJycnIyMjGxsbExMTBwcG8vLy4uLi0tLSvr6+qqqqmpqagoKCZmZmUlJSQkJCLi4uEhIR6enpwcHBvb29tbW1paWlgYGBTU1NISEgzMzMqKiofHx8aGhocHBwlJSUxMTE9PT1FRUVPT09WVlZTU1NNTU1OTk5JSUlCQkJjY2OhoaHm5ub19fX5+fn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f39/f39/f39/f3+/Pv+/vn///j///f9/fT6/PL5/Pj4//3t+v/q/P7o/f/k9vzM1uW6u8nCvMfGwsjExMXGxsbHx8fIyMjJycnLy8vNzc3Pz8/Pz8/Ozs7MzMzJycnGxsbExMTBwcG9vb24uLiysrKsrKympqahoaGbm5uUlJSMjIyGhoaBgYF5eXlvb29mZmZeXl5RUVFBQUE0NDQpKSkeHh4XFxchISEsLCw2NjY+Pj5ERERHR0dEREQ0NDQkJCQnJydGRkZVVVVOTk5PT09RUVE5OTkhISE8PDyIiIjLy8vr6+v6+vr////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////////////////9//77//z8//r+//n///f///b///f9//n5//3z+vz3+//3+Pzi3uXLwcjNwcbNxcjIx8fJycnKysrLy8vMzMzNzc3Ozs7Q0NDQ0NDNzc3Ly8vKysrFxcXDw8O9vb25ubm0tLSurq6mpqaenp6WlpaOjo6Dg4N4eHhwcHBoaGhfX19RUVE8PDwnJyckJCQhISEmJiY0NDQ/Pz9CQkJDQ0NAQEA2NjYvLy8uLi4sLCwlJSUeHh4XFxcPDw8dHR0zMzNLS0tWVlZSUlJYWFhSUlI3NzchISFBQUGHh4fPz8/v7+/8/Pz+/v7+/v7////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///6///2///3///7//3+//r///j+//f8//j7//r6/vv//v79+fro3+DNw8LPxsXNyMfKyMjJycnLy8vNzc3Pz8/Pz8/Ozs7Pz8/Ozs7Ly8vJycnJycnDw8PCwsK9vb23t7eurq6kpKSWlpaGhoZ4eHhubm5jY2NcXFxZWVlWVlZXV1dLS0s4ODgzMzM9PT0/Pz89PT0+Pj42NjYnJycgICAcHBwXFxcXFxcdHR0jIyMmJiYlJSUsLCwjIyMZGRkaGho8PDxZWVlSUlJSUlJSUlJVVVVOTk4zMzM0NDRkZGSamprJycnu7u78/Pz9/f38/Pz+/v7+/v7+/v7////+/v7+/v7+/v79/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///+///+///+///+///+///////////////////////////////////7/v/2/f/5/f/9/f////3///r9//j6//j5//r6//r///79+/rn4t/Ix8HHysLKy8fKy8rKysrLy8vOzs7Q0NDQ0NDPz8/Ozs7Ly8vMzMzMzMzFxcXDw8O0tLSmpqaYmJiFhYVzc3NnZ2dfX19aWlpYWFhVVVVWVlZTU1NKSkpJSUlEREQ8PDw4ODgzMzMrKyskJCQiIiIfHx8bGxsgICAcHBweHh4eHh4WFhYUFBQeHh4cHBwnJycvLy8sLCwiIiI1NTVUVFRUVFRSUlJSUlJPT09WVlZXV1dPT09OTk5OTk5qamqUlJTLy8vy8vL8/Pz+/v79/f37+/v8/Pz+/v7+/v78/Pz8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///9///9///9///+///////////////////////////////////9/f/6+//9+v//+////f////38//v2//r1//v4//v///79/Prl5eDBy8K/zsLFzcjKy8vKysrKysrMzMzOzs7Ozs7MzMzMzMzKysrGxsbGxsbFxcXAwMCEhIRoaGhhYWFZWVlVVVVUVFRUVFRTU1NSUlJRUVFSUlJLS0s3NzcuLi4qKionJycnJycjIyMiIiIjIyMhISEhISEjIyMjIyMeHh4ZGRkZGRkdHR0jIyMmJiYhISEfHx8fHx8lJSUoKCg3NzdPT09SUlJPT09SUlJRUVFSUlJSUlJQUFBUVFRQUFBRUVFUVFRoaGiTk5PJycny8vL8/Pz8/Pz9/f3////+/v78/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///8///9///9///9///+/////////////////////////////////v/+/f/9+///+v//+////f///v76//z0//3z//72/v7//v/9+/zn5uTBzcS8z8TDzsjIysrIyMjIyMjIyMjJycnIyMjFxcXExMTDw8O6urq6urq9vb20tLRlZWVUVFRSUlJRUVFSUlJUVFRSUlJQUFBLS0tJSUlMTExJSUk7Ozs1NTU0NDQwMDAsLCwmJiYmJiYnJycjIyMiIiImJiYlJSUfHx8pKSlISEhnZ2dwcHBmZmZWVlY/Pz8rKysnJycrKyszMzNGRkZVVVVTU1NPT09SUlJSUlJMTExNTU1WVlZSUlJXV1dRUVFOTk5OTk5dXV2JiYnR0dH19fX+/v74+Pj4+Pj////9/f38/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+///9///7///9///9///9///+/////////////////////////////////v///f/+/P//+///+////f////74//7y///x///2/P//+///+v7t5+rHzcm/z8jDzcnIycnHx8fGxsbExMTCwsK/v7+9vb28vLy5ubm1tbWzs7OsrKynp6d8fHxWVlZSUlJQUFBPT09OTk5LS0tGRkZKSkpISEhJSUlLS0tERERBQUFAQEA4ODguLi4qKiotLS0vLy8rKysoKCgqKiogICA4ODhpaWmYmJinp6ehoaGenp6Li4tzc3NdXV1EREQwMDAnJyc5OTlUVFRUVFRSUlJVVVVTU1NSUlJUVFRQUFBRUVFKSkpSUlJbW1tRUVFBQUE2NjZGRkaGhoba2tr9/f38/Pz8/Pz8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///9///7///7///8///9///+/////////////////////////v///v///v/+///7///9/v///v///v3+//z2//7w///y///5+///+f//9/7y5u3TzM7IzsvHzMrIycnGxsbExMTBwcG8vLy2trazs7OysrKtra2qqqqmpqabm5uWlpaQkJB9fX1qampTU1NDQ0NAQEBFRUVKSkpISEg/Pz8+Pj5ERERCQkJCQkJDQ0NCQkJCQkI5OTkxMTEtLS0tLS0wMDA0NDQ6OjqIiIi1tbWxsbGysrK3t7empqabm5uPj4+Dg4NoaGhMTEwxMTEvLy9JSUlQUFBVVVVZWVlQUFBQUFBWVlZOTk5PT09dXV1TU1NNTU1TU1NSUlJTU1NFRUUyMjJBQUGMjIzY2Nj7+/v9/f38/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///7///9///9///9///+/////////////////////////////////v/+///6///8//////3///z8//z2//7z///2///9+v//+v//+P/z5u/YzNHOzc3Ky8vJycnHx8fFxcXAwMC5ubmysrKrq6uioqKfn5+WlpaPj4+NjY2BgYF8fHxxcXFpaWldXV1VVVRNTU1GRkZBQUFGRkZBQUE/Pz9CQkI+Pj49PT0/Pz89PT0+Pj5FRUVISEhISEhCQ0I3NzczMzOXl5ewsLDDw8PHx8fDw8O9vb21tbSurKyenJuTkZCGhIN8enlVU1IwLy9DQ0NVVVVPT09VVVVTU1NRUVFWVVdQUFBVVVVRUVFQUFBVVVVWVlZSUlJSUlJWVlZaWlpFRUUoKChERESXl5fg4OD9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9///////////////////////////////////////////////////////9///+//////////7+//78///7///7/v///v///v///P/y7/HTz9DMzMzMzMzJycnHx8fFxcXBwcG7u7u1tbWwsLCpqamioqKYmJiOjo6EhIR7e3t1dXVramllY2JeXFtXVVRQTk1JR0ZCQD9BPz4/PTw8Ojk8Ojk+PDtAPj0/Pjw9Pjw7PTszNjQ1ODYzNjQnKig6OzmVlpS8vbvFxcPNy8rOzMvMysnGxMO9u7q1sa6xq6agm5aempWVkI14c3A+Ozo4NjZVU1NYV1hNTE5RUlNSVFVXWFxQUlNTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZSUlJYWFhaWlpAQEA1NTVbW1uwsLD39/f+/v76+vr+/v7+/v76+vr9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7y8vLS0tLMzMzMzMzJycnHx8fFxcXCwsK9vb23t7eysrKsrKynp6egoKCZmZmTk5OMjIyIiIiDgYB9e3p1c3Jta2pmZGNeXFtXVVRPTUxIRkVCQD89Ozo4NjU0MjEtLCooKScmKCYiJSMdIB4fIiAvMjCIiYe4ubfCw8HKysjQzs3Rz87PzczIxsXBvru+ubS8tK2popyloJmVj4uMiIVGQkE1MTFIRkZUUlNUU1VWVlpPUFRRUlZTVVZTUlRTU1NTU1NTU1NTU1NTU1NTU1NRUVFSUlJSUlJTU1NWVlZWVlZQUFBycnLFxcXz8/P+/v7////4+Pj////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v719fXX19fMzMzLy8vJycnHx8fFxcXDw8O/v7+5ubm1tbWxsbGtra2pqamkpKSfn5+bm5uXl5eVk5OPjYyIhoWCgH98enl1c3JvbWxlY2JdW1pVU1JMSklBPz43NTQrKikjJCIkJiQmKScgIyEwMzF+gX+xsrDDxMLJysjQ0M7V09LU0tHRz87LycjEwb7Au7a/t7GyrKexq6agm5iSjYs8ODctKilCQEBTUVJUU1VTVFdSU1dSU1dMTk9TUlRTU1NTU1NTU1NTU1NTU1NTU1NRUVFWVlZUVFROTk5RUVFYWFhTU1NLS0toaGjJycn4+Pj+/v78/Pz+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v74+Pjd3d3MzMzLy8vJycnHx8fFxcXDw8O/v7+7u7u4uLi2traysrKurq6pqamlpaWgoKCdnZ2bmZiWlJOQjo2MiomIhoWDgYB9e3p4dnVzcXBsamlkYmFaWFdOTEtCQD82NzUrLSsnKigyNTN2eXextLK+v73JysjP0M7U1NPX1dTV09LS0M/MysnGxMHCvbi+t7G3sayyrKerpqN7d3QuKikpJiUwLi5NTExUU1ROTlBQUFNUVllSVFVTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRTU1NTU1NTU1NRUVFPT09VVVVWVlZOTk6pqanz8/P9/f3////9/f37+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////9/f37+/vj4+PMzMzMzMzKysrHx8fFxcXDw8PAwMC8vLy5ubm2trazs7Ovr6+srKyoqKilpaWhoaGgnp2bmZiVk5KRj46OjIuJh4aEgoGBf35+fHt5d3Z0cnFubGtmZGNcW1lUVVNQUlBQU1F3enitsK68v73ExsTS09HT1NLX19XY1tXU0tHRz87Ny8rHxcLEwLy/ubS8trGzrainop9VUE0fGxonIyMlIyM+PT1WVlZXVldQT1FNT1BWWFlTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRRUVFRUVFWVlZYWFhUVFRRUVFXV1dOTk58fHzj4+P5+fn9/f3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////9/f3+/v7n5+fMzMzMzMzKysrHx8fExMTCwsK/v7+7u7u4uLi1tbWxsbGurq6srKypqammpqajo6OjoaCfnZyZl5aVk5KSkI+OjIuJh4aEgoGCgH9/fXx8enl6eHd1c3JtbGtmZ2VoamiLjoyxtLK7vrzIy8nQ0c/T1NLV1tTY2dfY1tXU0tHRz87Ny8rJxsXEv72/urbBvLi7tbGQi4hEPz0nIyIkISAaGBgnJSVJSEhXVldWVldOTk9UVVZTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NVVVVVVVVSUlJSUlJVVVVUVFRRUVFPT09YWFjCwsL39/f8/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3////9/f3+/v7p6enMzMzMzMzKysrHx8fExMTBwcG+vr66urq3t7e0tLSxsbGurq6rq6unp6ekpKShoaGhn56dm5qYlpWWlJOUkpGRj46MiomKiIeIhoWFg4KDgYCBf359e3p2dXR1dnSMjoytsK68v73Iy8nQ09HT1dPY2dfY2dfa2tjZ19bU0tHRz87OzMvKx8bHw8HAu7i+uba5tLFzbmtZVVJeWllLSEdHRURYVlVjYWFUVFRTU1NSUVNVVFZTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZTU1NRUVFTU1NVVVVUVFRUVFRSUlJVVVVKSkqLi4vu7u79/f36+vr+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////+/v79/f3v7+/T09PKysrJycnHx8fExMTBwcG+vr66urq2trazs7OwsLCsrKyoqKilpaWioqKgoKCbmZiamJeYlpWUkpGRj46Qjo2Rj46Qjo2KiIeGhIOJh4aHhYSCgH+GhYOVlpSwsrC+wb/HysjP0tDU19XY2dfb3NrY2dfZ2tjZ19bV09LS0M/PzczLycjFwb/Mx8TAvLiFgX1saGZnY2KalpXSz87S0M/W1dSfnZ1dW1tTUlJXVlZRT1BTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRTU1NSUlJUVFRVVVVTU1NTU1NSUlJVVVVPT09dXV3S0tL6+vr9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v709PTX19fLy8vKysrHx8fExMTBwcG9vb25ubm1tbWysrKurq6qqqqmpqaioqKdnZ2ampqbmZiamJeWlJOTkZCQjo2OjIuNi4qPjYyOjIuMiomNi4qJh4aKiIeZl5asrau/wb/JzMrR1NLU19XY29nc3dvd3tzc3dvX2NbX1dTX1dTS0M/MysnLycjJxsPHwr+joJx6d3OGgoGHg4KgnJvo5uX//fzU0tF6eHhXVVVaWFhLSUldW1tTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRUVFRSUlJQUFCfn5/29vb9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////29vba2trNzc3MzMzIyMjExMTAwMC8vLy3t7eysrKsrKypqammpqaioqKenp6ampqWlpaSkI+PjYyNi4qPjYySkI+SkI+Qjo2MiomNi4qPjYyMiomMiombmZi0srHExcPNzszU19XZ3Nra3dvb3tze4N7d3tzd3tzZ2tjY1tXW1NPT0dDPzczNy8rQzMvCvbySjo2cmJainp2ppaShnZzOy8q7uLdqZmVva2pjX15VUVBcWFhTUVBTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NVVVVSUlJSUlJSUlJhYWHm5ub8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3+/v7////4+Pjf39/Nzc3KysrHx8fExMS/v7+7u7u2traysrKtra2oqKijo6Oenp6ampqVlZWSkpKVk5KRj46Ni4qMiomMiomMiomLiYiMiomPjYyQjo2PjYybmZi1s7LLycjS09HW2Nbb3tzc393c393d4N7e393c3dvY2dff393c2tnU0tHV09LW1NPOzMvf3NvHw8OalpW3s7Kyrq24tLOvq6qQjIthXVxpZWSMiId9eXhYVFNcWFdTUVFVU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJVVVVYWFhERESwsLD9/f37+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////6+vrk5OTPz8/JycnHx8fExMTBwcG7u7u1tbWwsLCpqamioqKZmZmSkpKNjY2JiYmHh4eGhYSHhYSHhYSGhIOGhIOKiIePjYyTkZCVk5KTkZCYlpWvrazKyMfU09LV1tTb3dvd4N7d4N7c393e4d/f4N7c3dva29nZ2tjb2djY1tXS0M/PzczS0M/z8vLCwMCZl5a0srHAvLvAvLu1sbB/e3psaGeMiIeUkI+emplva2pRTUxXVVVVU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJUVFRSUlJYWFhLS0tsbGz39/f+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v7////7+/vq6urT09PLy8vJycnFxcXAwMC3t7eurq6jo6OUlJSQkJCNjY2Li4uLi4uLi4uLi4uFg4KHhYSIhoWHhYSFg4KFg4KIhoWLiYiOjIuTkZCioJ++vLvV09Lb2tna29nf4d/f4uDe4d/d4N7e4d/f4d/c3dvf4N7T09HX1dTc2tnPzczKyMfe3Nv49/e2tLSjoaC4trXGw8LBvb25tbSTj46Hg4KUkI+jn56tqaiDf35dWlhRT09VU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NVVVVPT09RUVFVVVVISEjNzc3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f3u7u7W1tbMzMzIyMjDw8O5ubmrq6uenp6Xl5eVlZWWlpaYmJibm5uenp6fn5+fn5+koqGjoaChn56cmpmUkpGLiYiDgYCHhYSRj46gnp2zsbDHxcTW1NPe3Nvg4N/h4uDf4uDd4N7b3tzc393d3tzZ2tjZ2tjW19XY1tXV09LQzs3a2Nfy8fD7+fmqqKinpaW8urrDwcHDwcC+u7qUkZCFgYCnpKOuqqm0sK+koJ9pZmJTUVBUU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRUVFRPT09RUVFZWVlISEiFhYX5+fn////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7+/v79/f3y8vLX19fLy8vJycm9vb2vr6+kpKSampqenp6pqamrq6uvr6+ysrKzs7OysrKxsbG0s7K0srG0srGzsbCurKulo6Ocmpqdm5qnpaS2tLTDwcHKyMjRz8/c2tni4eDf4d/d393e4d/b3dva3Nrc3dvX2NbR0tDc3NrZ2NbS0dDf3t3y8fD7+/r09POlpKOenZ25ubjBwL/GxsW9vLuhn56MiomfnZyxr67Avr3DwsF+e3hNTEtUVFRTU1NRUVFTU1NSUlJTU1NUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRTU1NSUlJRUVFXV1dSUlJYWFjX19f+/v79/f3////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////9/f339/fa2trJycnIyMi2traqqqqpqamoqKizs7O0tLS5ubm9vb2/v7++vr6+vr7BwcHCwMDCwMDBv7/Avr69u7u4trazsbGwrq64trbHxcXPzc3Qzs7T0dHb2dne3d3d3tze393d3tze393c3dvX2Nba29nV1tTQ0c/b3Nrr7Or29vX7/Pr7/PrV1tSam5men529vrzAwb/Gx8XAwb+ztLKlpaOsrKq3uLbBwcDR0tCmpaRSU1FUVFRVVVVPT09UVFRSUlJSUlJUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJVVVVPT09VVVVWVlZPT0+cnJz5+fn8/Pz9/f3////////+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////+/v76+vrh4eHKysrBwcG0tLSysrK4uLi4uLjCwsLHx8fHx8fIyMjJycnJycnIyMjIyMjMysrLycnLycnLycnKyMjHxcXDwcHAvr7Fw8PRz8/Y1tbY1tbW1NTX1dXZ2Nfd3tze393X2Nba29nZ2tjU1dPa29nc3dvl5uTv8O739/bx8fDT1NKztLKTlJKGh4Wmp6W/wL7BwsDGx8XExcPBwsC+v728vbvIycfOz83Y2dfOz81jZGJQUFBWVlZRUVFTU1NVVVVTU1NSUlJTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJTU1NVVVVQUFBWVlZXV1dLS0ttbW3g4OD+/v78/Pz+/v7////8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////9/f3n5+fKysq+vr63t7e7u7vHx8fIyMjPz8/R0dHR0dHR0dHR0dHU1NTW1tbV1dXX1dXW1NTV09PV09PV09PT0dHRz8/OzMzQzs7U0tLY1tba2Njb2dnb2dnc29vc3dvZ2tjW19XY2dfe393n6Obi4+Hx8vD6+/nu7+3Awb+VlpSDhIJ2d3V7fHqNjoyrrKq+v73Gx8XLzMrIycfIycfNzszNzszW19XV1tTV1tTl5uSOj45MTExUVFRUVFRSUlJWVlZUVFRSUlJTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZSUlJRUVFVVVVUVFRTU1NRUVGwsLD7+/v8/Pz9/f3////7+/v9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////q6urKysrAwMDBwcHExMTPz8/Q0NDT09PV1dXg4ODh4eHZ2dnV1dXX19fb29vc2trb2dna2Njb2dnb2dna2NjY1tbW1NTY1tbc2trg3t7i4ODc2trV09PMy8vIycfFxsS4ubfW19Xx8vD3+Pb5+fj6+/nU1dOQkY9sbWt1dnSDhIKLjIqTlJKgoZ+trqy+v73P0M7R0tDR0tDT1NLX2NbX2NbX2NbY2dfa29nv8O7T1NJXV1dQUFBVVVVSUlJUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZQUFBTU1NTU1NOTk5cXFxPT098fHzp6en////9/f3+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////u7u7MzMzExMTLy8vLy8vT09PT09PW1tba2trc3Nzb29vc3Nzg4ODe3t7X19fd29vc2trd29ve3Nze3Nzd29vb2dne3Nzd29vY1tbT0dHLycnAvr60srKtrKusraunqKafoJ7T1NL6+vn+/v35+vi9vrx6e3lpamiDhIKQkY+VlpSbnJqio6Gtrqyys7HExcPP0M7LzMrS09HW19XZ2tjb3Nrd3tzr7Ory8/Hz9PLy8/J9fX1RUVFVVVVTU1NSUlJTU1NUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NRUVFSUlJRUVFXV1dUVFRKSkpaWlpSUlJdXV3FxcX9/f3+/v79/f3+/v78/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v79/f3+/v7z8/PQ0NDHx8fR0dHR0dHX19fV1dXR0dHGxsa1tbWrq6u5ubnU1NTg4ODZ2dne3Nve3Nve3Nve3Nvc2tnZ19bV09LKyMfAvr24trWxr66urKuurKyvrayxsK+ur62nqKavsK7h4uD9/fzt7uyys7FcXVt1dnSDhIKPkI6foJ6lpqSqq6mwsLC7u7u+vr7Pz8/S0tLP0M/Z2dnb29vh4eHn5+fz8/P8/Pz+/v76+vr29va4uLhYWFhTU1NUVFRSUlJVVVVTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJTU1NTU1NVVVVUVFRPT09VVVVTU1NUVFSPj4/s7Oz+/v78/Pz+/v77+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v78/Pz9/f34+PjU1NTHx8fT09PV1dXZ2dnY2NjR0dHGxsavr6+QkJB+fn6KioqlpaW3t7fDwcDCwL/Bv76/vby6uLe0srGurKuurKuvrayvraywrq2xr66ysK+ysK+vrq2wsa+ys7Gur63i4+He392TlJJSU1F2d3V/gH6QkY+cnZukpaOwsa+5urjAwcDLy8vNzc3d3d3k5OTs7Oz09PTy8vL7+/v9/f3////6+vr5+fn////7+/vm5uZjY2NRUVFUVFRTU1NXV1dTU1NSUlJTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZVVVVOTk5RUVFYWFhWVlZWVlZTU1NhYWHT09P8/Pz7+/v9/f37+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////5+fnX19fOzs7S0tLa2trV1dXX19fV1dXLy8u8vLyxsbGVlZV8fHyCgoKSkpKfnZykoqGpp6atq6qvrayxr66zsbC0srG0srGzsbCzsbCzsbCzsbC0srG0s7Kys7GvsK64ube5urhtbmxaW1lvcG57fHqLjIqbnJqlpqSur626u7nFxsTLy8ve3t719fX8/Pz8/Pz////////+/v7////////////////////////////y8vKYmJhNTU1RUVFSUlJTU1NXV1dTU1NTU1NTU1NRUVFTU1NXV1dUVFRSUlJTU1NTU1NTU1NTU1NTU1NTU1NTU1NUVFRXV1egoKD39/f9/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////6+vrZ2dnPz8/T09Pa2trV1dXX19fV1dXPz8/FxcW7u7uoqKiRkZGOjo6ZmZmlo6Kpp6WurKuysK+0s7G2tLK3trS3tbO2tLK2tLK1s7G1s7G1s7G1tLK0s7GztLK0tbOlpqR3eHZdXlxub215eniKi4mSk5GfoJ6srau3uLbDxMLP0M7Y2Njp6er6+vr+/v79/P3//////v/+/v/////////////////////////////7+/vIyMhhYWFPT09WVlZVVVVNTU1TU1NXV1dWVlZTU1NTU1NVVVVUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSUlJSUlJ1dXXY2Nj+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vb29vR0dHU1NTb29vV1dXY2NjU1NTOzs7JycnAwMC2trakpKSVlZWbm5qpp6atrKizsq62tbG4t7O5uLS6ubW5uLS5uLS4t7O3trK3trK3trK3trK3t7S1trSztLKen51iY2FoaWd9fnx7fHqUlZOZmpioqae4ubfCw8HKy8nW19Xn5+f29ff+/f7//v/9/P7+/f///v///v///v///v///v///v///v///v///v/////i4uJ7e3tQUFBVVVVRUVFYWFhUVFRUVFRWVlZVVVVUVFRUVFRVVVVUVFRTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NWVlZZWVmysrL5+fn9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3d3d3T09PU1NTb29vV1dXY2NjU1NTPz8/Nzc3Dw8O/v7+xsbGdnZ2cnJuqqKewr6u1tLC5uLS6ubW6ubW6ubW7ura7ura6ubW5uLS5uLS4t7O5uLS5uba2t7W2t7WgoZ9ub21ub214eXeJioiYmZegoZ+xsrDAwb/IycfQ0c/c3dvx8fL9/P7//v///v/9/P7+/f///v///v///v///v///v///v///v///v///v/9/f319fWtra1YWFhRUVFPT09TU1NTU1NUVFRXV1dXV1dVVVVUVFRTU1NUVFRUVFRUVFRUVFRUVFRUVFRUVFRTU1NTU1NYWFhRUVGKiorl5eX9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3e3t7T09PU1NTa2trV1dXY2NjW1tbT09PQ0NDHx8fExMS6urqmpqadnpysqqmxsKy4t7O8u7e9vLi9vLi9vLi9vLi9vLi8u7e7ura6ubW6ubW6ubW5uLW1trS7vLqXmJZ2d3VwcW9zdHKRkpCen52pqqi4ubfDxMLMzcva29nr7Or5+fr//v///v///v/+/f/+/f///v///v///v///v///v///v///v///v///v/8/Pz9/f3T09Nvb29aWlpbW1tWVlZTU1NSUlJSUlJVVVVVVVVUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRTU1NQUFBoaGjFxcX8/Pz8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3d3d3S0tLT09Pa2trV1dXY2NjW1tbT09PPz8/KysrExMS8vLyurq6dnpytq6qzsq66ubW+vbnAv7vAv7u/vrq/vrq+vbm9vLi8u7e7ura6ubW6ubW5ubW4ube5uriMjYt7fHp/gH5/gH6HiIagoZ+vsK6+v73IycfX2Nbq6+n5+vj9/f7+/f/+/f///v///v///v///v///v///v///v///v///v///v///v///v/+/v79/f3w8PC+vr6ZmZl9fX1oaGhiYmJZWVlSUlJTU1NUVFRUVFRWVlZVVVVUVFRUVFRUVFRUVFRUVFRUVFRVVVVXV1dRUVFTU1NXV1ecnJzv7+/9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3c3NzR0dHS0tLZ2dnU1NTY2NjX19fR0dHPz8/Ozs7GxsbAwMC2traenp6rqqiysa25uLS+vbnAv7vAv7vAv7u/vrq/vrq9vLi8u7e7ura6ubW6ubW7u7e8vbu2t7WGh4VzdHJ6e3mJioiNjoyZmpivsK7Cw8HQ0c/l5uT4+Pf9/vz+/v7+/f/+/f///v///v///v/+/f///v///v///v///v///v///v///v///v/+/v79/f36+vr09PTn5+fV1dW4uLiRkZF5eXllZWVbW1tXV1dUVFRSUlJUVFRVVVVVVVVVVVVVVVVVVVVVVVVVVVVTU1NSUlJXV1dOTk5ubm7W1tb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pze3t7R0dHV1dXX19fY2NjX19fW1tbU1NTR0dHOzs7IyMjBwcG6urqhoaGnpaSxr626uLa9vLq/vbzAv73Bv73Avr3Avry/vry+vLq8uri7ubi9u7m8u7nAv72zsrCAf351dHN4d3aJh4aQjo2fnp20srHIx8bj4uD4+Pf9/Pv+/fz////////////////////////////////////////////////////////////////////+/v7+/v7+/v79/f329vbq6urT09OpqamDg4NsbGxgYGBaWlpXV1dTU1NRUVFUVFRWVlZTU1NSUlJTU1NSUlJVVVVSUlJQUFBWVlasrKz19fX9/f37+/v+/v76+vr////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTR0dHNzc3JycnCwsK7u7ujo6OmpKOxr667ubi+vLu/vbzBv77Bv77Avr3Avr2/vby+vLu8urm7ubi9u7q+vLvAvr2tq6qBf35+fHuCgH+Ni4qTkZCgnp2zsbDNy8rs6un+/fz//v3//v3////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz19fXm5ubJycmgoKB6enpmZmZeXl5WVlZTU1NTU1NSUlJTU1NVVVVTU1NaWlpVVVVUVFRSUlJ/f3/g4OD9/f37+/v////8/Pz+/v79/f3+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTS0tLOzs7KysrExMS9vb2lpaWlpKOwrq26uLe9u7q/vbzAvr3Bv77Avr3Avr2/vby9u7q8urm7ubi9u7rAvr2+vLuhn56DgYCIhoWSkI+Vk5KcmpmjoaCzsbDX1dT29PP//v3///7///7////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v77+/vw8PDf39+8vLyRkZF7e3tpaWleXl5XV1dTU1NSUlJSUlJXV1dTU1NSUlJQUFBYWFjExMT7+/v4+Pj8/Pz+/v7+/v78/Pz////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTS0tLPz8/Ly8vFxcW/v7+np6eioJ+tq6q3tbS6uLe8urm+vLu/vby/vby/vby+vLu9u7q7ubi7ubi+vLvBv766uLeUkpGGhIOPjYydm5qdm5qmpKOtq6q8urnl4+L+/fz///7///7+/fz//v7////////////////////////////////////////////////////////////////////////////////////////9/f35+fn5+fn+/v7////+/v7+/v709PTS0tKqqqqLi4t1dXViYmJZWVlZWVlVVVVTU1NVVVVRUVFLS0ubm5vy8vL8/Pz8/Pz////+/v78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTS0tLPz8/Ly8vFxcXAwMCoqKifnZyrqai1s7K5t7a7ubi+vLu/vby+vLu+vLu+vLu8urm7ubi7ubi+vLvBv76ysK+MiomJh4aTkZChn56koqGurKuzsbDJx8bv7u3///7///7///7+/fz//v7////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////+/v76+vr6+vr+/v7////+/v7x8fHR0dGkpKSEhIRubm5eXl5WVlZYWFhTU1NYWFh4eHjY2Nj9/f3////////+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTS0tLOzs7Ly8vExMTAwMCoqKibmZinpaSysK+3tbS6uLe+vLu/vby+vLu+vLu9u7q8urm7ubi7ubi+vLu9u7qkoqGHhYSQjo2Zl5ajoaCrqai0srG4trXZ19b39vX///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////+/v79/f38/Pz+/v7+/v7+/v79/f3+/v7////+/v7+/v79/f3z8/Pl5eW9vb2goKCCgoJubm5aWlpbW1tXV1efn5/29vb9/f39/f3////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vf39/R0dHW1tbW1tba2trX19fV1dXU1NTS0tLOzs7KysrExMS/v7+np6eVk5Kgnp2sqqmxr662tLO6uLe8urm9u7q9u7q9u7q8urm7ubi7ubi+vLu4trWWlJOGhIOYlpWfnZylo6KysK+4trW/vbzo5uX9/Pv//v3///7//v3///7////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////////9/f37+/v8/Pz////////9/f38/Pz////////8/Pz7+/vs7OzU1NS5ubmYmJh8fHxgYGB2dnbu7u78/Pz6+vr////+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pze3t7S0tLV1dXX19fY2NjX19fV1dXU1NTR0dHOzs7KysrFxcW9vb2kpKSNi4qbmZinpaStq6qzsbC3tbS5t7a6uLe7ubi8urm7ubi7ubi7ubi8urmxr66OjIuNi4qdm5qkoqGsqqm2tLO8urnIxsX18/L+/v3+/Pv///7+/fz+/v3////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////////9/f39/f3////////9/f38/Pz9/f37+/v29vbm5ubLy8uysrKurq719fX+/v79/f3////+/v79/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pzd3d3T09PT09PZ2dnV1dXX19fU1NTT09PR0dHPz8/JycnGxsa7u7ujo6OJh4eXlZSjoaCqqKewrq21s7K2tLO4trW5t7a5t7a4trW5t7a6uLe6uLerqaiMiomWlJOfnZympKOzsbC3tbTAvr3V09L8+/r+/fz9/Pv///7+/fz+/v3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz7+/v+/v7////6+vry8vL5+fn8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/vc3NzT09PT09PZ2dnV1dXX19fV1dXT09PQ0NDOzs7JycnFxcW6urqlpaWMiomWlJOhn56npaSsqqmxr66zsbC2tLO3tbS3tbS3tbS3tbS4trW4trWqqKeOjIuZl5ajoaCqqKe1s7K4trXEwsHo5uX//v3+/v3+/Pv///7+/fz+/v3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v78/Pz8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////5+fnb29vT09PT09PZ2dnV1dXX19fV1dXT09PQ0NDOzs7JycnExMS6urqnp6eUkpGamJeioJ+npaSsqqmwrq2zsbC1s7K1s7K1s7K1s7K1s7K2tLO3tbSqqKeRj46bmZinpaSurKu3tbS7ubjLycj59/b///7//v3//v3///7+/fz+/v3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////9/f38/Pz+/v7////+/v7////////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////4+PjZ2dnS0tLU1NTZ2dnU1NTY2NjW1tbU1NTQ0NDOzs7IyMjCwsK6urqqqqqenJugnp2mpKOqqKetq6qwrq2zsbC1s7K0srG0srG0srG0srG1s7K2tLOrqaiUkpGcmpmpp6avray4trXBv77X1dT+/v3//v3//v3///7///7+/fz//v3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v7+/v7+/v7////////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////29vbX19fT09PU1NTZ2dnU1NTY2NjX19fU1NTPz8/Nzc3Hx8fBwcG5ubmtra2lo6Klo6Kpp6atq6qvraywrq2ysK+0srGzsbCzsbCzsbCzsbC0srG0srGtq6qbmZifnZyrqaixr666uLfKyMfp5+b///79+/r+/fz///7///7//v3///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////9/f3////////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////19fXW1tbT09PV1dXZ2dnU1NTY2NjX19fU1NTPz8/Nzc3Hx8fAwMC5ubmvr6+sqqmpp6asqqmxr66xr66wrq2xr66xr66xr66xr66xr66xr66ysK+ysK+vrayioJ+ioJ+sqqmysK+9u7rU0tH7+vn///7+/Pv//v3///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////19fXW1tbS0tLW1tbY2NjU1NTZ2dnY2NjU1NTPz8/MzMzHx8fAwMC5ubmxsbGwrq2urKuvrayzsbC0srGysK+ysK+xr66vrayvrayvrayvrayvrayxr66vraympaOkoqGtq6q0srHAvr3e3Nv9/fz///7//v3///7//v3//v3///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v7+/v7+/v7+/v7////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////39/fc3NzS0tLc3NzV1dXW1tbc3NzW1tbV1dXR0dHMzMzHx8fCwsK8vLy3t7e0srGzsbCxr66ysK+ysK+ysK+wrq2xr66vrayurKuurKutq6qrqaiurKuwr66pqqilpqSrrKq3uLbExcPz9PL///7///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////5+fng4ODT09Pb29vX19fY2Njb29vU1NTW1tbS0tLNzc3IyMjDw8O+vr65ubm4trW2tLO0srG0srGzsbCysK+wrq2vraytq6qrqaisqqmrqaiqqKetq6qwr66ur62qq6mur623uLbV1tT29/X///7///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pzn5+fX19fZ2dnZ2dnb29va2trU1NTW1tbT09POzs7KysrFxcXAwMC8vLy8urm6uLe3tbS1s7K0srGxr66vraysqqmpp6app6aqqKepp6aopqWqqKeurayvsK6srauvsK65urjn6Ob6+/n+/v3///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////w8PDe3t7Z2dnZ2dnd3d3b29vW1tbX19fT09PPz8/KysrGxsbBwcG8vLy+vLu7ubi4trW1s7KzsbCwrq2tq6qqqKenpaSlo6KmpKOlo6KkoqGopqWtrKqur62wsa+ys7HFxsT09PP+//3+//3///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////4+Pjo6Ojd3d3a2trc3Nzc3NzZ2dnW1tbT09POzs7KysrFxcXAwMC8vLy8urm5t7a2tLOzsbCxr66urKurqaiopqWkoqGhn56hn56fnZyfnZyjoaCpqKerrKqxsrC3uLbW19X5+fj///79/vz///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f309PTk5OTd3d3b29vb29vb29vW1tbS0tLNzc3IyMjDw8O+vr65ubm3tbS1s7KysK+wrq2urKurqaipp6alo6Kgnp2cmpmamJeXlZSXlZSenJulo6Ksq6qysbDBwL/n5uX7+vn+/Pv9/Pv///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz+/v79/f3t7e3h4eHb29va2trb29vV1dXR0dHMzMzHx8fCwsK8vLy3t7e0srGxr66vraytq6qsqqmpp6anpaSjoaCdm5qXlZSUkpGQjo2Rj46YlpWkoqG1s7K5t7bRz8719PP+/v39+/r//v3///7///7///7///7///7///7///7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v7////7+/vs7Oze3t7Y2NjX19fV1dXQ0NDJycnCwsK8vLy5ubm3t7evrayvraytq6qrqaisqqmrqailo6Kgnp2XlZSLiYiAfn14dnV4dnWCgH+Rj46fnZykoqG5t7bS0M/i4eDy8O/+/v3//v3///7///7//v3///7+/fz+/v3+/v79/f39/f3////////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz+/v78/Pzw8PDf39/T09POzs7Ozs7KysrDw8O7u7u1tbWzs7Owrq2urKurqaipp6arqaiqqKejoaCUkpGIhoV9e3p2dHNzcXBzcXB5d3Z8enl0cnFvbWxzcXB7eXiDgYCQjo2hn57Y1tXs6+r///77+vn08/L7+vn///7////////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f36+vr9/f3////9/f3w8PDh4eHS0tLKysrDw8PAwMC8vLy2travr6+vrayurKutq6qtq6qrqaikoqGYlpWIhoV/fXx6eHd7eXh/fXx/fXx/fXyCgH+Hg4KEgH+GgoGHg4KEgH+Df36Hg4KFgYCUkI/JxcT28/L+/v3+/v38+vn+/f3+/v7////////////////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////+/v78/Pz9/f35+fnn5+fU1NTDw8O8vLy7u7u4uLiysrKvrayysK+zsbCvraylo6KXlZSKiIeDgYCCgH+DgYCHhYSLiYiLiYiLiYiKiIeKhoWMiIeRjYyUkI+QjIuNiYiNiYiKhoWNiYiJhYSyrq3n5OP08vH7+fj//v79/f38/Pz+/v7////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////9/f38/Pz////+/v76+vrs7OzZ2dnHx8e7u7u2tra2tra3tbS0srGurKukoqGWlJOLiYiGhIOGhIOIhoWMiomNi4qOjIuPjYySkI+UkZCVkZCTj46Tj46UkI+UkI+VkZCYlJOfm5qRjYyUkI+Oiomfm5rY1dT5+Pf///7////+/v7+/v7+/v7////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////////+/v77+/v////+/v729vbg4ODIyMi7u7u4uLi7ubiurKugnp2UkpGMiomKiIeOjIuPjYySkI+Vk5KTkZCSkI+Vk5KXlZSXlJOXk5KYlJOalpWbl5aalpWYlJOXk5KXk5Kbl5aZlZSZlZSYlJOno6LY1tX49/b+/f3////////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7+/v78/Pz+/v7+/v7+/v739/fl5eXMzMy6urq0srGhn56Rj46MiomNi4qQjo2Vk5KXlZSZl5aZl5aYlpWZl5adm5qbmZiZl5acmJedmZiempmfm5qfm5qempmdmZignJucmJecmJedmZiWkpGXk5KppqXd3Nv29vb+/v7////9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////////+/v79/f39/f3+/v75+fnh4eG/v7+enZ2Uk5OOjY2Pjo6Tk5KXlpaZmJiamZmbmpqbmpqbmpmdnJuenZ2dnJucmpqfnJuem5qcmZicmZidmpmfnJugnZycmZiem5qfnJucmZibmJedm5qZl5avr67n5+f9/f3////8/Pz////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/v+/v75+fn8/Pz29va5ubmRkZGSkpKTk5OWlpaZmZmcnJydnZ2enp6enp6enp6enp6enp6fn5+fn5+fnp6fnZyfnZyfnZyfnZygnp2gnp2gnp2fnZyfnZyfnZyenJuenJudm5qdm5qamZm9vb339/f+/v77+/v9/f3+/v78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/v9/f38/Pz+/v7l5eWgoKCWlpaXl5eampqdnZ2fn5+goKChoaGioqKioqKioqKioqKioqKioqKioqKioaGioJ+ioJ+ioJ+ioJ+ioJ+ioJ+ioJ+hn56hn56hn56gnp2gnp2fnZyfnZygn5+VlZXQ0ND8/Pz5+fn+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz9/f38/Pzd3d2tra2UlJSbm5udnZ2goKCjo6OlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpaWlpKSkoqGkoqGkoqGkoqGkoqGkoqGkoqGjoaCjoaCioJ+ioJ+hn56hn56hn56bm5udnZ2goKDm5ub9/f39/f35+fn////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v76+vr6+vr+/v7Y2Nijo6OZmZmhoaGhoaGjo6OlpaWnp6eoqKioqKinp6enp6eoqKioqKinp6enp6enp6empqampaWmpKOlo6Klo6Klo6KkoqGkoqGkoqGkoqGkoqGjoaCjoaCioJ+hn56hn56cm5unp6eYmJi0tLT////8/Pz9/f3+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v78/Pz7+/vZ2dmoqKibm5umpqalpaWmpqanp6eoqKiqqqqqqqqpqampqamqqqqqqqqqqqqpqampqamoqKioqKinp6aopqWnpaSnpaSmpKOmpKOlo6Klo6Klo6Klo6KkoqGkoqGjoaCioJ+ioJ+ioqKenp6hoaGdnZ3U1NT+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pzd3d2mpqadnZ2tra2mpqaioqKrq6urq6urq6urq6urq6urq6urq6usrKysrKysrKyrq6uqqqqqqqqpqampqaiqqKeqqKeqqKepp6aopqWnpaSnpaSnpaSnpaSnpaSmpKOlo6Klo6Klo6Kko6OgoKChoaGhoaGnp6fs7Oz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////////9/f38/Pzi4uKysrKhoaGnp6enp6enp6eqqqqtra2tra2tra2tra2tra2tra2tra2urq6urq6tra2tra2srKyrq6urq6urqqqsqqmsqqmrqaiqqKeqqKepp6app6app6app6aopqWopqWnpaSnpaSmpKOioaGpqamlpaWbm5ulpaXGxsb6+vr+/v7+/v7////////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/v+/v7+/v7////+/v739/fr6+u+vr6oqKinp6evr6+rq6uoqKiysrKvr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+urq6tra2tra2srKysrKusqqmsqqmsqqmrqairqaiqqKeqqKepp6app6aopqWopqWopqWopqWopqWioqKqqqqlpaWkpKSenp6srKzf39/6+vr7+/v////+/v7////////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz+/v7////+/v7+/v74+PjNzc2rq6upqamsrKyvr6+vr6+vr6+wsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCxsbGxsbGxsbGwsLCwsLCvr6+urq6ura2urKuurKuurKutq6qtq6qsqqmsqqmrqairqairqaiqqKeqqKeqqKeqqKepqKikpKSpqamnp6ejo6Onp6fFxcXx8fH9/f38/Pz+/v7////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////8/Pz7+/vn5+ewsLCnp6evr6+wsLCurq6xsbG0tLSxsbGysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKxsbGwsLCwsLCwr6+wrq2wrq2wrq2vrayvrayurKuurKutq6qtq6qsqqmsqqmsqqmsqqmrqaisrKujo6OqqqqpqamoqKijo6Otra3c3Nz7+/v8/Pz9/f3////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////8/Pz+/v77+/v39/fGxsaqqqqwsLCzs7OysrKwsLCysrK1tbW0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSzs7Ozs7OysrKxsbGxsbGxsbCysK+ysK+xr66xr66wrq2wrq2wrq2vrayurKuurKuurKuurKutq6qtq6qqqamqqqqoqKiqqqqrq6ukpKSnp6fExMTx8fH+/v77+/v+/v7////5+fn////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/v+/v78/Pzs7Oyvr6+0tLS0tLSysrK0tLS4uLi1tbWzs7O0tLS2tra2tra2tra2tra2tra2tra2tra1tbW1tbW0tLS0tLSzs7OysrKysrKysrGzsbCzsbCysK+ysK+xr66xr66xr66wrq2wrq2vrayvrayvrayurKuurKuop6eysrKnp6epqamtra2pqamsrKywsLDc3Nz9/f35+fn9/f3////29vb////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3////5+fnS0tKurq64uLi0tLSysrK3t7e7u7u4uLi1tbW1tbW3t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e2tra2tra1tbW0tLS0tLS0tLS0s7O1s7K1s7K0srG0srGzsbCzsbCysK+xr66xr66xr66xr66xr66wrq2wrq2rq6qzs7OsrKyrq6uvr6+tra2tra2rq6vGxsbz8/P9/f39/f3+/v78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz+/v79/f3z8/O1tbW2trazs7O3t7e4uLi4uLi3t7e4uLi5ubm6urq4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi5ubm4uLi4uLi3t7e2tra2tra2trW4trW3tbS3tbS2tLO2tLO1s7K1s7K0srG0srG0srGzsbCzsbCzsbCzsbCxsbCurq6zs7Ourq6wsLCurq6pqamurq63t7fk5OT9/f35+fn6+vr////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////7+/v+/v7////W1taxsbG3t7e3t7e5ubm5ubm6urq6urq6urq7u7u7u7u5ubm5ubm6urq6urq6urq6urq7u7u6urq5ubm5ubm4uLi4uLi3t7e3t7e3t7e3t7e3t7e3t7e2tra2tra2tra2trW0tLS0tLS0tLOzs7Ozs7Ozs7Ozs7Ozs7OysrKysrKysrKysrKxsbGwsLCxsbGvr6/Ozs739/f7+/v+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v78/PzLy8uzs7O4uLi5ubm6urq6urq6urq7u7u7u7u7u7u7u7u6urq6urq6urq6urq7u7u7u7u7u7u7u7u7u7u7u7u6urq6urq5ubm5ubm5ubm5ubm5ubm5ubm4uLi4uLi4uLi4uLi2tra2tra2tra2tra1tbW1tbW1tbW1tbW1tbW0tLS0tLS0tLS0tLS0tLSzs7OwsLDExMTw8PD6+vr+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////z8/O/v7+4uLi5ubm8vLy7u7u7u7u7u7u8vLy8vLy8vLy8vLy7u7u7u7u7u7u8vLy8vLy8vLy8vLy9vb29vb29vb28vLy8vLy8vLy8vLy8vLy8vLy8vLy7u7u7u7u7u7u7u7u6urq5ubm5ubm5ubm5ubm4uLi4uLi4uLi4uLi4uLi4uLi3t7e3t7e3t7e3t7e2trazs7O4uLjk5OT5+fn9/f3////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v79/f3n5+e2tra8vLy6urq/v7+8vLy8vLy9vb29vb29vb29vb2+vr69vb29vb29vb2+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr69vb29vb29vb29vb28vLy8vLy8vLy8vLy7u7u7u7u7u7u7u7u6urq6urq6urq6urq6urq5ubm5ubm5ubm5ubm4uLizs7PW1tb29vb+/v7////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v79/f3a2tq1tbW/v7+8vLzAwMC+vr6+vr6+vr6/v7+/v7+/v7+/v7+/v7+/v7+/v7/AwMDAwMDAwMDAwMC/v7+/v7+/v7+/v7+/v7/AwMDAwMDAwMC/v7+/v7+/v7+/v7+/v7++vr6+vr6/v7++vr6+vr6+vr6+vr69vb29vb29vb29vb29vb29vb28vLy8vLy8vLy8vLy9vb21tbXMzMz09PT////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f38/PzPz8+6urrAwMC9vb3BwcG/v7+/v7+/v7/AwMDAwMDAwMDAwMDAwMDAwMDBwcHBwcHBwcHCwsLCwsLAwMDBwcHBwcHBwcHBwcHCwsLCwsLCwsLCwsLBwcHBwcHBwcHBwcHAwMDAwMDBwcHBwcHBwcHBwcHAwMDAwMDAwMDAwMC/v7+/v7+/v7+/v7+/v7++vr6/v7/AwMC9vb3FxcXw8PD////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////5+fn8/PzIyMjBwcHAwMC+vr7BwcHAwMDAwMDAwMDBwcHBwcHBwcHBwcHBwcHCwsLCwsLCwsLCwsLDw8PDw8PCwsLCwsLDw8PDw8PExMTExMTExMTExMTExMTExMTExMTDw8PDw8PDw8PDw8PExMTExMTExMTExMTDw8PDw8PDw8PDw8PDw8PCwsLCwsLCwsLCwsLBwcHBwcHAwMDExMTBwcHt7e3////7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz19fXFxcXDw8O/v7/AwMDCwsLBwcHCwsLCwsLCwsLCwsLDw8PDw8PCwsLCwsLDw8PDw8PExMTExMTExMTExMTExMTExMTFxcXGxsbGxsbGxsbGxsbGxsbGxsbHx8fGxsbGxsbHx8fHx8fGxsbGxsbGxsbGxsbGxsbGxsbGxsbFxcXFxcXFxcXFxcXExMTExMTExMTExMTExMTGxsbCwsLo6Oj9/f39/f39/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////v7+/FxcXCwsLAwMDDw8PDw8PDw8PDw8PDw8PDw8PExMTExMTExMTDw8PDw8PExMTExMTFxcXFxcXGxsbGxsbGxsbGxsbHx8fHx8fHx8fHx8fHx8fIyMjIyMjIyMjJycnJycnJycnKysrIyMjIyMjIyMjIyMjIyMjIyMjIyMjHx8fHx8fHx8fHx8fGxsbGxsbGxsbGxsbIyMjGxsbExMTl5eX9/f3////8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7s7OzDw8PExMTCwsLExMTDw8PExMTExMTExMTExMTFxcXFxcXFxcXExMTFxcXFxcXGxsbGxsbHx8fHx8fIyMjIyMjIyMjJycnJycnJycnKysrKysrJycnJycnKysrKysrKysrKysrLy8vJycnJycnJycnJycnJycnJycnJycnKysrKysrKysrJycnJycnJycnJycnJycnJycnHx8fFxcXm5ub8/Pz////9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3r6+vDw8PGxsbFxcXFxcXExMTFxcXFxcXFxcXGxsbGxsbGxsbHx8fGxsbHx8fHx8fHx8fIyMjJycnJycnKysrLy8vLy8vLy8vLy8vMzMzMzMzMzMzMzMzMzMzMzMzNzc3Nzc3Nzc3Nzc3MzMzMzMzMzMzMzMzMzMzMzMzMzMzNzc3Nzc3Nzc3MzMzMzMzMzMzMzMzMzMzMzMzJycnIyMjn5+f7+/v////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3q6urDw8PIyMjHx8fHx8fExMTGxsbHx8fHx8fHx8fIyMjIyMjIyMjIyMjJycnJycnKysrKysrLy8vLy8vMzMzMzMzMzMzMzMzMzMzNzc3Nzc3Ozs7Pz8/Pz8/Pz8/Pz8/Q0NDQ0NDQ0NDPz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Ozs7Ozs7Ozs7Ozs7Nzc3Nzc3Ozs7MzMzLy8vr6+v8/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7t7e3Hx8fKysrIyMjJycnHx8fIyMjIyMjIyMjJycnJycnJycnJycnKysrLy8vLy8vLy8vMzMzNzc3Nzc3Nzc3Nzc3Nzc3Ozs7Ozs7Ozs7Ozs7Pz8/R0dHR0dHR0dHS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLR0dHR0dHQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDS0tLw8PD9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7x8fHKysrLy8vHx8fKysrJycnJycnJycnJycnKysrKysrKysrKysrMzMzMzMzMzMzNzc3Ozs7Ozs7Pz8/Pz8/Pz8/Q0NDQ0NDQ0NDQ0NDR0dHS0tLT09PT09PT09PT09PU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTT09PT09PT09PT09PS0tLS0tLS0tLT09PW1tb09PT////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v7z8/PMzMzLy8vIyMjKysrLy8vKysrKysrLy8vLy8vLy8vMzMzMzMzNzc3Nzc3Nzc3Ozs7Pz8/Pz8/Q0NDR0dHR0dHS0tLS0tLT09PT09PT09PU1NTU1NTU1NTV1dXV1dXV1dXV1dXW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1tbX19fW1tbW1tbW1tbV1dXV1dXU1NTT09PU1NTc3Nz39/f////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f39/f34+PjOzs7MzMzLy8vKysrMzMzMzMzMzMzNzc3Nzc3Ozs7Ozs7Pz8/Ozs7Pz8/Pz8/Q0NDR0dHR0dHS0tLS0tLT09PU1NTV1dXV1dXW1tbW1tbW1tbW1tbW1tbX19fX19fX19fY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZ2dnZ2dnZ2dnY2NjY2NjY2NjY2NjV1dXW1tbo6Oj7+/v+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////7+/vV1dXNzc3Nzc3MzMzOzs7Ozs7Ozs7Pz8/Pz8/Q0NDQ0NDR0dHQ0NDR0dHR0dHS0tLT09PU1NTU1NTV1dXW1tbW1tbX19fX19fY2NjY2NjY2NjY2NjZ2dnZ2dnZ2dnZ2dna2tra2trb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29va2tra2tra2tra2trY2Nje3t7v7+/9/f3+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3d3d3Pz8/Ozs7Nzc3R0dHQ0NDQ0NDR0dHR0dHS0tLS0tLT09PT09PT09PU1NTU1NTV1dXW1tbX19fY2NjY2NjY2NjZ2dna2tra2trb29vb29vb29vb29vc3Nzc3Nzc3Nzc3Nzd3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3e3t7e3t7e3t7e3t7d3d3d3d3d3d3b29vb29vm5ub39/f+/v7+/v78/Pz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7n5+fR0dHQ0NDNzc3S0tLS0tLS0tLS0tLT09PT09PU1NTU1NTV1dXV1dXV1dXW1tbX19fY2NjY2NjZ2dna2tra2trb29vb29vc3Nzc3Nzd3d3d3d3d3d3e3t7e3t7e3t7f39/f39/f39/f39/f39/f39/f39/f39/f39/g4ODg4ODg4ODg4ODf39/f39/f39/d3d3f39/t7e37+/v////+/v79/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7x8fHT09PS0tLOzs7T09PT09PT09PU1NTU1NTV1dXV1dXV1dXW1tbW1tbX19fY2NjZ2dna2tra2trb29vb29vc3Nzc3Nzd3d3d3d3e3t7f39/f39/f39/g4ODg4ODg4ODg4ODg4ODh4eHh4eHh4eHh4eHh4eHh4eHh4eHi4uLi4uLi4uLh4eHh4eHh4eHh4eHg4ODm5ub09PT9/f3////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f3+/v76+vrX19fV1dXR0dHW1tbV1dXV1dXW1tbW1tbX19fX19fY2NjZ2dnZ2dna2trb29vb29vc3Nzc3Nzd3d3e3t7e3t7f39/f39/g4ODg4ODh4eHi4uLi4uLi4uLj4+Pj4+Pj4+Pj4+Pk5OTk5OTk5OTk5OTk5OTk5OTk5OTl5eXl5eXl5eXk5OTk5OTk5OTj4+Pn5+fx8fH7+/v////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz+/v7////b29vZ2dnS0tLY2NjX19fX19fY2NjY2NjZ2dna2tra2trb29vb29vc3Nzd3d3e3t7e3t7f39/f39/g4ODh4eHh4eHi4uLi4uLj4+Pj4+Pl5eXl5eXl5eXl5eXm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fo6Ojn5+fn5+fn5+fm5ubm5ubs7Oz6+vr////////9/f3////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////w8PDa2trW1tbb29vY2NjY2NjZ2dnc3Nzd3d3c3Nza2tre3t7e3t7e3t7f39/f39/g4ODg4ODi4uLj4+Pk5OTk5OTl5eXl5eXm5ubm5ubm5ubm5ubn5+fn5+fn5+fn5+fn5+fp6enp6eno6Ojo6Ojo6Ojo6Ojp6enm5ubp6ens7Ozo6Ojh4eHl5eXx8fH7+/v////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////39/fj4+PZ2dnZ2dnc3Nzb29vb29vc3Nzd3d3e3t7e3t7g4ODg4ODh4eHh4eHi4uLi4uLi4uLk5OTk5OTl5eXl5eXm5ubm5ubn5+fn5+fn5+fo6Ojo6Ojo6Ojo6Ojo6Ojp6enn5+fn5+fn5+fo6Ojp6enp6enp6enp6enq6urq6uro6Ojq6urw8PD5+fn+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////8/Pzw8PDh4eHZ2dne3t7e3t7e3t7e3t7e3t7g4ODi4uLi4uLj4+Pj4+Pk5OTk5OTl5eXl5eXl5eXl5eXm5ubm5ubn5+fo6Ojo6Ojp6enp6enp6enq6urq6urq6urq6urq6uro6Ojo6Ojp6enq6urr6+vr6+vr6+vr6+vp6eno6Ojs7Ozz8/P6+vr+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////+/v7////7+/vq6urd3d3e3t7g4ODh4eHh4eHh4eHi4uLk5OTk5OTk5OTl5eXm5ubm5ubn5+fn5+fn5+fn5+fo6Ojo6Ojp6enq6urq6urr6+vr6+vr6+vs7Ozs7Ozs7Ozt7e3t7e3r6+vr6+vs7Ozs7Ozt7e3s7Ozs7Ozr6+vr6+vt7e3z8/P6+vr+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz+/v7+/v709PTm5ubg4ODh4eHj4+Pl5eXl5eXl5eXl5eXm5ubm5ubn5+fn5+fo6Ojo6Ojp6enp6enp6enq6urq6urr6+vr6+vs7Ozs7Ozs7Ozt7e3t7e3t7e3t7e3u7u7u7u7s7Ozs7Ozt7e3s7Ozs7Ozs7Ozs7Ozt7e3x8fH39/f8/Pz+/v7////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3+/v7////7+/vy8vLo6Ojm5ubl5eXn5+fp6eno6Ojm5ubo6Ojo6Ojp6enq6urq6urr6+vr6+vr6+vq6urr6+vr6+vs7Ozt7e3t7e3t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7t7e3s7Ozs7Ozt7e3u7u7w8PD09PT6+vr+/v7////////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7////////+/v7+/v77+/vz8/Pr6+vm5ubo6Ojr6+vq6urn5+fr6+vr6+vr6+vs7Ozs7Ozt7e3t7e3s7Ozs7Ozs7Ozt7e3u7u7u7u7v7+/u7u7t7e3t7e3u7u7u7u7u7u7u7u7u7u7w8PDv7+/u7u7u7u7x8fH09PT39/f8/Pz+/v7+/v7+/v7////////+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////+/v7////////8/Pz19fXu7u7s7Ozs7Ozs7Ozr6+vu7u7t7e3t7e3t7e3t7e3t7e3t7e3t7e3t7e3u7u7u7u7u7u7u7u7u7u7v7+/w8PDw8PDw8PDw8PDv7+/v7+/v7+/u7u7v7+/y8vL19fX5+fn7+/v9/f3////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8/Pz39/fz8/Pw8PDu7u7u7u7v7+/v7+/v7+/v7+/v7+/w8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDv7+/v7+/v7+/y8vL09PT4+Pj8/Pz+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/f37+/v39/f09PTx8fHv7+/v7+/w8PDw8PDw8PDw8PDw8PDw8PDv7+/v7+/v7+/v7+/v7+/v7+/v7+/w8PDw8PDw8PDx8fHy8vLz8/Pz8/P7+/v8/Pz9/f3////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7////////////+/v79/f36+vr29vb29vb19fXz8/Py8vLx8fHw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDx8fHz8/P09PT29vb4+Pj7+/v9/f3+/v7+/v7+/v7////////////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3+/v7////////////////////////////+/v79/f38/Pz7+/v5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn6+vr7+/v9/f3////////////////+/v7+/v7+/v7////////+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v7////////////+/v7+/v79/f39/f39/f39/f3+/v7+/v7+/v7////////////////////////////////////+/v7////////////+/v7+/v7+/v7////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+/v79/f3////////////////////+/v7////////////////////+/v7+/v7////////////////////////////+/v79/f3+/v7+/v7////////////////////////+/v7+/v7+/v7+/v7+/v7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Le [[site internet|http://collegeleonarddevinci.ac-bordeaux.fr/]] du collège Léonard de Vinci est sa vitrine numérique. Actuellement, ce site est hébergé par le service académique (Webetab, CMS Typo3).
Etude en cours d'un [[site dynamique|https://chezerichk.nohost.me/wp/]] plus adapté au besoin:
* Formation/documentation à l'[[administration du site]] (pour webmaster/administrateur technique)
* Formation/documentation sur l'[[alimentation du site]] (pour les rédacteurs et contributeurs)
C'est un nom composé à partir des termes:
* ''Wiki '': Un wiki est une application web qui permet la création, la modification et l'illustration de pages à l'intérieur d'un site web. Le mot en lui-même vient du mot hawaïen "wikiwiki" qui signifie "rapide", "vite" ou "informel". L'idée est donc de pouvoir rapidement délivrer ou accéder à de l'information structurée (par le biais de liens rapides).
* ''Tiddly '': encore un mot anglais, que l'on peut traduire ici par "minuscule", et qui fait référence aux Tiddlers. Un tiddler est l'élément de base de TiddlyWiki, (la note que vous lisez actuellement est un tiddler)
En résumé, TiddlyWiki un carnet de notes web non-linéaire pour saisir, organiser et partager des informations simples ou complexes.
! Visites virtuelles de musées
* [[Musée d'Orsay|https://artsandculture.google.com/streetview/mus%C3%A9e-d%E2%80%99orsay-paris/KQEnDge3UJkVmw?hl=en&sv_lng=2.327089926444344&sv_lat=48.85968476784497&sv_h=275.02860753075623&sv_p=-1.716931627317038&sv_pid=FjndSjvl55w81vbNYu5DfA&sv_z=0.6423760937153176]] à Paris
* [[la petite galerie du Louvre|https://petitegalerie.louvre.fr/visite-virtuelle/saison5]] à Paris
* [[le musée du Quai Branly|https://artsandculture.google.com/streetview/mus%C3%A9e-du-quai-branly/IQG3-i2R6-QTDQ?sv_lng=2.297979&sv_lat=48.8609018&sv_h=226.8&sv_p=-13.299999999999997&sv_pid=M7p9EEWGWxW-eIUXPHzA2w&sv_z=1]] à Paris
* [[le British Museum|https://britishmuseum.withgoogle.com]] à Londres
* [[la chapelle sixtine|http://www.vatican.va/various/cappelle/sistina_vr/index.html]] au Vatican
* [[le musée de Pergame|https://artsandculture.google.com/streetview/pergamonmuseum-staatliche-museen-zu-berlin/0QEALap3qf0s1g?sv_lng=13.396649700000012&sv_lat=52.5206272&sv_h=57.01663791586235&sv_p=4.154513706404231&sv_pid=rTzlWY-F4hP2acX_uQhcFA&sv_z=0.5381992096877048&sv_lid=9073433258708332870&hl=fr]] à Berlin
* [[Le Rijksmuseum|https://artsandculture.google.com/streetview/rijksmuseum-first-floor/rAG25bi4TlLfDg?sv_lng=4.884621843429613&sv_lat=52.36007271658467&sv_h=125.7&sv_p=-13.299999999999997&sv_pid=i3nQaTaKFyCHPgUuBxCQqg&sv_z=1&hl=fr]] à Amsterdam
* [[le musée Van Gogh|https://artsandculture.google.com/streetview/van-gogh-museum-groundfloor/2QHwyv_Y6gueAw?hl=en&sv_lng=4.881046786523673&sv_lat=52.35838412991535&sv_h=318.66&sv_p=-13.299999999999997&sv_pid=MKMJk8yf0lEzHxPymORW_A&sv_z=1]] à Amsterdam
* [[le musée des Offices|https://artsandculture.google.com/streetview/uffizi-gallery/1AEhLnfyQCV-DQ?sv_h=0&sv_p=0&sv_pid=BVLiSlIAlLP0xHA5-yERqw&sv_lid=11445198885088425697&hl=fr]] à Florence
* [[la maison d'Anne Frank|https://www.annefrank.org/en/anne-frank/secret-annex/#/house/20/]] à Amsterdam
! Visite virtuelle du collège
* [[Collège Léonard de Vinci - St Aubin de Médoc|http://visite-virtuelle33.fr/wp-content/uploads/panoramas/VV_College_Leonard_De_Vinci/VV-College%20Leonard%20De%20Vinci.html]]
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
C'est le CMS (Content Management System) choisi pour le prototype de site internet du collège...
(rédaction plus détaillée en cours...)
https://ldvnumerique.tiddlyhost.com
ldvnumerique.tiddlyhost.com
https://ldvnumerique.tiddlyhost.com/thumb.png