tiddlywiki 5.3.3 → 5.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/build-site.sh +33 -0
- package/boot/boot.js +61 -26
- package/boot/tiddlywiki.files +32 -0
- package/contributing.md +1 -1
- package/core/copyright.tid +1 -1
- package/core/images/standard-layout.tid +7 -0
- package/core/language/en-GB/Buttons.multids +3 -0
- package/core/language/en-GB/ControlPanel.multids +6 -0
- package/core/language/en-GB/Docs/ModuleTypes.multids +1 -1
- package/core/language/en-GB/Docs/PaletteColours.multids +7 -0
- package/core/language/en-GB/Fields.multids +2 -0
- package/core/language/en-GB/Misc.multids +2 -2
- package/core/modules/commands/listen.js +1 -1
- package/core/modules/commands/makelibrary.js +1 -26
- package/core/modules/commands/save.js +3 -1
- package/core/modules/commands/savewikifolder.js +4 -1
- package/core/modules/filters/backtranscludes.js +26 -0
- package/core/modules/filters/crypto.js +2 -5
- package/core/modules/filters/strings.js +6 -3
- package/core/modules/filters/transcludes.js +26 -0
- package/core/modules/filters/x-listops.js +1 -1
- package/core/modules/indexers/back-indexer.js +122 -0
- package/core/modules/macros/csvtiddlers.js +9 -5
- package/core/modules/parsers/parseutils.js +1 -1
- package/core/modules/parsers/wikiparser/rules/codeblock.js +6 -3
- package/core/modules/parsers/wikiparser/rules/codeinline.js +5 -2
- package/core/modules/parsers/wikiparser/rules/extlink.js +2 -1
- package/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js +15 -5
- package/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js +15 -5
- package/core/modules/parsers/wikiparser/rules/fnprocdef.js +3 -3
- package/core/modules/parsers/wikiparser/rules/hardlinebreaks.js +2 -1
- package/core/modules/parsers/wikiparser/rules/heading.js +4 -2
- package/core/modules/parsers/wikiparser/rules/html.js +25 -0
- package/core/modules/parsers/wikiparser/rules/image.js +2 -2
- package/core/modules/parsers/wikiparser/rules/import.js +2 -1
- package/core/modules/parsers/wikiparser/rules/list.js +29 -4
- package/core/modules/parsers/wikiparser/rules/macrodef.js +3 -3
- package/core/modules/parsers/wikiparser/rules/prettyextlink.js +7 -2
- package/core/modules/parsers/wikiparser/rules/prettylink.js +12 -5
- package/core/modules/parsers/wikiparser/rules/quoteblock.js +16 -30
- package/core/modules/parsers/wikiparser/rules/syslink.js +6 -3
- package/core/modules/parsers/wikiparser/rules/table.js +2 -1
- package/core/modules/parsers/wikiparser/rules/typedblock.js +4 -1
- package/core/modules/parsers/wikiparser/rules/wikilink.js +4 -1
- package/core/modules/parsers/wikiparser/wikiparser.js +39 -5
- package/core/modules/saver-handler.js +7 -3
- package/core/modules/server/authenticators/header.js +3 -1
- package/core/modules/server/server.js +5 -0
- package/core/modules/startup/render.js +8 -2
- package/core/modules/startup/rootwidget.js +10 -2
- package/core/modules/startup/story.js +14 -4
- package/core/modules/startup/windows.js +1 -1
- package/core/modules/utils/dom/dom.js +3 -1
- package/core/modules/utils/dom/http.js +19 -7
- package/core/modules/utils/errors.js +23 -0
- package/core/modules/utils/fakedom.js +2 -2
- package/core/modules/utils/filesystem.js +13 -10
- package/core/modules/utils/repository.js +52 -0
- package/core/modules/utils/utils.js +11 -2
- package/core/modules/widgets/action-deletefield.js +7 -2
- package/core/modules/widgets/action-log.js +6 -1
- package/core/modules/widgets/button.js +1 -1
- package/core/modules/widgets/data.js +182 -0
- package/core/modules/widgets/draggable.js +2 -2
- package/core/modules/widgets/edit.js +1 -1
- package/core/modules/widgets/importvariables.js +1 -1
- package/core/modules/widgets/link.js +1 -1
- package/core/modules/widgets/parameters.js +12 -0
- package/core/modules/widgets/testcase.js +165 -0
- package/core/modules/widgets/transclude.js +24 -1
- package/core/modules/widgets/widget.js +23 -10
- package/core/modules/wiki.js +78 -2
- package/core/palettes/Vanilla.tid +7 -0
- package/core/plugin.info +2 -1
- package/core/templates/external-js/save-all-external-js.tid +1 -1
- package/core/templates/external-js/save-offline-external-js.tid +1 -1
- package/core/templates/save-all.tid +1 -1
- package/core/templates/save-empty.tid +1 -1
- package/core/templates/save-lazy-all.tid +1 -1
- package/core/templates/save-lazy-images.tid +1 -1
- package/core/ui/AdvancedSearch/Filter.tid +1 -4
- package/core/ui/AdvancedSearch/Standard.tid +5 -4
- package/core/ui/Components/plugin-info.tid +11 -1
- package/core/ui/ControlPanel/Modals/AddPlugins.tid +13 -2
- package/core/ui/ControlPanel/Saving/DownloadSaver.tid +11 -2
- package/core/ui/ControlPanel/Saving/General.tid +11 -3
- package/core/ui/ControlPanel/Settings/CamelCase.tid +10 -1
- package/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab.tid +11 -6
- package/core/ui/ControlPanel/Settings/DefaultSidebarTab.tid +11 -5
- package/core/ui/ControlPanel/Settings/EditorToolbar.tid +9 -2
- package/core/ui/ControlPanel/Settings/InfoPanelMode.tid +11 -3
- package/core/ui/ControlPanel/Settings/LinkToBehaviour.tid +15 -11
- package/core/ui/ControlPanel/Settings/MissingLinks.tid +6 -2
- package/core/ui/ControlPanel/Settings/NavigationAddressBar.tid +13 -4
- package/core/ui/ControlPanel/Settings/NavigationHistory.tid +11 -3
- package/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode.tid +17 -2
- package/core/ui/ControlPanel/Settings/PerformanceInstrumentation.tid +9 -1
- package/core/ui/ControlPanel/Settings/TitleLinks.tid +11 -3
- package/core/ui/ControlPanel/Settings/ToolbarButtonStyle.tid +9 -6
- package/core/ui/ControlPanel/Settings/ToolbarButtons.tid +17 -2
- package/core/ui/ControlPanel/TestCases.tid +10 -0
- package/core/ui/ControlPanel/TestCasesAll.tid +24 -0
- package/core/ui/ControlPanel/TestCasesFailed.tid +15 -0
- package/core/ui/ControlPanel/TiddlyWiki.tid +2 -2
- package/core/ui/EditTemplate/body/default.tid +7 -2
- package/core/ui/EditTemplate/controls.tid +12 -6
- package/core/ui/EditTemplate/tags.tid +52 -28
- package/core/ui/EditorToolbar/preview.tid +2 -2
- package/core/ui/KeyboardShortcuts/refresh.tid +5 -0
- package/core/ui/PageControls/more-page-actions.tid +37 -44
- package/core/ui/PageControls.tid +10 -13
- package/core/ui/{PageTemplate.tid → StandardLayout.tid} +1 -1
- package/core/ui/TestCaseTemplate.tid +19 -0
- package/core/ui/TestCases/DefaultTemplate.tid +91 -0
- package/core/ui/TestCases/DefaultTemplateSourceTabs.tid +27 -0
- package/core/ui/TestCases/RawJSONTemplate.tid +4 -0
- package/core/ui/TestCases/actions/Export.tid +4 -0
- package/core/ui/TestCases/actions/Import.tid +11 -0
- package/core/ui/ViewTemplate/title.tid +33 -26
- package/core/ui/ViewToolbar/more-tiddler-actions.tid +35 -43
- package/core/wiki/config/OfficialPluginLibrary.tid +1 -1
- package/core/wiki/config/ShortcutInfo.multids +1 -0
- package/core/wiki/config/ViewTemplateBodyFilters.multids +1 -0
- package/core/wiki/config/shortcuts/shortcuts-mac.multids +1 -0
- package/core/wiki/config/shortcuts/shortcuts-not-mac.multids +1 -0
- package/core/wiki/macros/CSS.tid +44 -51
- package/core/wiki/macros/copy-to-clipboard.tid +17 -11
- package/core/wiki/macros/diff.tid +28 -28
- package/core/wiki/macros/tag-picker.tid +165 -160
- package/core/wiki/macros/tag.tid +3 -1
- package/core/wiki/macros/testcase.tid +10 -0
- package/core/wiki/tags/TestCaseActions.tid +2 -0
- package/core/wiki/tags/ViewTemplateBodyFilter.tid +1 -1
- package/editions/dev/tiddlers/HelloThere.tid +1 -0
- package/editions/dev/tiddlers/javascript-widget-tutorial/Javascript Widget Tutorial.tid +22 -16
- package/editions/dev/tiddlers/new/Using ES2016 for Writing Plugins.tid +18 -8
- package/editions/dev/tiddlers/new/Using TiddlyWiki as a library.tid +5 -0
- package/editions/dev/tiddlers/system/$__themes_tiddlywiki_vanilla_options_sidebarlayout.tid +6 -0
- package/editions/full/tiddlywiki.info +1 -0
- package/editions/geospatialdemo/tiddlers/DefaultTiddlers.tid +4 -0
- package/editions/geospatialdemo/tiddlers/Features.tid +14 -0
- package/editions/geospatialdemo/tiddlers/Flickr Demo.tid +27 -0
- package/editions/geospatialdemo/tiddlers/Geospatial Plugin Logo.png +0 -0
- package/editions/geospatialdemo/tiddlers/Geospatial Plugin Logo.png.meta +2 -0
- package/editions/geospatialdemo/tiddlers/HelloThere.tid +37 -0
- package/editions/geospatialdemo/tiddlers/Markers.tid +53 -0
- package/editions/geospatialdemo/tiddlers/SiteSubtitle.tid +3 -0
- package/editions/geospatialdemo/tiddlers/SiteTitle.tid +3 -0
- package/editions/geospatialdemo/tiddlers/cascades/ViewTemplateBodyFilters.tid +6 -0
- package/editions/geospatialdemo/tiddlers/cities/LimehouseTownHall.tid +9 -0
- package/editions/geospatialdemo/tiddlers/cities/Motovun.tid +9 -0
- package/editions/geospatialdemo/tiddlers/cities/NewYork.tid +8 -0
- package/editions/geospatialdemo/tiddlers/cities/Oxford.tid +8 -0
- package/editions/geospatialdemo/tiddlers/cities/Toronto.tid +8 -0
- package/editions/geospatialdemo/tiddlers/cities/Winchester.tid +8 -0
- package/editions/geospatialdemo/tiddlers/config/flickr-param.multids +5 -0
- package/editions/geospatialdemo/tiddlers/default-import-spec.tid +4 -0
- package/editions/geospatialdemo/tiddlers/favicon.png +0 -0
- package/editions/geospatialdemo/tiddlers/favicon.png.meta +2 -0
- package/editions/geospatialdemo/tiddlers/features/canada-census-subdivision-millesime.geojson +1 -0
- package/editions/geospatialdemo/tiddlers/features/canada-census-subdivision-millesime.geojson.meta +5 -0
- package/editions/geospatialdemo/tiddlers/features/denver-bikerental.tid +109 -0
- package/editions/geospatialdemo/tiddlers/features/denver-campus.tid +63 -0
- package/editions/geospatialdemo/tiddlers/features/denver-freebus.tid +56 -0
- package/editions/geospatialdemo/tiddlers/features/denver-lightrail.tid +30 -0
- package/editions/geospatialdemo/tiddlers/features/harvard-glb-volc-geojson.json +1 -0
- package/editions/geospatialdemo/tiddlers/features/harvard-glb-volc-geojson.json.meta +5 -0
- package/editions/geospatialdemo/tiddlers/features/us-states.geojson +54 -0
- package/editions/geospatialdemo/tiddlers/features/us-states.geojson.meta +5 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/real-estate-demo.tid +99 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/schema.json +22 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/schema.json.meta +3 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRow.tid +5 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldAddress.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldBroker.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldCity.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldLat.tid +8 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldLong.tid +8 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldPrice.tid +8 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldSalesAgent.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldState.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldTags.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldTitle.tid +8 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesRowFieldZipCode.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/PropertiesSheet.tid +7 -0
- package/editions/geospatialdemo/tiddlers/real-estate-demo/xlsx-utils-import-specs/workbook.tid +7 -0
- package/editions/geospatialdemo/tiddlers/sidebarlayout.tid +2 -0
- package/editions/geospatialdemo/tiddlers/ui/geofeature.tid +39 -0
- package/editions/geospatialdemo/tiddlers/ui/geomarker.tid +128 -0
- package/editions/geospatialdemo/tiddlywiki.info +23 -0
- package/editions/introduction/tiddlers/slides/CecilyMap.tid +12 -12
- package/editions/introduction/tiddlers/slides/blank.json +1 -1
- package/editions/prerelease/tiddlers/{Release 5.3.4.tid → Release 5.3.5.tid } +11 -8
- package/editions/prerelease/tiddlers/system/PrereleaseOfficialPluginLibrary.tid +1 -1
- package/editions/prerelease/tiddlers/system/configPerformanceInstrumentation.tid +2 -0
- package/editions/prerelease/tiddlywiki.info +4 -1
- package/editions/test/tiddlers/HelloThere.tid +4 -0
- package/editions/test/tiddlers/tests/data/data-widget/ImportCompound.tid +27 -0
- package/editions/test/tiddlers/tests/data/data-widget/ImportFilter.tid +28 -0
- package/editions/test/tiddlers/tests/data/data-widget/ImportTiddler.tid +23 -0
- package/editions/test/tiddlers/tests/data/data-widget/Simple.tid +18 -0
- package/editions/test/tiddlers/tests/data/functions/FunctionFilterrunVariables.tid +24 -0
- package/editions/test/tiddlers/tests/data/functions/FunctionFilterrunVariables2.tid +20 -0
- package/editions/test/tiddlers/tests/data/functions/FunctionFilterrunVariables3.tid +21 -0
- package/editions/test/tiddlers/tests/data/importvariables/WithSetWidgets2.tid +1 -0
- package/editions/test/tiddlers/tests/data/importvariables/WithSetWidgetsAndMacros.tid +1 -0
- package/editions/test/tiddlers/tests/data/macros/EndInBody.tid +16 -0
- package/editions/test/tiddlers/tests/data/macros/IndentedEnd.tid +16 -0
- package/editions/test/tiddlers/tests/data/macros/MismatchedNamedEnd.tid +16 -0
- package/editions/test/tiddlers/tests/data/macros/WhitespaceOnlyWithEnd.tid +18 -0
- package/editions/test/tiddlers/tests/data/macros/WhitespaceOnlyWithEnd2.tid +15 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/basic-params-draft-exists.tid +27 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/basic-params-empty-tiddler-exists.tid +23 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/basic-params-empty.tid +20 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/basic-params-tiddlers-exist.tid +28 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/basic-params.tid +20 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/template-empty-params-tiddler-exist.tid +50 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/template-empty-params.tid +24 -0
- package/editions/test/tiddlers/tests/data/macros/unusedtitle/template.tid +28 -0
- package/editions/test/tiddlers/tests/data/pragmas/WhitespaceAfterPragma.tid +4 -1
- package/editions/test/tiddlers/tests/data/procedures/EndInBody.tid +16 -0
- package/editions/test/tiddlers/tests/data/procedures/IndentedEnd.tid +16 -0
- package/editions/test/tiddlers/tests/data/procedures/MismatchedNamedEnd.tid +16 -0
- package/editions/test/tiddlers/tests/data/procedures/WhitespaceOnlyWithEnd.tid +18 -0
- package/editions/test/tiddlers/tests/data/procedures/WhitespaceOnlyWithEnd2.tid +15 -0
- package/editions/test/tiddlers/tests/data/transclude/Procedures-Whitespace2.tid +25 -0
- package/editions/test/tiddlers/tests/data/transclude/Procedures-Whitespace3.tid +30 -0
- package/editions/test/tiddlers/tests/data/transclude/Recursion.tid +2 -1
- package/editions/test/tiddlers/tests/from-tw5.com/tiddlywiki.files +5 -0
- package/editions/test/tiddlers/tests/test-action-deletefield.js +176 -0
- package/editions/test/tiddlers/tests/test-backlinks.js +57 -44
- package/editions/test/tiddlers/tests/test-backtranscludes.js +241 -0
- package/editions/test/tiddlers/tests/test-fakedom.js +27 -0
- package/editions/test/tiddlers/tests/test-plugins.js +55 -0
- package/editions/test/tiddlers/tests/test-widget-getVariableInfo.js +95 -0
- package/editions/test/tiddlers/tests/test-widget.js +61 -0
- package/editions/test/tiddlers/tests/test-wikitext-parser.js +48 -49
- package/editions/test/tiddlywiki.info +2 -1
- package/editions/tour/tiddlers/Solar System/Asteroid (253) Mathilde Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Asteroid (253) Mathilde Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Asteroid.tid +17 -0
- package/editions/tour/tiddlers/Solar System/Comet Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Comet Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Comet.tid +15 -0
- package/editions/tour/tiddlers/Solar System/Earth Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Earth Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Earth's Moon Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Earth's Moon Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Earth's Moon.tid +10 -0
- package/editions/tour/tiddlers/Solar System/Earth.tid +21 -0
- package/editions/tour/tiddlers/Solar System/Jupiter Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Jupiter Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Jupiter.tid +15 -0
- package/editions/tour/tiddlers/Solar System/Kuiper belt.tid +12 -0
- package/editions/tour/tiddlers/Solar System/Mars Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Mars Image.png.meta +5 -0
- package/editions/tour/tiddlers/Solar System/Mars.tid +11 -0
- package/editions/tour/tiddlers/Solar System/Mercury Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Mercury Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Mercury.tid +21 -0
- package/editions/tour/tiddlers/Solar System/Milky Way Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Milky Way Image.png.meta +5 -0
- package/editions/tour/tiddlers/Solar System/Milky Way.tid +14 -0
- package/editions/tour/tiddlers/Solar System/Moon.tid +9 -0
- package/editions/tour/tiddlers/Solar System/Neptune Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Neptune Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Neptune.tid +19 -0
- package/editions/tour/tiddlers/Solar System/Planet Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Planet Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Planet.tid +17 -0
- package/editions/tour/tiddlers/Solar System/Pluto Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Pluto Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Pluto.tid +12 -0
- package/editions/tour/tiddlers/Solar System/Saturn Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Saturn Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Saturn.tid +17 -0
- package/editions/tour/tiddlers/Solar System/Solar System Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Solar System Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Solar System.tid +18 -0
- package/editions/tour/tiddlers/Solar System/Sun Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Sun Image.png.meta +5 -0
- package/editions/tour/tiddlers/Solar System/Sun.tid +17 -0
- package/editions/tour/tiddlers/Solar System/Uranus Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Uranus Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Uranus.tid +19 -0
- package/editions/tour/tiddlers/Solar System/Venus Image.png +0 -0
- package/editions/tour/tiddlers/Solar System/Venus Image.png.meta +3 -0
- package/editions/tour/tiddlers/Solar System/Venus.tid +17 -0
- package/editions/tour/tiddlers/System/$__themes_tiddlywiki_vanilla_options_sidebarlayout.tid +4 -0
- package/editions/tour/tiddlers/System/DefaultTiddlers.tid +4 -0
- package/editions/tour/tiddlers/System/HelloThere.tid +5 -0
- package/editions/tour/tiddlers/System/SiteSubtitle.tid +2 -0
- package/editions/tour/tiddlers/System/SiteTitle.tid +2 -0
- package/editions/tour/tiddlers/System/configAutoStartTour.tid +2 -0
- package/editions/tour/tiddlers/System/styles.tid +9 -0
- package/editions/tour/tiddlywiki.info +16 -0
- package/editions/translators/tiddlywiki.info +1 -0
- package/editions/tw5.com/tiddlers/String Operators.tid +8 -0
- package/editions/tw5.com/tiddlers/Tag Operators.tid +8 -0
- package/editions/tw5.com/tiddlers/TiddlyWiki Docs PR Maker.tid +12 -0
- package/editions/tw5.com/tiddlers/about/Archive.tid +1 -1
- package/editions/tw5.com/tiddlers/about/Developers.tid +1 -0
- package/editions/tw5.com/tiddlers/about/History of TiddlyWiki.tid +5 -5
- package/editions/tw5.com/tiddlers/community/Community Editions.tid +2 -2
- package/editions/tw5.com/tiddlers/community/Contributor License Agreement.tid +2 -2
- package/editions/tw5.com/tiddlers/community/Improving TiddlyWiki Documentation.tid +21 -1
- package/editions/tw5.com/tiddlers/community/plugins/Disqus comments plugin by bimlas.tid +1 -1
- package/editions/tw5.com/tiddlers/community/plugins/Kin filter operator by bimlas.tid +1 -1
- package/editions/tw5.com/tiddlers/community/plugins/Locator plugin by bimlas.tid +1 -1
- package/editions/tw5.com/tiddlers/community/themes/Notebook theme by Nicolas Petton.tid +2 -2
- package/editions/tw5.com/tiddlers/concepts/Bags and Recipes.tid +42 -0
- package/editions/tw5.com/tiddlers/concepts/ColourPalettes.tid +2 -2
- package/editions/tw5.com/tiddlers/concepts/CompoundTiddlers.tid +31 -0
- package/editions/tw5.com/tiddlers/concepts/Filters.tid +3 -3
- package/editions/tw5.com/tiddlers/concepts/Hard and Soft Links.tid +4 -2
- package/editions/tw5.com/tiddlers/concepts/Hard and Soft Transclusions.tid +16 -0
- package/editions/tw5.com/tiddlers/concepts/ShadowTiddlers.tid +4 -2
- package/editions/tw5.com/tiddlers/concepts/Temporary Tiddlers.tid +8 -0
- package/editions/tw5.com/tiddlers/concepts/TestCaseTiddlers.tid +26 -0
- package/editions/tw5.com/tiddlers/concepts/TextReference.tid +2 -2
- package/editions/tw5.com/tiddlers/concepts/TiddlerFields.tid +4 -3
- package/editions/tw5.com/tiddlers/concepts/Transclusion.tid +10 -3
- package/editions/tw5.com/tiddlers/customising/Alternative page layouts.tid +34 -3
- package/editions/tw5.com/tiddlers/customising/Creating new toolbar buttons.tid +2 -2
- package/editions/tw5.com/tiddlers/definitions/Legacy.tid +9 -0
- package/editions/tw5.com/tiddlers/definitions/TiddlyFox.tid +4 -2
- package/editions/tw5.com/tiddlers/definitions/TiddlyWeb.tid +2 -3
- package/editions/tw5.com/tiddlers/definitions/TiddlyWebAdaptor.tid +9 -0
- package/editions/tw5.com/tiddlers/definitions/UnaMesa.tid +10 -0
- package/editions/tw5.com/tiddlers/fields/ListField.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/Conditional Operators.tid +6 -4
- package/editions/tw5.com/tiddlers/filters/Filter Operators.tid +13 -6
- package/editions/tw5.com/tiddlers/filters/Mathematics Operators.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/add.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/all.tid +8 -4
- package/editions/tw5.com/tiddlers/filters/append.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/backtranscludes.tid +14 -0
- package/editions/tw5.com/tiddlers/filters/charcode.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/compare Operator.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/cycle Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/divide Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/enlist Operator.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/enlist-input Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/Brownies.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/Chick Peas.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/Milk.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/Rice Pudding.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/backtransclude.tid +7 -0
- package/editions/tw5.com/tiddlers/filters/examples/prepend.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/examples/sha256 Operator (Examples).tid +9 -0
- package/editions/tw5.com/tiddlers/filters/examples/subfilter Operator (Examples).tid +1 -1
- package/editions/tw5.com/tiddlers/filters/examples/transclude.tid +5 -0
- package/editions/tw5.com/tiddlers/filters/field.tid +11 -11
- package/editions/tw5.com/tiddlers/filters/format.tid +6 -6
- package/editions/tw5.com/tiddlers/filters/jsonextract.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/jsonget.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/jsonindexes.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/jsontype.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/log Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/match Operator.tid +5 -6
- package/editions/tw5.com/tiddlers/filters/max Operator.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/min Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/minlength.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/moduleproperty Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/modules.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/multiply Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/power Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/prefix.tid +9 -10
- package/editions/tw5.com/tiddlers/filters/prepend.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/range.tid +11 -11
- package/editions/tw5.com/tiddlers/filters/reduce.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/remainder Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/remove.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/removeprefix.tid +8 -9
- package/editions/tw5.com/tiddlers/filters/removesuffix.tid +8 -9
- package/editions/tw5.com/tiddlers/filters/search.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/sortby.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/splitregexp Operator.tid +20 -2
- package/editions/tw5.com/tiddlers/filters/subfilter Operator.tid +3 -3
- package/editions/tw5.com/tiddlers/filters/subtract Operator.tid +1 -1
- package/editions/tw5.com/tiddlers/filters/suffix.tid +9 -10
- package/editions/tw5.com/tiddlers/filters/syntax/All Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/And Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix.tid +14 -9
- package/editions/tw5.com/tiddlers/filters/syntax/Else Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Except Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Expression.tid +11 -63
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix.tid +19 -14
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Parameter.tid +11 -7
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Run.tid +5 -4
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Step.tid +22 -10
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Syntax.tid +12 -6
- package/editions/tw5.com/tiddlers/filters/syntax/Filter Whitespace.tid +5 -3
- package/editions/tw5.com/tiddlers/filters/syntax/Interchangeable Filter Run Prefixes.tid +44 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix.tid +13 -8
- package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix.tid +21 -16
- package/editions/tw5.com/tiddlers/filters/syntax/Named Filter Run Prefix.tid +32 -6
- package/editions/tw5.com/tiddlers/filters/syntax/Or Filter Run Prefix.tid +18 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix.tid +23 -14
- package/editions/tw5.com/tiddlers/filters/syntax/Shortcut Filter Run Prefixes.tid +29 -0
- package/editions/tw5.com/tiddlers/filters/syntax/Sort Filter Run Prefix (Examples).tid +2 -2
- package/editions/tw5.com/tiddlers/filters/syntax/Sort Filter Run Prefix.tid +16 -9
- package/editions/tw5.com/tiddlers/filters/syntax/then Filter Run Prefix.tid +3 -36
- package/editions/tw5.com/tiddlers/filters/toggle Operator.tid +2 -2
- package/editions/tw5.com/tiddlers/filters/transcludes.tid +14 -0
- package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Firefox.tid +4 -3
- package/editions/tw5.com/tiddlers/hellothere/HelloThere.tid +1 -1
- package/editions/tw5.com/tiddlers/howtos/Concatenating text and variables using macro substitution.tid +6 -0
- package/editions/tw5.com/tiddlers/howtos/Custom_data-styles.tid +4 -2
- package/editions/tw5.com/tiddlers/howtos/How to embed PDF and other documents.tid +2 -2
- package/editions/tw5.com/tiddlers/howtos/Setting a page background image.tid +2 -2
- package/editions/tw5.com/tiddlers/howtos/Tagging.tid +3 -3
- package/editions/tw5.com/tiddlers/howtos/Using Excise.tid +2 -2
- package/editions/tw5.com/tiddlers/images/New Release Banner.png +0 -0
- package/editions/tw5.com/tiddlers/images/Open Collective Logo.tid +4 -2
- package/editions/tw5.com/tiddlers/macros/StylesheetMacros.tid +3 -1
- package/editions/tw5.com/tiddlers/macros/TagMacro.tid +30 -2
- package/editions/tw5.com/tiddlers/macros/examples/tag.tid +8 -4
- package/editions/tw5.com/tiddlers/macros/import/tags-of-current-tiddler.tid +2 -1
- package/editions/tw5.com/tiddlers/macros/import/tv-get-export-image-link.tid +3 -2
- package/editions/tw5.com/tiddlers/macros/import/tv-wikilink-tooltip.tid +2 -1
- package/editions/tw5.com/tiddlers/macros/list-thumbnails Macro.tid +5 -5
- package/editions/tw5.com/tiddlers/macros/syntax/Macro Call Syntax.tid +5 -1
- package/editions/tw5.com/tiddlers/macros/syntax/Macro Definition Syntax.tid +5 -1
- package/editions/tw5.com/tiddlers/macros/syntax/Procedure Call Syntax.tid +33 -0
- package/editions/tw5.com/tiddlers/macros/syntax/Procedure Definition Syntax.tid +93 -0
- package/editions/tw5.com/tiddlers/macros/syntax/Procedure Syntax.tid +11 -0
- package/editions/tw5.com/tiddlers/macros/tag-picker_Macro.tid +13 -5
- package/editions/tw5.com/tiddlers/macros/thumbnail Macro.tid +19 -4
- package/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid +5 -1
- package/editions/tw5.com/tiddlers/mechanisms/RefreshThrottling.tid +1 -1
- package/editions/tw5.com/tiddlers/mechanisms/WikificationMechanism.tid +3 -3
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-copy-to-clipboard.tid +3 -1
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-edit-bitmap-operation.tid +2 -2
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-edit-text-operation.tid +2 -2
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-http-request Example Basic Authentication.tid +34 -0
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-http-request Example Random Dog.tid +1 -1
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-http-request Example Zotero.tid +1 -1
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-http-request Examples.tid +117 -0
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-http-request.tid +8 -1
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-permalink.tid +3 -1
- package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-permaview.tid +3 -1
- package/editions/tw5.com/tiddlers/nodejs/Naming of System Tiddlers.tid +4 -4
- package/editions/tw5.com/tiddlers/nodejs/TiddlyWiki5 Versioning.tid +1 -1
- package/editions/tw5.com/tiddlers/plugins/Plugin Stability.tid +14 -0
- package/editions/tw5.com/tiddlers/pragmas/Pragma_ _parsermode.tid +1 -1
- package/editions/tw5.com/tiddlers/procedures/Procedures.tid +6 -3
- package/editions/tw5.com/tiddlers/releasenotes/Release 5.3.2.tid +1 -1
- package/editions/tw5.com/tiddlers/releasenotes/Release 5.3.3.tid +1 -1
- package/editions/tw5.com/tiddlers/releasenotes/Release 5.3.4.tid +170 -0
- package/editions/tw5.com/tiddlers/saving/Saving with FireFox.tid +17 -0
- package/editions/tw5.com/tiddlers/saving/Saving with Polly.tid +0 -1
- package/editions/tw5.com/tiddlers/saving/Saving with TiddlyFox on Android.tid +4 -2
- package/editions/tw5.com/tiddlers/saving/Saving with TiddlyFox.tid +2 -19
- package/editions/tw5.com/tiddlers/saving/TiddlyBucket - Save to AWS or Google Storage.tid +0 -1
- package/editions/tw5.com/tiddlers/styleguide/Documentation Macros.tid +188 -163
- package/editions/tw5.com/tiddlers/system/$__SplashScreen.tid +3 -1
- package/editions/tw5.com/tiddlers/system/ContributionBanner.tid +7 -3
- package/editions/tw5.com/tiddlers/system/Deprecated.tid +5 -1
- package/editions/tw5.com/tiddlers/system/Deprecated_-_What_does_it_mean.tid +0 -3
- package/editions/tw5.com/tiddlers/system/Sources.tid +36 -15
- package/editions/tw5.com/tiddlers/system/TableOfContents.tid +2 -2
- package/editions/tw5.com/tiddlers/system/doc-macros.tid +181 -170
- package/editions/tw5.com/tiddlers/system/doc-styles.tid +46 -23
- package/editions/tw5.com/tiddlers/system/download-empty.tid +4 -4
- package/editions/tw5.com/tiddlers/system/filter-run-template.tid +50 -0
- package/editions/tw5.com/tiddlers/system/operator-macros.tid +46 -32
- package/editions/tw5.com/tiddlers/system/operator-template.tid +52 -71
- package/editions/tw5.com/tiddlers/system/variable-macros.tid +15 -10
- package/editions/tw5.com/tiddlers/system/version-macros.tid +29 -5
- package/editions/tw5.com/tiddlers/system/wikitext-macros.tid +54 -62
- package/editions/tw5.com/tiddlers/tag-picker Macro (Examples).tid +69 -0
- package/editions/tw5.com/tiddlers/tag-pill Macro (Examples).tid +14 -0
- package/editions/tw5.com/tiddlers/testcases/DataWidget/ImportCompound.tid +33 -0
- package/editions/tw5.com/tiddlers/testcases/DataWidget/ImportedFilter.tid +49 -0
- package/editions/tw5.com/tiddlers/testcases/DataWidget/ImportedTiddler.tid +29 -0
- package/editions/tw5.com/tiddlers/testcases/DataWidget/Refreshing.tid +30 -0
- package/editions/tw5.com/tiddlers/testcases/DataWidget/SimpleTiddler.tid +22 -0
- package/editions/tw5.com/tiddlers/testcases/TestCaseWidget/FailingTest.tid +15 -0
- package/editions/tw5.com/tiddlers/testcases/TestCaseWidget/NoExpectedResults.tid +12 -0
- package/editions/tw5.com/tiddlers/testcases/TestCaseWidget/TwoPlusTwo.tid +18 -0
- package/editions/tw5.com/tiddlers/testcases/TestCaseWidget/currentTiddler.tid +16 -0
- package/editions/tw5.com/tiddlers/testcases/TranscludeWidget/SimpleTransclusion.tid +23 -0
- package/editions/tw5.com/tiddlers/variables/Variables.tid +4 -3
- package/editions/tw5.com/tiddlers/variables/examples/tv-get-export-image-link.tid +7 -1
- package/editions/tw5.com/tiddlers/variables/tv-filter-export-link Variable.tid +2 -2
- package/editions/tw5.com/tiddlers/variables/tv-get-export-image-link.tid +4 -4
- package/editions/tw5.com/tiddlers/variables/tv-get-export-link.tid +4 -4
- package/editions/tw5.com/tiddlers/variables/tv-wikilink-template.tid +2 -2
- package/editions/tw5.com/tiddlers/webserver/Using the external JavaScript template.tid +2 -2
- package/editions/tw5.com/tiddlers/webserver/Using the integrated static file server.tid +17 -2
- package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ use-browse-cache.tid +25 -0
- package/editions/tw5.com/tiddlers/webserver/WebServer.tid +1 -1
- package/editions/tw5.com/tiddlers/widgets/ActionDeleteFieldWidget.tid +51 -20
- package/editions/tw5.com/tiddlers/widgets/ActionDeleteTiddlerWidget.tid +16 -14
- package/editions/tw5.com/tiddlers/widgets/ActionListopsWidget.tid +5 -3
- package/editions/tw5.com/tiddlers/widgets/DataWidget.tid +42 -0
- package/editions/tw5.com/tiddlers/widgets/EncryptWidget.tid +5 -5
- package/editions/tw5.com/tiddlers/widgets/ImageWidget.tid +32 -0
- package/editions/tw5.com/tiddlers/widgets/RevealWidget.tid +2 -2
- package/editions/tw5.com/tiddlers/widgets/ScrollableWidget.tid +10 -0
- package/editions/tw5.com/tiddlers/widgets/TestCaseWidget.tid +107 -0
- package/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid +34 -34
- package/editions/tw5.com/tiddlers/widgets/Widgets.tid +4 -4
- package/editions/tw5.com/tiddlers/wikitext/Block Quotes in WikiText.tid +32 -1
- package/editions/tw5.com/tiddlers/wikitext/Hard Linebreaks in WikiText.tid +7 -3
- package/editions/tw5.com/tiddlers/wikitext/Transclusion and Substitution.tid +2 -2
- package/editions/tw5.com/tiddlers/wikitext/Transclusion in WikiText.tid +27 -6
- package/editions/tw5.com/tiddlers/wikitext/parser/Block Mode WikiText.tid +2 -2
- package/editions/tw5.com/tiddlers/workingwithtw/Sharing your tiddlers with others.tid +2 -2
- package/editions/tw5.com/tiddlywiki.info +5 -2
- package/languages/de-DE/Buttons.multids +4 -1
- package/languages/de-DE/ControlPanel.multids +7 -1
- package/languages/de-DE/Dates.multids +1 -1
- package/languages/de-DE/Docs/ModuleTypes.multids +2 -2
- package/languages/de-DE/Docs/PaletteColours.multids +4 -1
- package/languages/de-DE/EditTemplate.multids +1 -1
- package/languages/de-DE/Exporters.multids +1 -1
- package/languages/de-DE/Fields.multids +3 -1
- package/languages/de-DE/Help/build.tid +1 -1
- package/languages/de-DE/Help/clearpassword.tid +2 -2
- package/languages/de-DE/Help/commands.tid +2 -2
- package/languages/de-DE/Help/editions.tid +1 -1
- package/languages/de-DE/Help/fetch.tid +6 -6
- package/languages/de-DE/Help/import.tid +5 -5
- package/languages/de-DE/Help/init.tid +1 -1
- package/languages/de-DE/Help/listen.tid +8 -8
- package/languages/de-DE/Help/load.tid +3 -3
- package/languages/de-DE/Help/makelibrary.tid +2 -2
- package/languages/de-DE/Help/output.tid +2 -2
- package/languages/de-DE/Help/password.tid +1 -1
- package/languages/de-DE/Help/render.tid +6 -6
- package/languages/de-DE/Help/save.tid +3 -4
- package/languages/de-DE/Help/server.tid +5 -0
- package/languages/de-DE/Help/setfield.tid +1 -1
- package/languages/de-DE/Import.multids +1 -1
- package/languages/de-DE/Misc.multids +6 -6
- package/languages/de-DE/Modals/Download.tid +0 -1
- package/languages/de-DE/NewJournal.multids +1 -1
- package/languages/de-DE/Notifications.multids +1 -1
- package/languages/de-DE/Search.multids +1 -1
- package/languages/de-DE/SideBar.multids +1 -1
- package/languages/de-DE/SiteSubtitle.tid +1 -1
- package/languages/de-DE/ThemeTweaks.multids +1 -1
- package/languages/de-DE/TiddlerInfo.multids +1 -1
- package/languages/fr-FR/Buttons.multids +1 -0
- package/languages/fr-FR/ControlPanel.multids +6 -0
- package/languages/fr-FR/Docs/ModuleTypes.multids +1 -1
- package/languages/fr-FR/Docs/PaletteColours.multids +3 -0
- package/languages/fr-FR/Fields.multids +3 -1
- package/languages/fr-FR/Help/commands.tid +1 -1
- package/languages/fr-FR/Help/savewikifolder.tid +15 -0
- package/languages/fr-FR/Help/server.tid +1 -1
- package/languages/fr-FR/Types/application_javascript.tid +3 -3
- package/languages/fr-FR/Types/application_json.tid +2 -2
- package/languages/fr-FR/Types/application_x_tiddler_dictionary.tid +2 -2
- package/languages/fr-FR/Types/image_gif.tid +2 -2
- package/languages/fr-FR/Types/image_jpeg.tid +1 -1
- package/languages/fr-FR/Types/image_png.tid +1 -1
- package/languages/fr-FR/Types/image_svg_xml.tid +1 -1
- package/languages/fr-FR/Types/image_x-icon.tid +1 -1
- package/languages/fr-FR/Types/text_css.tid +2 -2
- package/languages/fr-FR/Types/text_html.tid +2 -2
- package/languages/fr-FR/Types/text_plain.tid +2 -2
- package/languages/fr-FR/Types/text_vnd.tiddlywiki.tid +2 -2
- package/languages/fr-FR/Types/text_x-tiddlywiki.tid +1 -1
- package/languages/mk-MK/Buttons.multids +195 -0
- package/languages/mk-MK/ControlPanel.multids +231 -0
- package/languages/mk-MK/CoreReadMe.tid +8 -0
- package/languages/mk-MK/Dates.multids +87 -0
- package/languages/mk-MK/Docs/ModuleTypes.multids +30 -0
- package/languages/mk-MK/Docs/PaletteColours.multids +109 -0
- package/languages/mk-MK/EditTemplate.multids +38 -0
- package/languages/mk-MK/Exporters.multids +6 -0
- package/languages/mk-MK/Fields.multids +43 -0
- package/languages/mk-MK/Filters.multids +16 -0
- package/languages/mk-MK/GettingStarted.tid +18 -0
- package/languages/mk-MK/Help/build.tid +11 -0
- package/languages/mk-MK/Help/clearpassword.tid +8 -0
- package/languages/mk-MK/Help/commands.tid +18 -0
- package/languages/mk-MK/Help/default.tid +26 -0
- package/languages/mk-MK/Help/deletetiddlers.tid +8 -0
- package/languages/mk-MK/Help/editions.tid +8 -0
- package/languages/mk-MK/Help/fetch.tid +38 -0
- package/languages/mk-MK/Help/help.tid +10 -0
- package/languages/mk-MK/Help/import.tid +24 -0
- package/languages/mk-MK/Help/init.tid +23 -0
- package/languages/mk-MK/Help/listen.tid +35 -0
- package/languages/mk-MK/Help/load.tid +19 -0
- package/languages/mk-MK/Help/makelibrary.tid +14 -0
- package/languages/mk-MK/Help/notfound.tid +4 -0
- package/languages/mk-MK/Help/output.tid +11 -0
- package/languages/mk-MK/Help/password.tid +10 -0
- package/languages/mk-MK/Help/render.tid +35 -0
- package/languages/mk-MK/Help/rendertiddler.tid +24 -0
- package/languages/mk-MK/Help/rendertiddlers.tid +20 -0
- package/languages/mk-MK/Help/save.tid +25 -0
- package/languages/mk-MK/Help/savetiddler.tid +14 -0
- package/languages/mk-MK/Help/savetiddlers.tid +16 -0
- package/languages/mk-MK/Help/savewikifolder.tid +34 -0
- package/languages/mk-MK/Help/server.tid +43 -0
- package/languages/mk-MK/Help/setfield.tid +17 -0
- package/languages/mk-MK/Help/unpackplugin.tid +8 -0
- package/languages/mk-MK/Help/verbose.tid +8 -0
- package/languages/mk-MK/Help/version.tid +8 -0
- package/languages/mk-MK/Import.multids +34 -0
- package/languages/mk-MK/Misc.multids +99 -0
- package/languages/mk-MK/Modals/Download.tid +13 -0
- package/languages/mk-MK/NewJournal.multids +5 -0
- package/languages/mk-MK/Notifications.multids +6 -0
- package/languages/mk-MK/Search.multids +20 -0
- package/languages/mk-MK/SideBar.multids +18 -0
- package/languages/mk-MK/SiteSubtitle.tid +3 -0
- package/languages/mk-MK/SiteTitle.tid +3 -0
- package/languages/mk-MK/Snippets/ListByTag.tid +5 -0
- package/languages/mk-MK/Snippets/MacroDefinition.tid +7 -0
- package/languages/mk-MK/Snippets/Table4x3.tid +8 -0
- package/languages/mk-MK/Snippets/TableOfContents.tid +9 -0
- package/languages/mk-MK/ThemeTweaks.multids +42 -0
- package/languages/mk-MK/TiddlerInfo.multids +21 -0
- package/languages/mk-MK/Types/application%2Fjavascript.tid +4 -0
- package/languages/mk-MK/Types/application%2Fjson.tid +4 -0
- package/languages/mk-MK/Types/application%2Fx-tiddler-dictionary.tid +4 -0
- package/languages/mk-MK/Types/image%2Fgif.tid +4 -0
- package/languages/mk-MK/Types/image%2Fjpeg.tid +4 -0
- package/languages/mk-MK/Types/image%2Fpng.tid +4 -0
- package/languages/mk-MK/Types/image%2Fsvg%2Bxml.tid +4 -0
- package/languages/mk-MK/Types/image%2Fx-icon.tid +4 -0
- package/languages/mk-MK/Types/text%2Fcss.tid +4 -0
- package/languages/mk-MK/Types/text%2Fhtml.tid +4 -0
- package/languages/mk-MK/Types/text%2Fplain.tid +4 -0
- package/languages/mk-MK/Types/text%2Fvnd.tiddlywiki.tid +4 -0
- package/languages/mk-MK/Types/text%2Fx-tiddlywiki.tid +4 -0
- package/languages/mk-MK/icon.tid +8 -0
- package/languages/mk-MK/plugin.info +8 -0
- package/languages/pl-PL/Dates.multids +41 -41
- package/languages/zh-Hans/Buttons.multids +3 -0
- package/languages/zh-Hans/ControlPanel.multids +6 -0
- package/languages/zh-Hans/Docs/ModuleTypes.multids +1 -1
- package/languages/zh-Hans/Docs/PaletteColours.multids +7 -0
- package/languages/zh-Hans/Fields.multids +2 -0
- package/languages/zh-Hans/Misc.multids +3 -3
- package/languages/zh-Hant/Buttons.multids +3 -0
- package/languages/zh-Hant/ControlPanel.multids +6 -0
- package/languages/zh-Hant/Docs/ModuleTypes.multids +1 -1
- package/languages/zh-Hant/Docs/PaletteColours.multids +7 -0
- package/languages/zh-Hant/Fields.multids +2 -0
- package/languages/zh-Hant/Misc.multids +2 -2
- package/license +1 -1
- package/licenses/cla-individual.md +14 -0
- package/package.json +1 -1
- package/plugins/tiddlywiki/async/plugin.info +2 -1
- package/plugins/tiddlywiki/aws/plugin.info +2 -1
- package/plugins/tiddlywiki/aws/templates/lambda/sjcl.tid +2 -2
- package/plugins/tiddlywiki/bibtex/plugin.info +2 -1
- package/plugins/tiddlywiki/blog/plugin.info +2 -1
- package/plugins/tiddlywiki/browser-sniff/plugin.info +2 -1
- package/plugins/tiddlywiki/browser-storage/plugin.info +2 -1
- package/plugins/tiddlywiki/cecily/plugin.info +2 -1
- package/plugins/tiddlywiki/classictools/modules/recipe.js +9 -0
- package/plugins/tiddlywiki/classictools/plugin.info +2 -1
- package/plugins/tiddlywiki/classictools/templates/tiddlywiki2.externaljs.template.html.tid +4 -4
- package/plugins/tiddlywiki/classictools/templates/tiddlywiki2.template.html.tid +21 -21
- package/plugins/tiddlywiki/codemirror/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-autocomplete/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-closebrackets/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-closetag/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-fullscreen-editing/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-keymap-emacs/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-keymap-sublime-text/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-keymap-vim/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-css/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-htmlembedded/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-htmlmixed/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-javascript/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-markdown/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-x-tiddlywiki/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-mode-xml/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-search-replace/plugin.info +2 -1
- package/plugins/tiddlywiki/codemirror-trailingspace/plugin.info +2 -1
- package/plugins/tiddlywiki/comments/plugin.info +2 -1
- package/plugins/tiddlywiki/confetti/confetti-manager.js +56 -0
- package/plugins/tiddlywiki/confetti/confetti-widget.js +67 -0
- package/plugins/tiddlywiki/confetti/examples/staggered.tid +10 -0
- package/plugins/tiddlywiki/confetti/examples/typing-trigger.tid +10 -0
- package/plugins/tiddlywiki/confetti/files/LICENSE +15 -0
- package/plugins/tiddlywiki/confetti/files/confetti.js +626 -0
- package/plugins/tiddlywiki/confetti/files/tiddlywiki.files +20 -0
- package/plugins/tiddlywiki/confetti/plugin.info +7 -0
- package/plugins/tiddlywiki/confetti/readme.tid +65 -0
- package/plugins/tiddlywiki/confetti/startup.js +63 -0
- package/plugins/tiddlywiki/consent-banner/plugin.info +2 -1
- package/plugins/tiddlywiki/d3/plugin.info +2 -1
- package/plugins/tiddlywiki/dynannotate/docs/readme.tid +10 -0
- package/plugins/tiddlywiki/dynannotate/examples/spotlight.tid +71 -0
- package/plugins/tiddlywiki/dynannotate/modules/element-spotlight.js +136 -0
- package/plugins/tiddlywiki/dynannotate/modules/startup.js +24 -1
- package/plugins/tiddlywiki/dynannotate/plugin.info +2 -1
- package/plugins/tiddlywiki/dynannotate/styles.tid +17 -0
- package/plugins/tiddlywiki/dynaview/plugin.info +2 -1
- package/plugins/tiddlywiki/evernote/plugin.info +2 -1
- package/plugins/tiddlywiki/external-attachments/plugin.info +2 -1
- package/plugins/tiddlywiki/filesystem/plugin.info +2 -1
- package/plugins/tiddlywiki/freelinks/plugin.info +2 -1
- package/plugins/tiddlywiki/geospatial/baselayers/TagsGeoBaseLayer.tid +2 -0
- package/plugins/tiddlywiki/geospatial/baselayers/esri-world-imagery.tid +7 -0
- package/plugins/tiddlywiki/geospatial/baselayers/openstreetmap.tid +7 -0
- package/plugins/tiddlywiki/geospatial/baselayers/opentopomap.tid +7 -0
- package/plugins/tiddlywiki/geospatial/docs/flickr.tid +141 -0
- package/plugins/tiddlywiki/geospatial/docs/geobaselayer.tid +20 -0
- package/plugins/tiddlywiki/geospatial/docs/geodifference.tid +20 -0
- package/plugins/tiddlywiki/geospatial/docs/geodistance.tid +14 -0
- package/plugins/tiddlywiki/geospatial/docs/geointersect.tid +20 -0
- package/plugins/tiddlywiki/geospatial/docs/geolayer.tid +24 -0
- package/plugins/tiddlywiki/geospatial/docs/geolocation.tid +92 -0
- package/plugins/tiddlywiki/geospatial/docs/geolookup.tid +16 -0
- package/plugins/tiddlywiki/geospatial/docs/geomap.tid +122 -0
- package/plugins/tiddlywiki/geospatial/docs/geonearestpoint.tid +19 -0
- package/plugins/tiddlywiki/geospatial/docs/geopoint.tid +22 -0
- package/plugins/tiddlywiki/geospatial/docs/geounion.tid +20 -0
- package/plugins/tiddlywiki/geospatial/docs/olc-decode.tid +14 -0
- package/plugins/tiddlywiki/geospatial/docs/olc-encode.tid +14 -0
- package/plugins/tiddlywiki/geospatial/docs.tid +3 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/LICENSE +26 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/images/layers-2x.png +0 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/images/layers.png +0 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/images/marker-icon-2x.png +0 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/images/marker-icon.png +0 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/images/marker-shadow.png +0 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/leaflet-src.js +14512 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/leaflet-src.js.map +1 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/leaflet.css +661 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/leaflet.js +6 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/leaflet.js.map +1 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.js/tiddlywiki.files +34 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/MIT-LICENCE.txt +20 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/MarkerCluster.Default.css +60 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/MarkerCluster.css +14 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster-src.js +2718 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster-src.js.map +1 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster.js +2 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster.js.map +1 -0
- package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/tiddlywiki.files +41 -0
- package/plugins/tiddlywiki/geospatial/files/open-location-code/LICENSE +202 -0
- package/plugins/tiddlywiki/geospatial/files/open-location-code/openlocationcode.js +695 -0
- package/plugins/tiddlywiki/geospatial/files/open-location-code/openlocationcode.min.js +1 -0
- package/plugins/tiddlywiki/geospatial/files/open-location-code/tiddlywiki.files +21 -0
- package/plugins/tiddlywiki/geospatial/files/turf.js/LICENSE +20 -0
- package/plugins/tiddlywiki/geospatial/files/turf.js/tiddlywiki.files +21 -0
- package/plugins/tiddlywiki/geospatial/files/turf.js/turf.6.5.0.js +88 -0
- package/plugins/tiddlywiki/geospatial/geotools.js +41 -0
- package/plugins/tiddlywiki/geospatial/helpers/Flickr.tid +99 -0
- package/plugins/tiddlywiki/geospatial/helpers/FlickrDefaultPhotoTemplate.tid +11 -0
- package/plugins/tiddlywiki/geospatial/icon.tid +6 -0
- package/plugins/tiddlywiki/geospatial/images/markers/pin.svg +9 -0
- package/plugins/tiddlywiki/geospatial/images/markers/pin.svg.meta +2 -0
- package/plugins/tiddlywiki/geospatial/license.tid +10 -0
- package/plugins/tiddlywiki/geospatial/operators/helper.js +24 -0
- package/plugins/tiddlywiki/geospatial/operators/lookup.js +45 -0
- package/plugins/tiddlywiki/geospatial/operators/measurement.js +54 -0
- package/plugins/tiddlywiki/geospatial/operators/olc.js +55 -0
- package/plugins/tiddlywiki/geospatial/operators/transformation.js +88 -0
- package/plugins/tiddlywiki/geospatial/plugin.info +7 -0
- package/plugins/tiddlywiki/geospatial/readme.tid +13 -0
- package/plugins/tiddlywiki/geospatial/settings.tid +24 -0
- package/plugins/tiddlywiki/geospatial/startup.js +78 -0
- package/plugins/tiddlywiki/geospatial/styles.tid +10 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geodifference-interactive.tid +63 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geodifference.tid +54 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geodistance.tid +30 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geointersect-interactive.tid +63 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geointersect.tid +54 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geolookup.tid +64 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geonearestpoint.tid +28 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geonearestpoint2.tid +45 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geopoint.tid +21 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geounion-interactive.tid +63 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/geounion.tid +54 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/olc-decode.tid +20 -0
- package/plugins/tiddlywiki/geospatial/tests/operators/olc-encode.tid +20 -0
- package/plugins/tiddlywiki/geospatial/tests/widgets/geomap-draggable-marker.tid +40 -0
- package/plugins/tiddlywiki/geospatial/tests/widgets/geomap-refresh.tid +62 -0
- package/plugins/tiddlywiki/geospatial/tests/widgets/geomap.tid +54 -0
- package/plugins/tiddlywiki/geospatial/widgets/geobaselayer.js +17 -0
- package/plugins/tiddlywiki/geospatial/widgets/geolayer.js +17 -0
- package/plugins/tiddlywiki/geospatial/widgets/geomap.js +301 -0
- package/plugins/tiddlywiki/github-fork-ribbon/plugin.info +2 -1
- package/plugins/tiddlywiki/github-fork-ribbon/readme.tid +2 -4
- package/plugins/tiddlywiki/github-fork-ribbon/styles.tid +10 -11
- package/plugins/tiddlywiki/github-fork-ribbon/template.tid +26 -0
- package/plugins/tiddlywiki/github-fork-ribbon/usage.tid +79 -24
- package/plugins/tiddlywiki/googleanalytics/plugin.info +2 -1
- package/plugins/tiddlywiki/hammerjs/plugin.info +2 -1
- package/plugins/tiddlywiki/help/plugin.info +2 -1
- package/plugins/tiddlywiki/highlight/files/tiddlywiki.files +0 -1
- package/plugins/tiddlywiki/highlight/plugin.info +2 -1
- package/plugins/tiddlywiki/highlight-legacy/plugin.info +2 -1
- package/plugins/tiddlywiki/innerwiki/anchor.js +17 -0
- package/plugins/tiddlywiki/innerwiki/innerwiki.js +6 -66
- package/plugins/tiddlywiki/innerwiki/plugin.info +2 -1
- package/plugins/tiddlywiki/internals/plugin.info +2 -1
- package/plugins/tiddlywiki/jasmine/plugin.info +2 -1
- package/plugins/tiddlywiki/jasmine/run-wiki-based-tests.js +21 -18
- package/plugins/tiddlywiki/jszip/plugin.info +2 -1
- package/plugins/tiddlywiki/katex/plugin.info +2 -1
- package/plugins/tiddlywiki/markdown/plugin.info +2 -1
- package/plugins/tiddlywiki/markdown-legacy/plugin.info +2 -1
- package/plugins/tiddlywiki/menubar/items/pagecontrols.tid +9 -10
- package/plugins/tiddlywiki/menubar/plugin.info +2 -1
- package/plugins/tiddlywiki/mobiledragdrop/plugin.info +2 -1
- package/plugins/tiddlywiki/nodewebkitsaver/plugin.info +2 -1
- package/plugins/tiddlywiki/pluginlibrary/plugin.info +2 -1
- package/plugins/tiddlywiki/powered-by-tiddlywiki/plugin.info +2 -1
- package/plugins/tiddlywiki/qrcode/plugin.info +2 -1
- package/plugins/tiddlywiki/railroad/plugin.info +2 -1
- package/plugins/tiddlywiki/savetrail/plugin.info +2 -1
- package/plugins/tiddlywiki/sax/plugin.info +2 -1
- package/plugins/tiddlywiki/share/plugin.info +2 -1
- package/plugins/tiddlywiki/stacked-view/plugin.info +2 -1
- package/plugins/tiddlywiki/tahoelafs/plugin.info +2 -1
- package/plugins/tiddlywiki/text-slicer/plugin.info +2 -1
- package/plugins/tiddlywiki/tiddlyweb/plugin.info +2 -1
- package/plugins/tiddlywiki/tour/config-AutoStartTour.tid +2 -0
- package/plugins/tiddlywiki/tour/config-CurrentTour.tid +2 -0
- package/plugins/tiddlywiki/tour/config-DefaultColourMappings.multids +31 -0
- package/plugins/tiddlywiki/tour/config-ShowTour.tid +2 -0
- package/plugins/tiddlywiki/tour/docs.tid +25 -0
- package/plugins/tiddlywiki/tour/images/tour-button-icon.tid +9 -0
- package/plugins/tiddlywiki/tour/plugin.info +8 -0
- package/plugins/tiddlywiki/tour/readme.tid +3 -0
- package/plugins/tiddlywiki/tour/settings.tid +154 -0
- package/plugins/tiddlywiki/tour/simplified-tiddler-with-tags.tid +106 -0
- package/plugins/tiddlywiki/tour/simplified-tiddler.tid +22 -0
- package/plugins/tiddlywiki/tour/start-tour-button.tid +18 -0
- package/plugins/tiddlywiki/tour/startup-actions.tid +7 -0
- package/plugins/tiddlywiki/tour/styles.tid +261 -0
- package/plugins/tiddlywiki/tour/tour-panel.tid +104 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/config/ProductName.tid +2 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-GasGiant.tid +4 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-Jupiter.tid +5 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-Mars.tid +5 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-Planet.tid +4 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-Rocky.tid +4 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/data/tiddlers-Saturn.tid +5 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/images/tiddlywiki-tour-logo.svg +28 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/images/tiddlywiki-tour-logo.svg.meta +2 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/introduction-to-tiddlywiki.tid +8 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/settings.tid +4 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/close-control-panel.tid +9 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/closing-tiddlers.tid +25 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/create-tiddler.tid +11 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/end-of-fullscreen.tid +10 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/finished.tid +13 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/links.tid +23 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/open-control-panel.tid +9 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/recent.tid +9 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/search.tid +9 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/tags.tid +26 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/tiddlers.tid +16 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/steps/welcome.tid +10 -0
- package/plugins/tiddlywiki/tour/tours/introduction-to-tiddlywiki/tagsTourIntroductionToTiddlyWiki.tid +2 -0
- package/plugins/tiddlywiki/tour/variables.tid +104 -0
- package/plugins/tiddlywiki/translators/plugin.info +2 -1
- package/plugins/tiddlywiki/tw2parser/plugin.info +2 -1
- package/plugins/tiddlywiki/tw5.com-docs/plugin.info +2 -1
- package/plugins/tiddlywiki/tw5.com-docs/readme.tid +7 -0
- package/plugins/tiddlywiki/twitter/plugin.info +2 -1
- package/plugins/tiddlywiki/twitter-archivist/plugin.info +2 -1
- package/plugins/tiddlywiki/upgrade/plugin.info +2 -1
- package/plugins/tiddlywiki/xlsx-utils/plugin.info +2 -1
- package/plugins/tiddlywiki/xmldom/plugin.info +2 -1
- package/readme.md +6 -6
- package/themes/tiddlywiki/vanilla/base.tid +212 -9
- package/themes/tiddlywiki/vanilla/reset.tid +61 -85
- package/boot/sjcl.js.meta +0 -3
- package/core/modules/indexers/backlinks-index.js +0 -86
- package/editions/es-ES/tiddlers/$__StoryList.tid +0 -6
- package/editions/tw.org/tiddlers/$__StoryList.tid +0 -3
- package/editions/tw5.com/tiddlers/$__StoryList.tid +0 -5
- package/plugins/tiddlywiki/innerwiki/data.js +0 -58
- /package/editions/fr-FR/tiddlers/community/editions/{_Noteself_ by Danielo Rodr/303/255guez.tid" → _Noteself_ by Danielo Rodriguez.tid} +0 -0
- /package/editions/test/tiddlers/tests/data/macros/{NestedMacros-indented.tid → nested-macros/NestedMacros-indented.tid} +0 -0
- /package/editions/test/tiddlers/tests/data/macros/{NestedMacros-indented2.tid → nested-macros/NestedMacros-indented2.tid} +0 -0
- /package/editions/test/tiddlers/tests/data/macros/{NestedMacros.tid → nested-macros/NestedMacros.tid} +0 -0
- /package/editions/test/tiddlers/tests/data/macros/{TrailingNewlines.tid → trailing-newlines/TrailingNewlines.tid} +0 -0
- /package/editions/tw5.com/tiddlers/{Tables in WikiText CSS Utility Classes.tid → wikitext/Tables in WikiText CSS Utility Classes.tid} +0 -0
package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster-src.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"leaflet.markercluster-src.js","sources":["../src/MarkerClusterGroup.js","../src/MarkerCluster.js","../src/MarkerOpacity.js","../src/DistanceGrid.js","../src/MarkerCluster.QuickHull.js","../src/MarkerCluster.Spiderfier.js","../src/MarkerClusterGroup.Refresh.js"],"sourcesContent":["/*\n * L.MarkerClusterGroup extends L.FeatureGroup by clustering the markers contained within\n */\n\nexport var MarkerClusterGroup = L.MarkerClusterGroup = L.FeatureGroup.extend({\n\n\toptions: {\n\t\tmaxClusterRadius: 80, //A cluster will cover at most this many pixels from its center\n\t\ticonCreateFunction: null,\n\t\tclusterPane: L.Marker.prototype.options.pane,\n\n\t\tspiderfyOnEveryZoom: false,\n\t\tspiderfyOnMaxZoom: true,\n\t\tshowCoverageOnHover: true,\n\t\tzoomToBoundsOnClick: true,\n\t\tsingleMarkerMode: false,\n\n\t\tdisableClusteringAtZoom: null,\n\n\t\t// Setting this to false prevents the removal of any clusters outside of the viewpoint, which\n\t\t// is the default behaviour for performance reasons.\n\t\tremoveOutsideVisibleBounds: true,\n\n\t\t// Set to false to disable all animations (zoom and spiderfy).\n\t\t// If false, option animateAddingMarkers below has no effect.\n\t\t// If L.DomUtil.TRANSITION is falsy, this option has no effect.\n\t\tanimate: true,\n\n\t\t//Whether to animate adding markers after adding the MarkerClusterGroup to the map\n\t\t// If you are adding individual markers set to true, if adding bulk markers leave false for massive performance gains.\n\t\tanimateAddingMarkers: false,\n\n\t\t// Make it possible to provide custom function to calculate spiderfy shape positions\n\t\tspiderfyShapePositions: null,\n\n\t\t//Increase to increase the distance away that spiderfied markers appear from the center\n\t\tspiderfyDistanceMultiplier: 1,\n\n\t\t// Make it possible to specify a polyline options on a spider leg\n\t\tspiderLegPolylineOptions: { weight: 1.5, color: '#222', opacity: 0.5 },\n\n\t\t// When bulk adding layers, adds markers in chunks. Means addLayers may not add all the layers in the call, others will be loaded during setTimeouts\n\t\tchunkedLoading: false,\n\t\tchunkInterval: 200, // process markers for a maximum of ~ n milliseconds (then trigger the chunkProgress callback)\n\t\tchunkDelay: 50, // at the end of each interval, give n milliseconds back to system/browser\n\t\tchunkProgress: null, // progress callback: function(processed, total, elapsed) (e.g. for a progress indicator)\n\n\t\t//Options to pass to the L.Polygon constructor\n\t\tpolygonOptions: {}\n\t},\n\n\tinitialize: function (options) {\n\t\tL.Util.setOptions(this, options);\n\t\tif (!this.options.iconCreateFunction) {\n\t\t\tthis.options.iconCreateFunction = this._defaultIconCreateFunction;\n\t\t}\n\n\t\tthis._featureGroup = L.featureGroup();\n\t\tthis._featureGroup.addEventParent(this);\n\n\t\tthis._nonPointGroup = L.featureGroup();\n\t\tthis._nonPointGroup.addEventParent(this);\n\n\t\tthis._inZoomAnimation = 0;\n\t\tthis._needsClustering = [];\n\t\tthis._needsRemoving = []; //Markers removed while we aren't on the map need to be kept track of\n\t\t//The bounds of the currently shown area (from _getExpandedVisibleBounds) Updated on zoom/move\n\t\tthis._currentShownBounds = null;\n\n\t\tthis._queue = [];\n\n\t\tthis._childMarkerEventHandlers = {\n\t\t\t'dragstart': this._childMarkerDragStart,\n\t\t\t'move': this._childMarkerMoved,\n\t\t\t'dragend': this._childMarkerDragEnd,\n\t\t};\n\n\t\t// Hook the appropriate animation methods.\n\t\tvar animate = L.DomUtil.TRANSITION && this.options.animate;\n\t\tL.extend(this, animate ? this._withAnimation : this._noAnimation);\n\t\t// Remember which MarkerCluster class to instantiate (animated or not).\n\t\tthis._markerCluster = animate ? L.MarkerCluster : L.MarkerClusterNonAnimated;\n\t},\n\n\taddLayer: function (layer) {\n\n\t\tif (layer instanceof L.LayerGroup) {\n\t\t\treturn this.addLayers([layer]);\n\t\t}\n\n\t\t//Don't cluster non point data\n\t\tif (!layer.getLatLng) {\n\t\t\tthis._nonPointGroup.addLayer(layer);\n\t\t\tthis.fire('layeradd', { layer: layer });\n\t\t\treturn this;\n\t\t}\n\n\t\tif (!this._map) {\n\t\t\tthis._needsClustering.push(layer);\n\t\t\tthis.fire('layeradd', { layer: layer });\n\t\t\treturn this;\n\t\t}\n\n\t\tif (this.hasLayer(layer)) {\n\t\t\treturn this;\n\t\t}\n\n\n\t\t//If we have already clustered we'll need to add this one to a cluster\n\n\t\tif (this._unspiderfy) {\n\t\t\tthis._unspiderfy();\n\t\t}\n\n\t\tthis._addLayer(layer, this._maxZoom);\n\t\tthis.fire('layeradd', { layer: layer });\n\n\t\t// Refresh bounds and weighted positions.\n\t\tthis._topClusterLevel._recalculateBounds();\n\n\t\tthis._refreshClustersIcons();\n\n\t\t//Work out what is visible\n\t\tvar visibleLayer = layer,\n\t\t currentZoom = this._zoom;\n\t\tif (layer.__parent) {\n\t\t\twhile (visibleLayer.__parent._zoom >= currentZoom) {\n\t\t\t\tvisibleLayer = visibleLayer.__parent;\n\t\t\t}\n\t\t}\n\n\t\tif (this._currentShownBounds.contains(visibleLayer.getLatLng())) {\n\t\t\tif (this.options.animateAddingMarkers) {\n\t\t\t\tthis._animationAddLayer(layer, visibleLayer);\n\t\t\t} else {\n\t\t\t\tthis._animationAddLayerNonAnimated(layer, visibleLayer);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t},\n\n\tremoveLayer: function (layer) {\n\n\t\tif (layer instanceof L.LayerGroup) {\n\t\t\treturn this.removeLayers([layer]);\n\t\t}\n\n\t\t//Non point layers\n\t\tif (!layer.getLatLng) {\n\t\t\tthis._nonPointGroup.removeLayer(layer);\n\t\t\tthis.fire('layerremove', { layer: layer });\n\t\t\treturn this;\n\t\t}\n\n\t\tif (!this._map) {\n\t\t\tif (!this._arraySplice(this._needsClustering, layer) && this.hasLayer(layer)) {\n\t\t\t\tthis._needsRemoving.push({ layer: layer, latlng: layer._latlng });\n\t\t\t}\n\t\t\tthis.fire('layerremove', { layer: layer });\n\t\t\treturn this;\n\t\t}\n\n\t\tif (!layer.__parent) {\n\t\t\treturn this;\n\t\t}\n\n\t\tif (this._unspiderfy) {\n\t\t\tthis._unspiderfy();\n\t\t\tthis._unspiderfyLayer(layer);\n\t\t}\n\n\t\t//Remove the marker from clusters\n\t\tthis._removeLayer(layer, true);\n\t\tthis.fire('layerremove', { layer: layer });\n\n\t\t// Refresh bounds and weighted positions.\n\t\tthis._topClusterLevel._recalculateBounds();\n\n\t\tthis._refreshClustersIcons();\n\n\t\tlayer.off(this._childMarkerEventHandlers, this);\n\n\t\tif (this._featureGroup.hasLayer(layer)) {\n\t\t\tthis._featureGroup.removeLayer(layer);\n\t\t\tif (layer.clusterShow) {\n\t\t\t\tlayer.clusterShow();\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\t//Takes an array of markers and adds them in bulk\n\taddLayers: function (layersArray, skipLayerAddEvent) {\n\t\tif (!L.Util.isArray(layersArray)) {\n\t\t\treturn this.addLayer(layersArray);\n\t\t}\n\n\t\tvar fg = this._featureGroup,\n\t\t npg = this._nonPointGroup,\n\t\t chunked = this.options.chunkedLoading,\n\t\t chunkInterval = this.options.chunkInterval,\n\t\t chunkProgress = this.options.chunkProgress,\n\t\t l = layersArray.length,\n\t\t offset = 0,\n\t\t originalArray = true,\n\t\t m;\n\n\t\tif (this._map) {\n\t\t\tvar started = (new Date()).getTime();\n\t\t\tvar process = L.bind(function () {\n\t\t\t\tvar start = (new Date()).getTime();\n\n\t\t\t\t// Make sure to unspiderfy before starting to add some layers\n\t\t\t\tif (this._map && this._unspiderfy) {\n\t\t\t\t\tthis._unspiderfy();\n\t\t\t\t}\n\n\t\t\t\tfor (; offset < l; offset++) {\n\t\t\t\t\tif (chunked && offset % 200 === 0) {\n\t\t\t\t\t\t// every couple hundred markers, instrument the time elapsed since processing started:\n\t\t\t\t\t\tvar elapsed = (new Date()).getTime() - start;\n\t\t\t\t\t\tif (elapsed > chunkInterval) {\n\t\t\t\t\t\t\tbreak; // been working too hard, time to take a break :-)\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tm = layersArray[offset];\n\n\t\t\t\t\t// Group of layers, append children to layersArray and skip.\n\t\t\t\t\t// Side effects:\n\t\t\t\t\t// - Total increases, so chunkProgress ratio jumps backward.\n\t\t\t\t\t// - Groups are not included in this group, only their non-group child layers (hasLayer).\n\t\t\t\t\t// Changing array length while looping does not affect performance in current browsers:\n\t\t\t\t\t// http://jsperf.com/for-loop-changing-length/6\n\t\t\t\t\tif (m instanceof L.LayerGroup) {\n\t\t\t\t\t\tif (originalArray) {\n\t\t\t\t\t\t\tlayersArray = layersArray.slice();\n\t\t\t\t\t\t\toriginalArray = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis._extractNonGroupLayers(m, layersArray);\n\t\t\t\t\t\tl = layersArray.length;\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t//Not point data, can't be clustered\n\t\t\t\t\tif (!m.getLatLng) {\n\t\t\t\t\t\tnpg.addLayer(m);\n\t\t\t\t\t\tif (!skipLayerAddEvent) {\n\t\t\t\t\t\t\tthis.fire('layeradd', { layer: m });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (this.hasLayer(m)) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis._addLayer(m, this._maxZoom);\n\t\t\t\t\tif (!skipLayerAddEvent) {\n\t\t\t\t\t\tthis.fire('layeradd', { layer: m });\n\t\t\t\t\t}\n\n\t\t\t\t\t//If we just made a cluster of size 2 then we need to remove the other marker from the map (if it is) or we never will\n\t\t\t\t\tif (m.__parent) {\n\t\t\t\t\t\tif (m.__parent.getChildCount() === 2) {\n\t\t\t\t\t\t\tvar markers = m.__parent.getAllChildMarkers(),\n\t\t\t\t\t\t\t otherMarker = markers[0] === m ? markers[1] : markers[0];\n\t\t\t\t\t\t\tfg.removeLayer(otherMarker);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (chunkProgress) {\n\t\t\t\t\t// report progress and time elapsed:\n\t\t\t\t\tchunkProgress(offset, l, (new Date()).getTime() - started);\n\t\t\t\t}\n\n\t\t\t\t// Completed processing all markers.\n\t\t\t\tif (offset === l) {\n\n\t\t\t\t\t// Refresh bounds and weighted positions.\n\t\t\t\t\tthis._topClusterLevel._recalculateBounds();\n\n\t\t\t\t\tthis._refreshClustersIcons();\n\n\t\t\t\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, this._zoom, this._currentShownBounds);\n\t\t\t\t} else {\n\t\t\t\t\tsetTimeout(process, this.options.chunkDelay);\n\t\t\t\t}\n\t\t\t}, this);\n\n\t\t\tprocess();\n\t\t} else {\n\t\t\tvar needsClustering = this._needsClustering;\n\n\t\t\tfor (; offset < l; offset++) {\n\t\t\t\tm = layersArray[offset];\n\n\t\t\t\t// Group of layers, append children to layersArray and skip.\n\t\t\t\tif (m instanceof L.LayerGroup) {\n\t\t\t\t\tif (originalArray) {\n\t\t\t\t\t\tlayersArray = layersArray.slice();\n\t\t\t\t\t\toriginalArray = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis._extractNonGroupLayers(m, layersArray);\n\t\t\t\t\tl = layersArray.length;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t//Not point data, can't be clustered\n\t\t\t\tif (!m.getLatLng) {\n\t\t\t\t\tnpg.addLayer(m);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (this.hasLayer(m)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tneedsClustering.push(m);\n\t\t\t}\n\t\t}\n\t\treturn this;\n\t},\n\n\t//Takes an array of markers and removes them in bulk\n\tremoveLayers: function (layersArray) {\n\t\tvar i, m,\n\t\t l = layersArray.length,\n\t\t fg = this._featureGroup,\n\t\t npg = this._nonPointGroup,\n\t\t originalArray = true;\n\n\t\tif (!this._map) {\n\t\t\tfor (i = 0; i < l; i++) {\n\t\t\t\tm = layersArray[i];\n\n\t\t\t\t// Group of layers, append children to layersArray and skip.\n\t\t\t\tif (m instanceof L.LayerGroup) {\n\t\t\t\t\tif (originalArray) {\n\t\t\t\t\t\tlayersArray = layersArray.slice();\n\t\t\t\t\t\toriginalArray = false;\n\t\t\t\t\t}\n\t\t\t\t\tthis._extractNonGroupLayers(m, layersArray);\n\t\t\t\t\tl = layersArray.length;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tthis._arraySplice(this._needsClustering, m);\n\t\t\t\tnpg.removeLayer(m);\n\t\t\t\tif (this.hasLayer(m)) {\n\t\t\t\t\tthis._needsRemoving.push({ layer: m, latlng: m._latlng });\n\t\t\t\t}\n\t\t\t\tthis.fire('layerremove', { layer: m });\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\n\t\tif (this._unspiderfy) {\n\t\t\tthis._unspiderfy();\n\n\t\t\t// Work on a copy of the array, so that next loop is not affected.\n\t\t\tvar layersArray2 = layersArray.slice(),\n\t\t\t l2 = l;\n\t\t\tfor (i = 0; i < l2; i++) {\n\t\t\t\tm = layersArray2[i];\n\n\t\t\t\t// Group of layers, append children to layersArray and skip.\n\t\t\t\tif (m instanceof L.LayerGroup) {\n\t\t\t\t\tthis._extractNonGroupLayers(m, layersArray2);\n\t\t\t\t\tl2 = layersArray2.length;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tthis._unspiderfyLayer(m);\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0; i < l; i++) {\n\t\t\tm = layersArray[i];\n\n\t\t\t// Group of layers, append children to layersArray and skip.\n\t\t\tif (m instanceof L.LayerGroup) {\n\t\t\t\tif (originalArray) {\n\t\t\t\t\tlayersArray = layersArray.slice();\n\t\t\t\t\toriginalArray = false;\n\t\t\t\t}\n\t\t\t\tthis._extractNonGroupLayers(m, layersArray);\n\t\t\t\tl = layersArray.length;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (!m.__parent) {\n\t\t\t\tnpg.removeLayer(m);\n\t\t\t\tthis.fire('layerremove', { layer: m });\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tthis._removeLayer(m, true, true);\n\t\t\tthis.fire('layerremove', { layer: m });\n\n\t\t\tif (fg.hasLayer(m)) {\n\t\t\t\tfg.removeLayer(m);\n\t\t\t\tif (m.clusterShow) {\n\t\t\t\t\tm.clusterShow();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Refresh bounds and weighted positions.\n\t\tthis._topClusterLevel._recalculateBounds();\n\n\t\tthis._refreshClustersIcons();\n\n\t\t//Fix up the clusters and markers on the map\n\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, this._zoom, this._currentShownBounds);\n\n\t\treturn this;\n\t},\n\n\t//Removes all layers from the MarkerClusterGroup\n\tclearLayers: function () {\n\t\t//Need our own special implementation as the LayerGroup one doesn't work for us\n\n\t\t//If we aren't on the map (yet), blow away the markers we know of\n\t\tif (!this._map) {\n\t\t\tthis._needsClustering = [];\n\t\t\tthis._needsRemoving = [];\n\t\t\tdelete this._gridClusters;\n\t\t\tdelete this._gridUnclustered;\n\t\t}\n\n\t\tif (this._noanimationUnspiderfy) {\n\t\t\tthis._noanimationUnspiderfy();\n\t\t}\n\n\t\t//Remove all the visible layers\n\t\tthis._featureGroup.clearLayers();\n\t\tthis._nonPointGroup.clearLayers();\n\n\t\tthis.eachLayer(function (marker) {\n\t\t\tmarker.off(this._childMarkerEventHandlers, this);\n\t\t\tdelete marker.__parent;\n\t\t}, this);\n\n\t\tif (this._map) {\n\t\t\t//Reset _topClusterLevel and the DistanceGrids\n\t\t\tthis._generateInitialClusters();\n\t\t}\n\n\t\treturn this;\n\t},\n\n\t//Override FeatureGroup.getBounds as it doesn't work\n\tgetBounds: function () {\n\t\tvar bounds = new L.LatLngBounds();\n\n\t\tif (this._topClusterLevel) {\n\t\t\tbounds.extend(this._topClusterLevel._bounds);\n\t\t}\n\n\t\tfor (var i = this._needsClustering.length - 1; i >= 0; i--) {\n\t\t\tbounds.extend(this._needsClustering[i].getLatLng());\n\t\t}\n\n\t\tbounds.extend(this._nonPointGroup.getBounds());\n\n\t\treturn bounds;\n\t},\n\n\t//Overrides LayerGroup.eachLayer\n\teachLayer: function (method, context) {\n\t\tvar markers = this._needsClustering.slice(),\n\t\t\tneedsRemoving = this._needsRemoving,\n\t\t\tthisNeedsRemoving, i, j;\n\n\t\tif (this._topClusterLevel) {\n\t\t\tthis._topClusterLevel.getAllChildMarkers(markers);\n\t\t}\n\n\t\tfor (i = markers.length - 1; i >= 0; i--) {\n\t\t\tthisNeedsRemoving = true;\n\n\t\t\tfor (j = needsRemoving.length - 1; j >= 0; j--) {\n\t\t\t\tif (needsRemoving[j].layer === markers[i]) {\n\t\t\t\t\tthisNeedsRemoving = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (thisNeedsRemoving) {\n\t\t\t\tmethod.call(context, markers[i]);\n\t\t\t}\n\t\t}\n\n\t\tthis._nonPointGroup.eachLayer(method, context);\n\t},\n\n\t//Overrides LayerGroup.getLayers\n\tgetLayers: function () {\n\t\tvar layers = [];\n\t\tthis.eachLayer(function (l) {\n\t\t\tlayers.push(l);\n\t\t});\n\t\treturn layers;\n\t},\n\n\t//Overrides LayerGroup.getLayer, WARNING: Really bad performance\n\tgetLayer: function (id) {\n\t\tvar result = null;\n\n\t\tid = parseInt(id, 10);\n\n\t\tthis.eachLayer(function (l) {\n\t\t\tif (L.stamp(l) === id) {\n\t\t\t\tresult = l;\n\t\t\t}\n\t\t});\n\n\t\treturn result;\n\t},\n\n\t//Returns true if the given layer is in this MarkerClusterGroup\n\thasLayer: function (layer) {\n\t\tif (!layer) {\n\t\t\treturn false;\n\t\t}\n\n\t\tvar i, anArray = this._needsClustering;\n\n\t\tfor (i = anArray.length - 1; i >= 0; i--) {\n\t\t\tif (anArray[i] === layer) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\tanArray = this._needsRemoving;\n\t\tfor (i = anArray.length - 1; i >= 0; i--) {\n\t\t\tif (anArray[i].layer === layer) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn !!(layer.__parent && layer.__parent._group === this) || this._nonPointGroup.hasLayer(layer);\n\t},\n\n\t//Zoom down to show the given layer (spiderfying if necessary) then calls the callback\n\tzoomToShowLayer: function (layer, callback) {\n\n\t\tvar map = this._map;\n\n\t\tif (typeof callback !== 'function') {\n\t\t\tcallback = function () {};\n\t\t}\n\n\t\tvar showMarker = function () {\n\t\t\t// Assumes that map.hasLayer checks for direct appearance on map, not recursively calling\n\t\t\t// hasLayer on Layer Groups that are on map (typically not calling this MarkerClusterGroup.hasLayer, which would always return true)\n\t\t\tif ((map.hasLayer(layer) || map.hasLayer(layer.__parent)) && !this._inZoomAnimation) {\n\t\t\t\tthis._map.off('moveend', showMarker, this);\n\t\t\t\tthis.off('animationend', showMarker, this);\n\n\t\t\t\tif (map.hasLayer(layer)) {\n\t\t\t\t\tcallback();\n\t\t\t\t} else if (layer.__parent._icon) {\n\t\t\t\t\tthis.once('spiderfied', callback, this);\n\t\t\t\t\tlayer.__parent.spiderfy();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tif (layer._icon && this._map.getBounds().contains(layer.getLatLng())) {\n\t\t\t//Layer is visible ond on screen, immediate return\n\t\t\tcallback();\n\t\t} else if (layer.__parent._zoom < Math.round(this._map._zoom)) {\n\t\t\t//Layer should be visible at this zoom level. It must not be on screen so just pan over to it\n\t\t\tthis._map.on('moveend', showMarker, this);\n\t\t\tthis._map.panTo(layer.getLatLng());\n\t\t} else {\n\t\t\tthis._map.on('moveend', showMarker, this);\n\t\t\tthis.on('animationend', showMarker, this);\n\t\t\tlayer.__parent.zoomToBounds();\n\t\t}\n\t},\n\n\t//Overrides FeatureGroup.onAdd\n\tonAdd: function (map) {\n\t\tthis._map = map;\n\t\tvar i, l, layer;\n\n\t\tif (!isFinite(this._map.getMaxZoom())) {\n\t\t\tthrow \"Map has no maxZoom specified\";\n\t\t}\n\n\t\tthis._featureGroup.addTo(map);\n\t\tthis._nonPointGroup.addTo(map);\n\n\t\tif (!this._gridClusters) {\n\t\t\tthis._generateInitialClusters();\n\t\t}\n\n\t\tthis._maxLat = map.options.crs.projection.MAX_LATITUDE;\n\n\t\t//Restore all the positions as they are in the MCG before removing them\n\t\tfor (i = 0, l = this._needsRemoving.length; i < l; i++) {\n\t\t\tlayer = this._needsRemoving[i];\n\t\t\tlayer.newlatlng = layer.layer._latlng;\n\t\t\tlayer.layer._latlng = layer.latlng;\n\t\t}\n\t\t//Remove them, then restore their new positions\n\t\tfor (i = 0, l = this._needsRemoving.length; i < l; i++) {\n\t\t\tlayer = this._needsRemoving[i];\n\t\t\tthis._removeLayer(layer.layer, true);\n\t\t\tlayer.layer._latlng = layer.newlatlng;\n\t\t}\n\t\tthis._needsRemoving = [];\n\n\t\t//Remember the current zoom level and bounds\n\t\tthis._zoom = Math.round(this._map._zoom);\n\t\tthis._currentShownBounds = this._getExpandedVisibleBounds();\n\n\t\tthis._map.on('zoomend', this._zoomEnd, this);\n\t\tthis._map.on('moveend', this._moveEnd, this);\n\n\t\tif (this._spiderfierOnAdd) { //TODO FIXME: Not sure how to have spiderfier add something on here nicely\n\t\t\tthis._spiderfierOnAdd();\n\t\t}\n\n\t\tthis._bindEvents();\n\n\t\t//Actually add our markers to the map:\n\t\tl = this._needsClustering;\n\t\tthis._needsClustering = [];\n\t\tthis.addLayers(l, true);\n\t},\n\n\t//Overrides FeatureGroup.onRemove\n\tonRemove: function (map) {\n\t\tmap.off('zoomend', this._zoomEnd, this);\n\t\tmap.off('moveend', this._moveEnd, this);\n\n\t\tthis._unbindEvents();\n\n\t\t//In case we are in a cluster animation\n\t\tthis._map._mapPane.className = this._map._mapPane.className.replace(' leaflet-cluster-anim', '');\n\n\t\tif (this._spiderfierOnRemove) { //TODO FIXME: Not sure how to have spiderfier add something on here nicely\n\t\t\tthis._spiderfierOnRemove();\n\t\t}\n\n\t\tdelete this._maxLat;\n\n\t\t//Clean up all the layers we added to the map\n\t\tthis._hideCoverage();\n\t\tthis._featureGroup.remove();\n\t\tthis._nonPointGroup.remove();\n\n\t\tthis._featureGroup.clearLayers();\n\n\t\tthis._map = null;\n\t},\n\n\tgetVisibleParent: function (marker) {\n\t\tvar vMarker = marker;\n\t\twhile (vMarker && !vMarker._icon) {\n\t\t\tvMarker = vMarker.__parent;\n\t\t}\n\t\treturn vMarker || null;\n\t},\n\n\t//Remove the given object from the given array\n\t_arraySplice: function (anArray, obj) {\n\t\tfor (var i = anArray.length - 1; i >= 0; i--) {\n\t\t\tif (anArray[i] === obj) {\n\t\t\t\tanArray.splice(i, 1);\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t},\n\n\t/**\n\t * Removes a marker from all _gridUnclustered zoom levels, starting at the supplied zoom.\n\t * @param marker to be removed from _gridUnclustered.\n\t * @param z integer bottom start zoom level (included)\n\t * @private\n\t */\n\t_removeFromGridUnclustered: function (marker, z) {\n\t\tvar map = this._map,\n\t\t gridUnclustered = this._gridUnclustered,\n\t\t\tminZoom = Math.floor(this._map.getMinZoom());\n\n\t\tfor (; z >= minZoom; z--) {\n\t\t\tif (!gridUnclustered[z].removeObject(marker, map.project(marker.getLatLng(), z))) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t},\n\n\t_childMarkerDragStart: function (e) {\n\t\te.target.__dragStart = e.target._latlng;\n\t},\n\n\t_childMarkerMoved: function (e) {\n\t\tif (!this._ignoreMove && !e.target.__dragStart) {\n\t\t\tvar isPopupOpen = e.target._popup && e.target._popup.isOpen();\n\n\t\t\tthis._moveChild(e.target, e.oldLatLng, e.latlng);\n\n\t\t\tif (isPopupOpen) {\n\t\t\t\te.target.openPopup();\n\t\t\t}\n\t\t}\n\t},\n\n\t_moveChild: function (layer, from, to) {\n\t\tlayer._latlng = from;\n\t\tthis.removeLayer(layer);\n\n\t\tlayer._latlng = to;\n\t\tthis.addLayer(layer);\n\t},\n\n\t_childMarkerDragEnd: function (e) {\n\t\tvar dragStart = e.target.__dragStart;\n\t\tdelete e.target.__dragStart;\n\t\tif (dragStart) {\n\t\t\tthis._moveChild(e.target, dragStart, e.target._latlng);\n\t\t}\t\t\n\t},\n\n\n\t//Internal function for removing a marker from everything.\n\t//dontUpdateMap: set to true if you will handle updating the map manually (for bulk functions)\n\t_removeLayer: function (marker, removeFromDistanceGrid, dontUpdateMap) {\n\t\tvar gridClusters = this._gridClusters,\n\t\t\tgridUnclustered = this._gridUnclustered,\n\t\t\tfg = this._featureGroup,\n\t\t\tmap = this._map,\n\t\t\tminZoom = Math.floor(this._map.getMinZoom());\n\n\t\t//Remove the marker from distance clusters it might be in\n\t\tif (removeFromDistanceGrid) {\n\t\t\tthis._removeFromGridUnclustered(marker, this._maxZoom);\n\t\t}\n\n\t\t//Work our way up the clusters removing them as we go if required\n\t\tvar cluster = marker.__parent,\n\t\t\tmarkers = cluster._markers,\n\t\t\totherMarker;\n\n\t\t//Remove the marker from the immediate parents marker list\n\t\tthis._arraySplice(markers, marker);\n\n\t\twhile (cluster) {\n\t\t\tcluster._childCount--;\n\t\t\tcluster._boundsNeedUpdate = true;\n\n\t\t\tif (cluster._zoom < minZoom) {\n\t\t\t\t//Top level, do nothing\n\t\t\t\tbreak;\n\t\t\t} else if (removeFromDistanceGrid && cluster._childCount <= 1) { //Cluster no longer required\n\t\t\t\t//We need to push the other marker up to the parent\n\t\t\t\totherMarker = cluster._markers[0] === marker ? cluster._markers[1] : cluster._markers[0];\n\n\t\t\t\t//Update distance grid\n\t\t\t\tgridClusters[cluster._zoom].removeObject(cluster, map.project(cluster._cLatLng, cluster._zoom));\n\t\t\t\tgridUnclustered[cluster._zoom].addObject(otherMarker, map.project(otherMarker.getLatLng(), cluster._zoom));\n\n\t\t\t\t//Move otherMarker up to parent\n\t\t\t\tthis._arraySplice(cluster.__parent._childClusters, cluster);\n\t\t\t\tcluster.__parent._markers.push(otherMarker);\n\t\t\t\totherMarker.__parent = cluster.__parent;\n\n\t\t\t\tif (cluster._icon) {\n\t\t\t\t\t//Cluster is currently on the map, need to put the marker on the map instead\n\t\t\t\t\tfg.removeLayer(cluster);\n\t\t\t\t\tif (!dontUpdateMap) {\n\t\t\t\t\t\tfg.addLayer(otherMarker);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcluster._iconNeedsUpdate = true;\n\t\t\t}\n\n\t\t\tcluster = cluster.__parent;\n\t\t}\n\n\t\tdelete marker.__parent;\n\t},\n\n\t_isOrIsParent: function (el, oel) {\n\t\twhile (oel) {\n\t\t\tif (el === oel) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\toel = oel.parentNode;\n\t\t}\n\t\treturn false;\n\t},\n\n\t//Override L.Evented.fire\n\tfire: function (type, data, propagate) {\n\t\tif (data && data.layer instanceof L.MarkerCluster) {\n\t\t\t//Prevent multiple clustermouseover/off events if the icon is made up of stacked divs (Doesn't work in ie <= 8, no relatedTarget)\n\t\t\tif (data.originalEvent && this._isOrIsParent(data.layer._icon, data.originalEvent.relatedTarget)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ttype = 'cluster' + type;\n\t\t}\n\n\t\tL.FeatureGroup.prototype.fire.call(this, type, data, propagate);\n\t},\n\n\t//Override L.Evented.listens\n\tlistens: function (type, propagate) {\n\t\treturn L.FeatureGroup.prototype.listens.call(this, type, propagate) || L.FeatureGroup.prototype.listens.call(this, 'cluster' + type, propagate);\n\t},\n\n\t//Default functionality\n\t_defaultIconCreateFunction: function (cluster) {\n\t\tvar childCount = cluster.getChildCount();\n\n\t\tvar c = ' marker-cluster-';\n\t\tif (childCount < 10) {\n\t\t\tc += 'small';\n\t\t} else if (childCount < 100) {\n\t\t\tc += 'medium';\n\t\t} else {\n\t\t\tc += 'large';\n\t\t}\n\n\t\treturn new L.DivIcon({ html: '<div><span>' + childCount + '</span></div>', className: 'marker-cluster' + c, iconSize: new L.Point(40, 40) });\n\t},\n\n\t_bindEvents: function () {\n\t\tvar map = this._map,\n\t\t spiderfyOnMaxZoom = this.options.spiderfyOnMaxZoom,\n\t\t showCoverageOnHover = this.options.showCoverageOnHover,\n\t\t zoomToBoundsOnClick = this.options.zoomToBoundsOnClick,\n\t\t spiderfyOnEveryZoom = this.options.spiderfyOnEveryZoom;\n\n\t\t//Zoom on cluster click or spiderfy if we are at the lowest level\n\t\tif (spiderfyOnMaxZoom || zoomToBoundsOnClick || spiderfyOnEveryZoom) {\n\t\t\tthis.on('clusterclick clusterkeypress', this._zoomOrSpiderfy, this);\n\t\t}\n\n\t\t//Show convex hull (boundary) polygon on mouse over\n\t\tif (showCoverageOnHover) {\n\t\t\tthis.on('clustermouseover', this._showCoverage, this);\n\t\t\tthis.on('clustermouseout', this._hideCoverage, this);\n\t\t\tmap.on('zoomend', this._hideCoverage, this);\n\t\t}\n\t},\n\n\t_zoomOrSpiderfy: function (e) {\n\t\tvar cluster = e.layer,\n\t\t bottomCluster = cluster;\n\n\t\tif (e.type === 'clusterkeypress' && e.originalEvent && e.originalEvent.keyCode !== 13) {\n\t\t\treturn;\n\t\t}\n\n\t\twhile (bottomCluster._childClusters.length === 1) {\n\t\t\tbottomCluster = bottomCluster._childClusters[0];\n\t\t}\n\n\t\tif (bottomCluster._zoom === this._maxZoom &&\n\t\t\tbottomCluster._childCount === cluster._childCount &&\n\t\t\tthis.options.spiderfyOnMaxZoom) {\n\n\t\t\t// All child markers are contained in a single cluster from this._maxZoom to this cluster.\n\t\t\tcluster.spiderfy();\n\t\t} else if (this.options.zoomToBoundsOnClick) {\n\t\t\tcluster.zoomToBounds();\n\t\t}\n\n\t\tif (this.options.spiderfyOnEveryZoom) {\n\t\t\tcluster.spiderfy();\n\t\t}\n\n\t\t// Focus the map again for keyboard users.\n\t\tif (e.originalEvent && e.originalEvent.keyCode === 13) {\n\t\t\tthis._map._container.focus();\n\t\t}\n\t},\n\n\t_showCoverage: function (e) {\n\t\tvar map = this._map;\n\t\tif (this._inZoomAnimation) {\n\t\t\treturn;\n\t\t}\n\t\tif (this._shownPolygon) {\n\t\t\tmap.removeLayer(this._shownPolygon);\n\t\t}\n\t\tif (e.layer.getChildCount() > 2 && e.layer !== this._spiderfied) {\n\t\t\tthis._shownPolygon = new L.Polygon(e.layer.getConvexHull(), this.options.polygonOptions);\n\t\t\tmap.addLayer(this._shownPolygon);\n\t\t}\n\t},\n\n\t_hideCoverage: function () {\n\t\tif (this._shownPolygon) {\n\t\t\tthis._map.removeLayer(this._shownPolygon);\n\t\t\tthis._shownPolygon = null;\n\t\t}\n\t},\n\n\t_unbindEvents: function () {\n\t\tvar spiderfyOnMaxZoom = this.options.spiderfyOnMaxZoom,\n\t\t\tshowCoverageOnHover = this.options.showCoverageOnHover,\n\t\t\tzoomToBoundsOnClick = this.options.zoomToBoundsOnClick,\n\t\t\tspiderfyOnEveryZoom = this.options.spiderfyOnEveryZoom,\n\t\t\tmap = this._map;\n\n\t\tif (spiderfyOnMaxZoom || zoomToBoundsOnClick || spiderfyOnEveryZoom) {\n\t\t\tthis.off('clusterclick clusterkeypress', this._zoomOrSpiderfy, this);\n\t\t}\n\t\tif (showCoverageOnHover) {\n\t\t\tthis.off('clustermouseover', this._showCoverage, this);\n\t\t\tthis.off('clustermouseout', this._hideCoverage, this);\n\t\t\tmap.off('zoomend', this._hideCoverage, this);\n\t\t}\n\t},\n\n\t_zoomEnd: function () {\n\t\tif (!this._map) { //May have been removed from the map by a zoomEnd handler\n\t\t\treturn;\n\t\t}\n\t\tthis._mergeSplitClusters();\n\n\t\tthis._zoom = Math.round(this._map._zoom);\n\t\tthis._currentShownBounds = this._getExpandedVisibleBounds();\n\t},\n\n\t_moveEnd: function () {\n\t\tif (this._inZoomAnimation) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar newBounds = this._getExpandedVisibleBounds();\n\n\t\tthis._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds, Math.floor(this._map.getMinZoom()), this._zoom, newBounds);\n\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, Math.round(this._map._zoom), newBounds);\n\n\t\tthis._currentShownBounds = newBounds;\n\t\treturn;\n\t},\n\n\t_generateInitialClusters: function () {\n\t\tvar maxZoom = Math.ceil(this._map.getMaxZoom()),\n\t\t\tminZoom = Math.floor(this._map.getMinZoom()),\n\t\t\tradius = this.options.maxClusterRadius,\n\t\t\tradiusFn = radius;\n\n\t\t//If we just set maxClusterRadius to a single number, we need to create\n\t\t//a simple function to return that number. Otherwise, we just have to\n\t\t//use the function we've passed in.\n\t\tif (typeof radius !== \"function\") {\n\t\t\tradiusFn = function () { return radius; };\n\t\t}\n\n\t\tif (this.options.disableClusteringAtZoom !== null) {\n\t\t\tmaxZoom = this.options.disableClusteringAtZoom - 1;\n\t\t}\n\t\tthis._maxZoom = maxZoom;\n\t\tthis._gridClusters = {};\n\t\tthis._gridUnclustered = {};\n\n\t\t//Set up DistanceGrids for each zoom\n\t\tfor (var zoom = maxZoom; zoom >= minZoom; zoom--) {\n\t\t\tthis._gridClusters[zoom] = new L.DistanceGrid(radiusFn(zoom));\n\t\t\tthis._gridUnclustered[zoom] = new L.DistanceGrid(radiusFn(zoom));\n\t\t}\n\n\t\t// Instantiate the appropriate L.MarkerCluster class (animated or not).\n\t\tthis._topClusterLevel = new this._markerCluster(this, minZoom - 1);\n\t},\n\n\t//Zoom: Zoom to start adding at (Pass this._maxZoom to start at the bottom)\n\t_addLayer: function (layer, zoom) {\n\t\tvar gridClusters = this._gridClusters,\n\t\t gridUnclustered = this._gridUnclustered,\n\t\t\tminZoom = Math.floor(this._map.getMinZoom()),\n\t\t markerPoint, z;\n\n\t\tif (this.options.singleMarkerMode) {\n\t\t\tthis._overrideMarkerIcon(layer);\n\t\t}\n\n\t\tlayer.on(this._childMarkerEventHandlers, this);\n\n\t\t//Find the lowest zoom level to slot this one in\n\t\tfor (; zoom >= minZoom; zoom--) {\n\t\t\tmarkerPoint = this._map.project(layer.getLatLng(), zoom); // calculate pixel position\n\n\t\t\t//Try find a cluster close by\n\t\t\tvar closest = gridClusters[zoom].getNearObject(markerPoint);\n\t\t\tif (closest) {\n\t\t\t\tclosest._addChild(layer);\n\t\t\t\tlayer.__parent = closest;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t//Try find a marker close by to form a new cluster with\n\t\t\tclosest = gridUnclustered[zoom].getNearObject(markerPoint);\n\t\t\tif (closest) {\n\t\t\t\tvar parent = closest.__parent;\n\t\t\t\tif (parent) {\n\t\t\t\t\tthis._removeLayer(closest, false);\n\t\t\t\t}\n\n\t\t\t\t//Create new cluster with these 2 in it\n\n\t\t\t\tvar newCluster = new this._markerCluster(this, zoom, closest, layer);\n\t\t\t\tgridClusters[zoom].addObject(newCluster, this._map.project(newCluster._cLatLng, zoom));\n\t\t\t\tclosest.__parent = newCluster;\n\t\t\t\tlayer.__parent = newCluster;\n\n\t\t\t\t//First create any new intermediate parent clusters that don't exist\n\t\t\t\tvar lastParent = newCluster;\n\t\t\t\tfor (z = zoom - 1; z > parent._zoom; z--) {\n\t\t\t\t\tlastParent = new this._markerCluster(this, z, lastParent);\n\t\t\t\t\tgridClusters[z].addObject(lastParent, this._map.project(closest.getLatLng(), z));\n\t\t\t\t}\n\t\t\t\tparent._addChild(lastParent);\n\n\t\t\t\t//Remove closest from this zoom level and any above that it is in, replace with newCluster\n\t\t\t\tthis._removeFromGridUnclustered(closest, zoom);\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t//Didn't manage to cluster in at this zoom, record us as a marker here and continue upwards\n\t\t\tgridUnclustered[zoom].addObject(layer, markerPoint);\n\t\t}\n\n\t\t//Didn't get in anything, add us to the top\n\t\tthis._topClusterLevel._addChild(layer);\n\t\tlayer.__parent = this._topClusterLevel;\n\t\treturn;\n\t},\n\n\t/**\n\t * Refreshes the icon of all \"dirty\" visible clusters.\n\t * Non-visible \"dirty\" clusters will be updated when they are added to the map.\n\t * @private\n\t */\n\t_refreshClustersIcons: function () {\n\t\tthis._featureGroup.eachLayer(function (c) {\n\t\t\tif (c instanceof L.MarkerCluster && c._iconNeedsUpdate) {\n\t\t\t\tc._updateIcon();\n\t\t\t}\n\t\t});\n\t},\n\n\t//Enqueue code to fire after the marker expand/contract has happened\n\t_enqueue: function (fn) {\n\t\tthis._queue.push(fn);\n\t\tif (!this._queueTimeout) {\n\t\t\tthis._queueTimeout = setTimeout(L.bind(this._processQueue, this), 300);\n\t\t}\n\t},\n\t_processQueue: function () {\n\t\tfor (var i = 0; i < this._queue.length; i++) {\n\t\t\tthis._queue[i].call(this);\n\t\t}\n\t\tthis._queue.length = 0;\n\t\tclearTimeout(this._queueTimeout);\n\t\tthis._queueTimeout = null;\n\t},\n\n\t//Merge and split any existing clusters that are too big or small\n\t_mergeSplitClusters: function () {\n\t\tvar mapZoom = Math.round(this._map._zoom);\n\n\t\t//In case we are starting to split before the animation finished\n\t\tthis._processQueue();\n\n\t\tif (this._zoom < mapZoom && this._currentShownBounds.intersects(this._getExpandedVisibleBounds())) { //Zoom in, split\n\t\t\tthis._animationStart();\n\t\t\t//Remove clusters now off screen\n\t\t\tthis._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds, Math.floor(this._map.getMinZoom()), this._zoom, this._getExpandedVisibleBounds());\n\n\t\t\tthis._animationZoomIn(this._zoom, mapZoom);\n\n\t\t} else if (this._zoom > mapZoom) { //Zoom out, merge\n\t\t\tthis._animationStart();\n\n\t\t\tthis._animationZoomOut(this._zoom, mapZoom);\n\t\t} else {\n\t\t\tthis._moveEnd();\n\t\t}\n\t},\n\n\t//Gets the maps visible bounds expanded in each direction by the size of the screen (so the user cannot see an area we do not cover in one pan)\n\t_getExpandedVisibleBounds: function () {\n\t\tif (!this.options.removeOutsideVisibleBounds) {\n\t\t\treturn this._mapBoundsInfinite;\n\t\t} else if (L.Browser.mobile) {\n\t\t\treturn this._checkBoundsMaxLat(this._map.getBounds());\n\t\t}\n\n\t\treturn this._checkBoundsMaxLat(this._map.getBounds().pad(1)); // Padding expands the bounds by its own dimensions but scaled with the given factor.\n\t},\n\n\t/**\n\t * Expands the latitude to Infinity (or -Infinity) if the input bounds reach the map projection maximum defined latitude\n\t * (in the case of Web/Spherical Mercator, it is 85.0511287798 / see https://en.wikipedia.org/wiki/Web_Mercator#Formulas).\n\t * Otherwise, the removeOutsideVisibleBounds option will remove markers beyond that limit, whereas the same markers without\n\t * this option (or outside MCG) will have their position floored (ceiled) by the projection and rendered at that limit,\n\t * making the user think that MCG \"eats\" them and never displays them again.\n\t * @param bounds L.LatLngBounds\n\t * @returns {L.LatLngBounds}\n\t * @private\n\t */\n\t_checkBoundsMaxLat: function (bounds) {\n\t\tvar maxLat = this._maxLat;\n\n\t\tif (maxLat !== undefined) {\n\t\t\tif (bounds.getNorth() >= maxLat) {\n\t\t\t\tbounds._northEast.lat = Infinity;\n\t\t\t}\n\t\t\tif (bounds.getSouth() <= -maxLat) {\n\t\t\t\tbounds._southWest.lat = -Infinity;\n\t\t\t}\n\t\t}\n\n\t\treturn bounds;\n\t},\n\n\t//Shared animation code\n\t_animationAddLayerNonAnimated: function (layer, newCluster) {\n\t\tif (newCluster === layer) {\n\t\t\tthis._featureGroup.addLayer(layer);\n\t\t} else if (newCluster._childCount === 2) {\n\t\t\tnewCluster._addToMap();\n\n\t\t\tvar markers = newCluster.getAllChildMarkers();\n\t\t\tthis._featureGroup.removeLayer(markers[0]);\n\t\t\tthis._featureGroup.removeLayer(markers[1]);\n\t\t} else {\n\t\t\tnewCluster._updateIcon();\n\t\t}\n\t},\n\n\t/**\n\t * Extracts individual (i.e. non-group) layers from a Layer Group.\n\t * @param group to extract layers from.\n\t * @param output {Array} in which to store the extracted layers.\n\t * @returns {*|Array}\n\t * @private\n\t */\n\t_extractNonGroupLayers: function (group, output) {\n\t\tvar layers = group.getLayers(),\n\t\t i = 0,\n\t\t layer;\n\n\t\toutput = output || [];\n\n\t\tfor (; i < layers.length; i++) {\n\t\t\tlayer = layers[i];\n\n\t\t\tif (layer instanceof L.LayerGroup) {\n\t\t\t\tthis._extractNonGroupLayers(layer, output);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\toutput.push(layer);\n\t\t}\n\n\t\treturn output;\n\t},\n\n\t/**\n\t * Implements the singleMarkerMode option.\n\t * @param layer Marker to re-style using the Clusters iconCreateFunction.\n\t * @returns {L.Icon} The newly created icon.\n\t * @private\n\t */\n\t_overrideMarkerIcon: function (layer) {\n\t\tvar icon = layer.options.icon = this.options.iconCreateFunction({\n\t\t\tgetChildCount: function () {\n\t\t\t\treturn 1;\n\t\t\t},\n\t\t\tgetAllChildMarkers: function () {\n\t\t\t\treturn [layer];\n\t\t\t}\n\t\t});\n\n\t\treturn icon;\n\t}\n});\n\n// Constant bounds used in case option \"removeOutsideVisibleBounds\" is set to false.\nL.MarkerClusterGroup.include({\n\t_mapBoundsInfinite: new L.LatLngBounds(new L.LatLng(-Infinity, -Infinity), new L.LatLng(Infinity, Infinity))\n});\n\nL.MarkerClusterGroup.include({\n\t_noAnimation: {\n\t\t//Non Animated versions of everything\n\t\t_animationStart: function () {\n\t\t\t//Do nothing...\n\t\t},\n\t\t_animationZoomIn: function (previousZoomLevel, newZoomLevel) {\n\t\t\tthis._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds, Math.floor(this._map.getMinZoom()), previousZoomLevel);\n\t\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, newZoomLevel, this._getExpandedVisibleBounds());\n\n\t\t\t//We didn't actually animate, but we use this event to mean \"clustering animations have finished\"\n\t\t\tthis.fire('animationend');\n\t\t},\n\t\t_animationZoomOut: function (previousZoomLevel, newZoomLevel) {\n\t\t\tthis._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds, Math.floor(this._map.getMinZoom()), previousZoomLevel);\n\t\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, newZoomLevel, this._getExpandedVisibleBounds());\n\n\t\t\t//We didn't actually animate, but we use this event to mean \"clustering animations have finished\"\n\t\t\tthis.fire('animationend');\n\t\t},\n\t\t_animationAddLayer: function (layer, newCluster) {\n\t\t\tthis._animationAddLayerNonAnimated(layer, newCluster);\n\t\t}\n\t},\n\n\t_withAnimation: {\n\t\t//Animated versions here\n\t\t_animationStart: function () {\n\t\t\tthis._map._mapPane.className += ' leaflet-cluster-anim';\n\t\t\tthis._inZoomAnimation++;\n\t\t},\n\n\t\t_animationZoomIn: function (previousZoomLevel, newZoomLevel) {\n\t\t\tvar bounds = this._getExpandedVisibleBounds(),\n\t\t\t fg = this._featureGroup,\n\t\t\t\tminZoom = Math.floor(this._map.getMinZoom()),\n\t\t\t i;\n\n\t\t\tthis._ignoreMove = true;\n\n\t\t\t//Add all children of current clusters to map and remove those clusters from map\n\t\t\tthis._topClusterLevel._recursively(bounds, previousZoomLevel, minZoom, function (c) {\n\t\t\t\tvar startPos = c._latlng,\n\t\t\t\t markers = c._markers,\n\t\t\t\t m;\n\n\t\t\t\tif (!bounds.contains(startPos)) {\n\t\t\t\t\tstartPos = null;\n\t\t\t\t}\n\n\t\t\t\tif (c._isSingleParent() && previousZoomLevel + 1 === newZoomLevel) { //Immediately add the new child and remove us\n\t\t\t\t\tfg.removeLayer(c);\n\t\t\t\t\tc._recursivelyAddChildrenToMap(null, newZoomLevel, bounds);\n\t\t\t\t} else {\n\t\t\t\t\t//Fade out old cluster\n\t\t\t\t\tc.clusterHide();\n\t\t\t\t\tc._recursivelyAddChildrenToMap(startPos, newZoomLevel, bounds);\n\t\t\t\t}\n\n\t\t\t\t//Remove all markers that aren't visible any more\n\t\t\t\t//TODO: Do we actually need to do this on the higher levels too?\n\t\t\t\tfor (i = markers.length - 1; i >= 0; i--) {\n\t\t\t\t\tm = markers[i];\n\t\t\t\t\tif (!bounds.contains(m._latlng)) {\n\t\t\t\t\t\tfg.removeLayer(m);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t});\n\n\t\t\tthis._forceLayout();\n\n\t\t\t//Update opacities\n\t\t\tthis._topClusterLevel._recursivelyBecomeVisible(bounds, newZoomLevel);\n\t\t\t//TODO Maybe? Update markers in _recursivelyBecomeVisible\n\t\t\tfg.eachLayer(function (n) {\n\t\t\t\tif (!(n instanceof L.MarkerCluster) && n._icon) {\n\t\t\t\t\tn.clusterShow();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t//update the positions of the just added clusters/markers\n\t\t\tthis._topClusterLevel._recursively(bounds, previousZoomLevel, newZoomLevel, function (c) {\n\t\t\t\tc._recursivelyRestoreChildPositions(newZoomLevel);\n\t\t\t});\n\n\t\t\tthis._ignoreMove = false;\n\n\t\t\t//Remove the old clusters and close the zoom animation\n\t\t\tthis._enqueue(function () {\n\t\t\t\t//update the positions of the just added clusters/markers\n\t\t\t\tthis._topClusterLevel._recursively(bounds, previousZoomLevel, minZoom, function (c) {\n\t\t\t\t\tfg.removeLayer(c);\n\t\t\t\t\tc.clusterShow();\n\t\t\t\t});\n\n\t\t\t\tthis._animationEnd();\n\t\t\t});\n\t\t},\n\n\t\t_animationZoomOut: function (previousZoomLevel, newZoomLevel) {\n\t\t\tthis._animationZoomOutSingle(this._topClusterLevel, previousZoomLevel - 1, newZoomLevel);\n\n\t\t\t//Need to add markers for those that weren't on the map before but are now\n\t\t\tthis._topClusterLevel._recursivelyAddChildrenToMap(null, newZoomLevel, this._getExpandedVisibleBounds());\n\t\t\t//Remove markers that were on the map before but won't be now\n\t\t\tthis._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds, Math.floor(this._map.getMinZoom()), previousZoomLevel, this._getExpandedVisibleBounds());\n\t\t},\n\n\t\t_animationAddLayer: function (layer, newCluster) {\n\t\t\tvar me = this,\n\t\t\t fg = this._featureGroup;\n\n\t\t\tfg.addLayer(layer);\n\t\t\tif (newCluster !== layer) {\n\t\t\t\tif (newCluster._childCount > 2) { //Was already a cluster\n\n\t\t\t\t\tnewCluster._updateIcon();\n\t\t\t\t\tthis._forceLayout();\n\t\t\t\t\tthis._animationStart();\n\n\t\t\t\t\tlayer._setPos(this._map.latLngToLayerPoint(newCluster.getLatLng()));\n\t\t\t\t\tlayer.clusterHide();\n\n\t\t\t\t\tthis._enqueue(function () {\n\t\t\t\t\t\tfg.removeLayer(layer);\n\t\t\t\t\t\tlayer.clusterShow();\n\n\t\t\t\t\t\tme._animationEnd();\n\t\t\t\t\t});\n\n\t\t\t\t} else { //Just became a cluster\n\t\t\t\t\tthis._forceLayout();\n\n\t\t\t\t\tme._animationStart();\n\t\t\t\t\tme._animationZoomOutSingle(newCluster, this._map.getMaxZoom(), this._zoom);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\t// Private methods for animated versions.\n\t_animationZoomOutSingle: function (cluster, previousZoomLevel, newZoomLevel) {\n\t\tvar bounds = this._getExpandedVisibleBounds(),\n\t\t\tminZoom = Math.floor(this._map.getMinZoom());\n\n\t\t//Animate all of the markers in the clusters to move to their cluster center point\n\t\tcluster._recursivelyAnimateChildrenInAndAddSelfToMap(bounds, minZoom, previousZoomLevel + 1, newZoomLevel);\n\n\t\tvar me = this;\n\n\t\t//Update the opacity (If we immediately set it they won't animate)\n\t\tthis._forceLayout();\n\t\tcluster._recursivelyBecomeVisible(bounds, newZoomLevel);\n\n\t\t//TODO: Maybe use the transition timing stuff to make this more reliable\n\t\t//When the animations are done, tidy up\n\t\tthis._enqueue(function () {\n\n\t\t\t//This cluster stopped being a cluster before the timeout fired\n\t\t\tif (cluster._childCount === 1) {\n\t\t\t\tvar m = cluster._markers[0];\n\t\t\t\t//If we were in a cluster animation at the time then the opacity and position of our child could be wrong now, so fix it\n\t\t\t\tthis._ignoreMove = true;\n\t\t\t\tm.setLatLng(m.getLatLng());\n\t\t\t\tthis._ignoreMove = false;\n\t\t\t\tif (m.clusterShow) {\n\t\t\t\t\tm.clusterShow();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcluster._recursively(bounds, newZoomLevel, minZoom, function (c) {\n\t\t\t\t\tc._recursivelyRemoveChildrenFromMap(bounds, minZoom, previousZoomLevel + 1);\n\t\t\t\t});\n\t\t\t}\n\t\t\tme._animationEnd();\n\t\t});\n\t},\n\n\t_animationEnd: function () {\n\t\tif (this._map) {\n\t\t\tthis._map._mapPane.className = this._map._mapPane.className.replace(' leaflet-cluster-anim', '');\n\t\t}\n\t\tthis._inZoomAnimation--;\n\t\tthis.fire('animationend');\n\t},\n\n\t//Force a browser layout of stuff in the map\n\t// Should apply the current opacity and location to all elements so we can update them again for an animation\n\t_forceLayout: function () {\n\t\t//In my testing this works, infact offsetWidth of any element seems to work.\n\t\t//Could loop all this._layers and do this for each _icon if it stops working\n\n\t\tL.Util.falseFn(document.body.offsetWidth);\n\t}\n});\n\nL.markerClusterGroup = function (options) {\n\treturn new L.MarkerClusterGroup(options);\n};\n","export var MarkerCluster = L.MarkerCluster = L.Marker.extend({\n\toptions: L.Icon.prototype.options,\n\n\tinitialize: function (group, zoom, a, b) {\n\n\t\tL.Marker.prototype.initialize.call(this, a ? (a._cLatLng || a.getLatLng()) : new L.LatLng(0, 0),\n { icon: this, pane: group.options.clusterPane });\n\n\t\tthis._group = group;\n\t\tthis._zoom = zoom;\n\n\t\tthis._markers = [];\n\t\tthis._childClusters = [];\n\t\tthis._childCount = 0;\n\t\tthis._iconNeedsUpdate = true;\n\t\tthis._boundsNeedUpdate = true;\n\n\t\tthis._bounds = new L.LatLngBounds();\n\n\t\tif (a) {\n\t\t\tthis._addChild(a);\n\t\t}\n\t\tif (b) {\n\t\t\tthis._addChild(b);\n\t\t}\n\t},\n\n\t//Recursively retrieve all child markers of this cluster\n\tgetAllChildMarkers: function (storageArray, ignoreDraggedMarker) {\n\t\tstorageArray = storageArray || [];\n\n\t\tfor (var i = this._childClusters.length - 1; i >= 0; i--) {\n\t\t\tthis._childClusters[i].getAllChildMarkers(storageArray, ignoreDraggedMarker);\n\t\t}\n\n\t\tfor (var j = this._markers.length - 1; j >= 0; j--) {\n\t\t\tif (ignoreDraggedMarker && this._markers[j].__dragStart) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tstorageArray.push(this._markers[j]);\n\t\t}\n\n\t\treturn storageArray;\n\t},\n\n\t//Returns the count of how many child markers we have\n\tgetChildCount: function () {\n\t\treturn this._childCount;\n\t},\n\n\t//Zoom to the minimum of showing all of the child markers, or the extents of this cluster\n\tzoomToBounds: function (fitBoundsOptions) {\n\t\tvar childClusters = this._childClusters.slice(),\n\t\t\tmap = this._group._map,\n\t\t\tboundsZoom = map.getBoundsZoom(this._bounds),\n\t\t\tzoom = this._zoom + 1,\n\t\t\tmapZoom = map.getZoom(),\n\t\t\ti;\n\n\t\t//calculate how far we need to zoom down to see all of the markers\n\t\twhile (childClusters.length > 0 && boundsZoom > zoom) {\n\t\t\tzoom++;\n\t\t\tvar newClusters = [];\n\t\t\tfor (i = 0; i < childClusters.length; i++) {\n\t\t\t\tnewClusters = newClusters.concat(childClusters[i]._childClusters);\n\t\t\t}\n\t\t\tchildClusters = newClusters;\n\t\t}\n\n\t\tif (boundsZoom > zoom) {\n\t\t\tthis._group._map.setView(this._latlng, zoom);\n\t\t} else if (boundsZoom <= mapZoom) { //If fitBounds wouldn't zoom us down, zoom us down instead\n\t\t\tthis._group._map.setView(this._latlng, mapZoom + 1);\n\t\t} else {\n\t\t\tthis._group._map.fitBounds(this._bounds, fitBoundsOptions);\n\t\t}\n\t},\n\n\tgetBounds: function () {\n\t\tvar bounds = new L.LatLngBounds();\n\t\tbounds.extend(this._bounds);\n\t\treturn bounds;\n\t},\n\n\t_updateIcon: function () {\n\t\tthis._iconNeedsUpdate = true;\n\t\tif (this._icon) {\n\t\t\tthis.setIcon(this);\n\t\t}\n\t},\n\n\t//Cludge for Icon, we pretend to be an icon for performance\n\tcreateIcon: function () {\n\t\tif (this._iconNeedsUpdate) {\n\t\t\tthis._iconObj = this._group.options.iconCreateFunction(this);\n\t\t\tthis._iconNeedsUpdate = false;\n\t\t}\n\t\treturn this._iconObj.createIcon();\n\t},\n\tcreateShadow: function () {\n\t\treturn this._iconObj.createShadow();\n\t},\n\n\n\t_addChild: function (new1, isNotificationFromChild) {\n\n\t\tthis._iconNeedsUpdate = true;\n\n\t\tthis._boundsNeedUpdate = true;\n\t\tthis._setClusterCenter(new1);\n\n\t\tif (new1 instanceof L.MarkerCluster) {\n\t\t\tif (!isNotificationFromChild) {\n\t\t\t\tthis._childClusters.push(new1);\n\t\t\t\tnew1.__parent = this;\n\t\t\t}\n\t\t\tthis._childCount += new1._childCount;\n\t\t} else {\n\t\t\tif (!isNotificationFromChild) {\n\t\t\t\tthis._markers.push(new1);\n\t\t\t}\n\t\t\tthis._childCount++;\n\t\t}\n\n\t\tif (this.__parent) {\n\t\t\tthis.__parent._addChild(new1, true);\n\t\t}\n\t},\n\n\t/**\n\t * Makes sure the cluster center is set. If not, uses the child center if it is a cluster, or the marker position.\n\t * @param child L.MarkerCluster|L.Marker that will be used as cluster center if not defined yet.\n\t * @private\n\t */\n\t_setClusterCenter: function (child) {\n\t\tif (!this._cLatLng) {\n\t\t\t// when clustering, take position of the first point as the cluster center\n\t\t\tthis._cLatLng = child._cLatLng || child._latlng;\n\t\t}\n\t},\n\n\t/**\n\t * Assigns impossible bounding values so that the next extend entirely determines the new bounds.\n\t * This method avoids having to trash the previous L.LatLngBounds object and to create a new one, which is much slower for this class.\n\t * As long as the bounds are not extended, most other methods would probably fail, as they would with bounds initialized but not extended.\n\t * @private\n\t */\n\t_resetBounds: function () {\n\t\tvar bounds = this._bounds;\n\n\t\tif (bounds._southWest) {\n\t\t\tbounds._southWest.lat = Infinity;\n\t\t\tbounds._southWest.lng = Infinity;\n\t\t}\n\t\tif (bounds._northEast) {\n\t\t\tbounds._northEast.lat = -Infinity;\n\t\t\tbounds._northEast.lng = -Infinity;\n\t\t}\n\t},\n\n\t_recalculateBounds: function () {\n\t\tvar markers = this._markers,\n\t\t childClusters = this._childClusters,\n\t\t latSum = 0,\n\t\t lngSum = 0,\n\t\t totalCount = this._childCount,\n\t\t i, child, childLatLng, childCount;\n\n\t\t// Case where all markers are removed from the map and we are left with just an empty _topClusterLevel.\n\t\tif (totalCount === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Reset rather than creating a new object, for performance.\n\t\tthis._resetBounds();\n\n\t\t// Child markers.\n\t\tfor (i = 0; i < markers.length; i++) {\n\t\t\tchildLatLng = markers[i]._latlng;\n\n\t\t\tthis._bounds.extend(childLatLng);\n\n\t\t\tlatSum += childLatLng.lat;\n\t\t\tlngSum += childLatLng.lng;\n\t\t}\n\n\t\t// Child clusters.\n\t\tfor (i = 0; i < childClusters.length; i++) {\n\t\t\tchild = childClusters[i];\n\n\t\t\t// Re-compute child bounds and weighted position first if necessary.\n\t\t\tif (child._boundsNeedUpdate) {\n\t\t\t\tchild._recalculateBounds();\n\t\t\t}\n\n\t\t\tthis._bounds.extend(child._bounds);\n\n\t\t\tchildLatLng = child._wLatLng;\n\t\t\tchildCount = child._childCount;\n\n\t\t\tlatSum += childLatLng.lat * childCount;\n\t\t\tlngSum += childLatLng.lng * childCount;\n\t\t}\n\n\t\tthis._latlng = this._wLatLng = new L.LatLng(latSum / totalCount, lngSum / totalCount);\n\n\t\t// Reset dirty flag.\n\t\tthis._boundsNeedUpdate = false;\n\t},\n\n\t//Set our markers position as given and add it to the map\n\t_addToMap: function (startPos) {\n\t\tif (startPos) {\n\t\t\tthis._backupLatlng = this._latlng;\n\t\t\tthis.setLatLng(startPos);\n\t\t}\n\t\tthis._group._featureGroup.addLayer(this);\n\t},\n\n\t_recursivelyAnimateChildrenIn: function (bounds, center, maxZoom) {\n\t\tthis._recursively(bounds, this._group._map.getMinZoom(), maxZoom - 1,\n\t\t\tfunction (c) {\n\t\t\t\tvar markers = c._markers,\n\t\t\t\t\ti, m;\n\t\t\t\tfor (i = markers.length - 1; i >= 0; i--) {\n\t\t\t\t\tm = markers[i];\n\n\t\t\t\t\t//Only do it if the icon is still on the map\n\t\t\t\t\tif (m._icon) {\n\t\t\t\t\t\tm._setPos(center);\n\t\t\t\t\t\tm.clusterHide();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tfunction (c) {\n\t\t\t\tvar childClusters = c._childClusters,\n\t\t\t\t\tj, cm;\n\t\t\t\tfor (j = childClusters.length - 1; j >= 0; j--) {\n\t\t\t\t\tcm = childClusters[j];\n\t\t\t\t\tif (cm._icon) {\n\t\t\t\t\t\tcm._setPos(center);\n\t\t\t\t\t\tcm.clusterHide();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t},\n\n\t_recursivelyAnimateChildrenInAndAddSelfToMap: function (bounds, mapMinZoom, previousZoomLevel, newZoomLevel) {\n\t\tthis._recursively(bounds, newZoomLevel, mapMinZoom,\n\t\t\tfunction (c) {\n\t\t\t\tc._recursivelyAnimateChildrenIn(bounds, c._group._map.latLngToLayerPoint(c.getLatLng()).round(), previousZoomLevel);\n\n\t\t\t\t//TODO: depthToAnimateIn affects _isSingleParent, if there is a multizoom we may/may not be.\n\t\t\t\t//As a hack we only do a animation free zoom on a single level zoom, if someone does multiple levels then we always animate\n\t\t\t\tif (c._isSingleParent() && previousZoomLevel - 1 === newZoomLevel) {\n\t\t\t\t\tc.clusterShow();\n\t\t\t\t\tc._recursivelyRemoveChildrenFromMap(bounds, mapMinZoom, previousZoomLevel); //Immediately remove our children as we are replacing them. TODO previousBounds not bounds\n\t\t\t\t} else {\n\t\t\t\t\tc.clusterHide();\n\t\t\t\t}\n\n\t\t\t\tc._addToMap();\n\t\t\t}\n\t\t);\n\t},\n\n\t_recursivelyBecomeVisible: function (bounds, zoomLevel) {\n\t\tthis._recursively(bounds, this._group._map.getMinZoom(), zoomLevel, null, function (c) {\n\t\t\tc.clusterShow();\n\t\t});\n\t},\n\n\t_recursivelyAddChildrenToMap: function (startPos, zoomLevel, bounds) {\n\t\tthis._recursively(bounds, this._group._map.getMinZoom() - 1, zoomLevel,\n\t\t\tfunction (c) {\n\t\t\t\tif (zoomLevel === c._zoom) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t//Add our child markers at startPos (so they can be animated out)\n\t\t\t\tfor (var i = c._markers.length - 1; i >= 0; i--) {\n\t\t\t\t\tvar nm = c._markers[i];\n\n\t\t\t\t\tif (!bounds.contains(nm._latlng)) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (startPos) {\n\t\t\t\t\t\tnm._backupLatlng = nm.getLatLng();\n\n\t\t\t\t\t\tnm.setLatLng(startPos);\n\t\t\t\t\t\tif (nm.clusterHide) {\n\t\t\t\t\t\t\tnm.clusterHide();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tc._group._featureGroup.addLayer(nm);\n\t\t\t\t}\n\t\t\t},\n\t\t\tfunction (c) {\n\t\t\t\tc._addToMap(startPos);\n\t\t\t}\n\t\t);\n\t},\n\n\t_recursivelyRestoreChildPositions: function (zoomLevel) {\n\t\t//Fix positions of child markers\n\t\tfor (var i = this._markers.length - 1; i >= 0; i--) {\n\t\t\tvar nm = this._markers[i];\n\t\t\tif (nm._backupLatlng) {\n\t\t\t\tnm.setLatLng(nm._backupLatlng);\n\t\t\t\tdelete nm._backupLatlng;\n\t\t\t}\n\t\t}\n\n\t\tif (zoomLevel - 1 === this._zoom) {\n\t\t\t//Reposition child clusters\n\t\t\tfor (var j = this._childClusters.length - 1; j >= 0; j--) {\n\t\t\t\tthis._childClusters[j]._restorePosition();\n\t\t\t}\n\t\t} else {\n\t\t\tfor (var k = this._childClusters.length - 1; k >= 0; k--) {\n\t\t\t\tthis._childClusters[k]._recursivelyRestoreChildPositions(zoomLevel);\n\t\t\t}\n\t\t}\n\t},\n\n\t_restorePosition: function () {\n\t\tif (this._backupLatlng) {\n\t\t\tthis.setLatLng(this._backupLatlng);\n\t\t\tdelete this._backupLatlng;\n\t\t}\n\t},\n\n\t//exceptBounds: If set, don't remove any markers/clusters in it\n\t_recursivelyRemoveChildrenFromMap: function (previousBounds, mapMinZoom, zoomLevel, exceptBounds) {\n\t\tvar m, i;\n\t\tthis._recursively(previousBounds, mapMinZoom - 1, zoomLevel - 1,\n\t\t\tfunction (c) {\n\t\t\t\t//Remove markers at every level\n\t\t\t\tfor (i = c._markers.length - 1; i >= 0; i--) {\n\t\t\t\t\tm = c._markers[i];\n\t\t\t\t\tif (!exceptBounds || !exceptBounds.contains(m._latlng)) {\n\t\t\t\t\t\tc._group._featureGroup.removeLayer(m);\n\t\t\t\t\t\tif (m.clusterShow) {\n\t\t\t\t\t\t\tm.clusterShow();\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\tfunction (c) {\n\t\t\t\t//Remove child clusters at just the bottom level\n\t\t\t\tfor (i = c._childClusters.length - 1; i >= 0; i--) {\n\t\t\t\t\tm = c._childClusters[i];\n\t\t\t\t\tif (!exceptBounds || !exceptBounds.contains(m._latlng)) {\n\t\t\t\t\t\tc._group._featureGroup.removeLayer(m);\n\t\t\t\t\t\tif (m.clusterShow) {\n\t\t\t\t\t\t\tm.clusterShow();\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\n\t//Run the given functions recursively to this and child clusters\n\t// boundsToApplyTo: a L.LatLngBounds representing the bounds of what clusters to recurse in to\n\t// zoomLevelToStart: zoom level to start running functions (inclusive)\n\t// zoomLevelToStop: zoom level to stop running functions (inclusive)\n\t// runAtEveryLevel: function that takes an L.MarkerCluster as an argument that should be applied on every level\n\t// runAtBottomLevel: function that takes an L.MarkerCluster as an argument that should be applied at only the bottom level\n\t_recursively: function (boundsToApplyTo, zoomLevelToStart, zoomLevelToStop, runAtEveryLevel, runAtBottomLevel) {\n\t\tvar childClusters = this._childClusters,\n\t\t zoom = this._zoom,\n\t\t i, c;\n\n\t\tif (zoomLevelToStart <= zoom) {\n\t\t\tif (runAtEveryLevel) {\n\t\t\t\trunAtEveryLevel(this);\n\t\t\t}\n\t\t\tif (runAtBottomLevel && zoom === zoomLevelToStop) {\n\t\t\t\trunAtBottomLevel(this);\n\t\t\t}\n\t\t}\n\n\t\tif (zoom < zoomLevelToStart || zoom < zoomLevelToStop) {\n\t\t\tfor (i = childClusters.length - 1; i >= 0; i--) {\n\t\t\t\tc = childClusters[i];\n\t\t\t\tif (c._boundsNeedUpdate) {\n\t\t\t\t\tc._recalculateBounds();\n\t\t\t\t}\n\t\t\t\tif (boundsToApplyTo.intersects(c._bounds)) {\n\t\t\t\t\tc._recursively(boundsToApplyTo, zoomLevelToStart, zoomLevelToStop, runAtEveryLevel, runAtBottomLevel);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\t//Returns true if we are the parent of only one cluster and that cluster is the same as us\n\t_isSingleParent: function () {\n\t\t//Don't need to check this._markers as the rest won't work if there are any\n\t\treturn this._childClusters.length > 0 && this._childClusters[0]._childCount === this._childCount;\n\t}\n});\n\n","/*\n* Extends L.Marker to include two extra methods: clusterHide and clusterShow.\n* \n* They work as setOpacity(0) and setOpacity(1) respectively, but\n* don't overwrite the options.opacity\n* \n*/\n\nL.Marker.include({\n\tclusterHide: function () {\n\t\tvar backup = this.options.opacity;\n\t\tthis.setOpacity(0);\n\t\tthis.options.opacity = backup;\n\t\treturn this;\n\t},\n\t\n\tclusterShow: function () {\n\t\treturn this.setOpacity(this.options.opacity);\n\t}\n});\n\n\n","\nL.DistanceGrid = function (cellSize) {\n\tthis._cellSize = cellSize;\n\tthis._sqCellSize = cellSize * cellSize;\n\tthis._grid = {};\n\tthis._objectPoint = { };\n};\n\nL.DistanceGrid.prototype = {\n\n\taddObject: function (obj, point) {\n\t\tvar x = this._getCoord(point.x),\n\t\t y = this._getCoord(point.y),\n\t\t grid = this._grid,\n\t\t row = grid[y] = grid[y] || {},\n\t\t cell = row[x] = row[x] || [],\n\t\t stamp = L.Util.stamp(obj);\n\n\t\tthis._objectPoint[stamp] = point;\n\n\t\tcell.push(obj);\n\t},\n\n\tupdateObject: function (obj, point) {\n\t\tthis.removeObject(obj);\n\t\tthis.addObject(obj, point);\n\t},\n\n\t//Returns true if the object was found\n\tremoveObject: function (obj, point) {\n\t\tvar x = this._getCoord(point.x),\n\t\t y = this._getCoord(point.y),\n\t\t grid = this._grid,\n\t\t row = grid[y] = grid[y] || {},\n\t\t cell = row[x] = row[x] || [],\n\t\t i, len;\n\n\t\tdelete this._objectPoint[L.Util.stamp(obj)];\n\n\t\tfor (i = 0, len = cell.length; i < len; i++) {\n\t\t\tif (cell[i] === obj) {\n\n\t\t\t\tcell.splice(i, 1);\n\n\t\t\t\tif (len === 1) {\n\t\t\t\t\tdelete row[x];\n\t\t\t\t}\n\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t},\n\n\teachObject: function (fn, context) {\n\t\tvar i, j, k, len, row, cell, removed,\n\t\t grid = this._grid;\n\n\t\tfor (i in grid) {\n\t\t\trow = grid[i];\n\n\t\t\tfor (j in row) {\n\t\t\t\tcell = row[j];\n\n\t\t\t\tfor (k = 0, len = cell.length; k < len; k++) {\n\t\t\t\t\tremoved = fn.call(context, cell[k]);\n\t\t\t\t\tif (removed) {\n\t\t\t\t\t\tk--;\n\t\t\t\t\t\tlen--;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\tgetNearObject: function (point) {\n\t\tvar x = this._getCoord(point.x),\n\t\t y = this._getCoord(point.y),\n\t\t i, j, k, row, cell, len, obj, dist,\n\t\t objectPoint = this._objectPoint,\n\t\t closestDistSq = this._sqCellSize,\n\t\t closest = null;\n\n\t\tfor (i = y - 1; i <= y + 1; i++) {\n\t\t\trow = this._grid[i];\n\t\t\tif (row) {\n\n\t\t\t\tfor (j = x - 1; j <= x + 1; j++) {\n\t\t\t\t\tcell = row[j];\n\t\t\t\t\tif (cell) {\n\n\t\t\t\t\t\tfor (k = 0, len = cell.length; k < len; k++) {\n\t\t\t\t\t\t\tobj = cell[k];\n\t\t\t\t\t\t\tdist = this._sqDist(objectPoint[L.Util.stamp(obj)], point);\n\t\t\t\t\t\t\tif (dist < closestDistSq ||\n\t\t\t\t\t\t\t\tdist <= closestDistSq && closest === null) {\n\t\t\t\t\t\t\t\tclosestDistSq = dist;\n\t\t\t\t\t\t\t\tclosest = obj;\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\t\t\t}\n\t\t}\n\t\treturn closest;\n\t},\n\n\t_getCoord: function (x) {\n\t\tvar coord = Math.floor(x / this._cellSize);\n\t\treturn isFinite(coord) ? coord : x;\n\t},\n\n\t_sqDist: function (p, p2) {\n\t\tvar dx = p2.x - p.x,\n\t\t dy = p2.y - p.y;\n\t\treturn dx * dx + dy * dy;\n\t}\n};\n","/* Copyright (c) 2012 the authors listed at the following URL, and/or\nthe authors of referenced articles or incorporated external code:\nhttp://en.literateprograms.org/Quickhull_(Javascript)?action=history&offset=20120410175256\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.\nIN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY\nCLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,\nTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE\nSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nRetrieved from: http://en.literateprograms.org/Quickhull_(Javascript)?oldid=18434\n*/\n\n(function () {\n\tL.QuickHull = {\n\n\t\t/*\n\t\t * @param {Object} cpt a point to be measured from the baseline\n\t\t * @param {Array} bl the baseline, as represented by a two-element\n\t\t * array of latlng objects.\n\t\t * @returns {Number} an approximate distance measure\n\t\t */\n\t\tgetDistant: function (cpt, bl) {\n\t\t\tvar vY = bl[1].lat - bl[0].lat,\n\t\t\t\tvX = bl[0].lng - bl[1].lng;\n\t\t\treturn (vX * (cpt.lat - bl[0].lat) + vY * (cpt.lng - bl[0].lng));\n\t\t},\n\n\t\t/*\n\t\t * @param {Array} baseLine a two-element array of latlng objects\n\t\t * representing the baseline to project from\n\t\t * @param {Array} latLngs an array of latlng objects\n\t\t * @returns {Object} the maximum point and all new points to stay\n\t\t * in consideration for the hull.\n\t\t */\n\t\tfindMostDistantPointFromBaseLine: function (baseLine, latLngs) {\n\t\t\tvar maxD = 0,\n\t\t\t\tmaxPt = null,\n\t\t\t\tnewPoints = [],\n\t\t\t\ti, pt, d;\n\n\t\t\tfor (i = latLngs.length - 1; i >= 0; i--) {\n\t\t\t\tpt = latLngs[i];\n\t\t\t\td = this.getDistant(pt, baseLine);\n\n\t\t\t\tif (d > 0) {\n\t\t\t\t\tnewPoints.push(pt);\n\t\t\t\t} else {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (d > maxD) {\n\t\t\t\t\tmaxD = d;\n\t\t\t\t\tmaxPt = pt;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn { maxPoint: maxPt, newPoints: newPoints };\n\t\t},\n\n\n\t\t/*\n\t\t * Given a baseline, compute the convex hull of latLngs as an array\n\t\t * of latLngs.\n\t\t *\n\t\t * @param {Array} latLngs\n\t\t * @returns {Array}\n\t\t */\n\t\tbuildConvexHull: function (baseLine, latLngs) {\n\t\t\tvar convexHullBaseLines = [],\n\t\t\t\tt = this.findMostDistantPointFromBaseLine(baseLine, latLngs);\n\n\t\t\tif (t.maxPoint) { // if there is still a point \"outside\" the base line\n\t\t\t\tconvexHullBaseLines =\n\t\t\t\t\tconvexHullBaseLines.concat(\n\t\t\t\t\t\tthis.buildConvexHull([baseLine[0], t.maxPoint], t.newPoints)\n\t\t\t\t\t);\n\t\t\t\tconvexHullBaseLines =\n\t\t\t\t\tconvexHullBaseLines.concat(\n\t\t\t\t\t\tthis.buildConvexHull([t.maxPoint, baseLine[1]], t.newPoints)\n\t\t\t\t\t);\n\t\t\t\treturn convexHullBaseLines;\n\t\t\t} else { // if there is no more point \"outside\" the base line, the current base line is part of the convex hull\n\t\t\t\treturn [baseLine[0]];\n\t\t\t}\n\t\t},\n\n\t\t/*\n\t\t * Given an array of latlngs, compute a convex hull as an array\n\t\t * of latlngs\n\t\t *\n\t\t * @param {Array} latLngs\n\t\t * @returns {Array}\n\t\t */\n\t\tgetConvexHull: function (latLngs) {\n\t\t\t// find first baseline\n\t\t\tvar maxLat = false, minLat = false,\n\t\t\t\tmaxLng = false, minLng = false,\n\t\t\t\tmaxLatPt = null, minLatPt = null,\n\t\t\t\tmaxLngPt = null, minLngPt = null,\n\t\t\t\tmaxPt = null, minPt = null,\n\t\t\t\ti;\n\n\t\t\tfor (i = latLngs.length - 1; i >= 0; i--) {\n\t\t\t\tvar pt = latLngs[i];\n\t\t\t\tif (maxLat === false || pt.lat > maxLat) {\n\t\t\t\t\tmaxLatPt = pt;\n\t\t\t\t\tmaxLat = pt.lat;\n\t\t\t\t}\n\t\t\t\tif (minLat === false || pt.lat < minLat) {\n\t\t\t\t\tminLatPt = pt;\n\t\t\t\t\tminLat = pt.lat;\n\t\t\t\t}\n\t\t\t\tif (maxLng === false || pt.lng > maxLng) {\n\t\t\t\t\tmaxLngPt = pt;\n\t\t\t\t\tmaxLng = pt.lng;\n\t\t\t\t}\n\t\t\t\tif (minLng === false || pt.lng < minLng) {\n\t\t\t\t\tminLngPt = pt;\n\t\t\t\t\tminLng = pt.lng;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif (minLat !== maxLat) {\n\t\t\t\tminPt = minLatPt;\n\t\t\t\tmaxPt = maxLatPt;\n\t\t\t} else {\n\t\t\t\tminPt = minLngPt;\n\t\t\t\tmaxPt = maxLngPt;\n\t\t\t}\n\n\t\t\tvar ch = [].concat(this.buildConvexHull([minPt, maxPt], latLngs),\n\t\t\t\t\t\t\t\tthis.buildConvexHull([maxPt, minPt], latLngs));\n\t\t\treturn ch;\n\t\t}\n\t};\n}());\n\nL.MarkerCluster.include({\n\tgetConvexHull: function () {\n\t\tvar childMarkers = this.getAllChildMarkers(),\n\t\t\tpoints = [],\n\t\t\tp, i;\n\n\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\tp = childMarkers[i].getLatLng();\n\t\t\tpoints.push(p);\n\t\t}\n\n\t\treturn L.QuickHull.getConvexHull(points);\n\t}\n});\n","//This code is 100% based on https://github.com/jawj/OverlappingMarkerSpiderfier-Leaflet\n//Huge thanks to jawj for implementing it first to make my job easy :-)\n\nL.MarkerCluster.include({\n\n\t_2PI: Math.PI * 2,\n\t_circleFootSeparation: 25, //related to circumference of circle\n\t_circleStartAngle: 0,\n\n\t_spiralFootSeparation: 28, //related to size of spiral (experiment!)\n\t_spiralLengthStart: 11,\n\t_spiralLengthFactor: 5,\n\n\t_circleSpiralSwitchover: 9, //show spiral instead of circle from this marker count upwards.\n\t\t\t\t\t\t\t\t// 0 -> always spiral; Infinity -> always circle\n\n\tspiderfy: function () {\n\t\tif (this._group._spiderfied === this || this._group._inZoomAnimation) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar childMarkers = this.getAllChildMarkers(null, true),\n\t\t\tgroup = this._group,\n\t\t\tmap = group._map,\n\t\t\tcenter = map.latLngToLayerPoint(this._latlng),\n\t\t\tpositions;\n\n\t\tthis._group._unspiderfy();\n\t\tthis._group._spiderfied = this;\n\n\t\t//TODO Maybe: childMarkers order by distance to center\n\n\t\tif (this._group.options.spiderfyShapePositions) {\n\t\t\tpositions = this._group.options.spiderfyShapePositions(childMarkers.length, center);\n\t\t} else if (childMarkers.length >= this._circleSpiralSwitchover) {\n\t\t\tpositions = this._generatePointsSpiral(childMarkers.length, center);\n\t\t} else {\n\t\t\tcenter.y += 10; // Otherwise circles look wrong => hack for standard blue icon, renders differently for other icons.\n\t\t\tpositions = this._generatePointsCircle(childMarkers.length, center);\n\t\t}\n\n\t\tthis._animationSpiderfy(childMarkers, positions);\n\t},\n\n\tunspiderfy: function (zoomDetails) {\n\t\t/// <param Name=\"zoomDetails\">Argument from zoomanim if being called in a zoom animation or null otherwise</param>\n\t\tif (this._group._inZoomAnimation) {\n\t\t\treturn;\n\t\t}\n\t\tthis._animationUnspiderfy(zoomDetails);\n\n\t\tthis._group._spiderfied = null;\n\t},\n\n\t_generatePointsCircle: function (count, centerPt) {\n\t\tvar circumference = this._group.options.spiderfyDistanceMultiplier * this._circleFootSeparation * (2 + count),\n\t\t\tlegLength = circumference / this._2PI, //radius from circumference\n\t\t\tangleStep = this._2PI / count,\n\t\t\tres = [],\n\t\t\ti, angle;\n\n\t\tlegLength = Math.max(legLength, 35); // Minimum distance to get outside the cluster icon.\n\n\t\tres.length = count;\n\n\t\tfor (i = 0; i < count; i++) { // Clockwise, like spiral.\n\t\t\tangle = this._circleStartAngle + i * angleStep;\n\t\t\tres[i] = new L.Point(centerPt.x + legLength * Math.cos(angle), centerPt.y + legLength * Math.sin(angle))._round();\n\t\t}\n\n\t\treturn res;\n\t},\n\n\t_generatePointsSpiral: function (count, centerPt) {\n\t\tvar spiderfyDistanceMultiplier = this._group.options.spiderfyDistanceMultiplier,\n\t\t\tlegLength = spiderfyDistanceMultiplier * this._spiralLengthStart,\n\t\t\tseparation = spiderfyDistanceMultiplier * this._spiralFootSeparation,\n\t\t\tlengthFactor = spiderfyDistanceMultiplier * this._spiralLengthFactor * this._2PI,\n\t\t\tangle = 0,\n\t\t\tres = [],\n\t\t\ti;\n\n\t\tres.length = count;\n\n\t\t// Higher index, closer position to cluster center.\n\t\tfor (i = count; i >= 0; i--) {\n\t\t\t// Skip the first position, so that we are already farther from center and we avoid\n\t\t\t// being under the default cluster icon (especially important for Circle Markers).\n\t\t\tif (i < count) {\n\t\t\t\tres[i] = new L.Point(centerPt.x + legLength * Math.cos(angle), centerPt.y + legLength * Math.sin(angle))._round();\n\t\t\t}\n\t\t\tangle += separation / legLength + i * 0.0005;\n\t\t\tlegLength += lengthFactor / angle;\n\t\t}\n\t\treturn res;\n\t},\n\n\t_noanimationUnspiderfy: function () {\n\t\tvar group = this._group,\n\t\t\tmap = group._map,\n\t\t\tfg = group._featureGroup,\n\t\t\tchildMarkers = this.getAllChildMarkers(null, true),\n\t\t\tm, i;\n\n\t\tgroup._ignoreMove = true;\n\n\t\tthis.setOpacity(1);\n\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\tm = childMarkers[i];\n\n\t\t\tfg.removeLayer(m);\n\n\t\t\tif (m._preSpiderfyLatlng) {\n\t\t\t\tm.setLatLng(m._preSpiderfyLatlng);\n\t\t\t\tdelete m._preSpiderfyLatlng;\n\t\t\t}\n\t\t\tif (m.setZIndexOffset) {\n\t\t\t\tm.setZIndexOffset(0);\n\t\t\t}\n\n\t\t\tif (m._spiderLeg) {\n\t\t\t\tmap.removeLayer(m._spiderLeg);\n\t\t\t\tdelete m._spiderLeg;\n\t\t\t}\n\t\t}\n\n\t\tgroup.fire('unspiderfied', {\n\t\t\tcluster: this,\n\t\t\tmarkers: childMarkers\n\t\t});\n\t\tgroup._ignoreMove = false;\n\t\tgroup._spiderfied = null;\n\t}\n});\n\n//Non Animated versions of everything\nL.MarkerClusterNonAnimated = L.MarkerCluster.extend({\n\t_animationSpiderfy: function (childMarkers, positions) {\n\t\tvar group = this._group,\n\t\t\tmap = group._map,\n\t\t\tfg = group._featureGroup,\n\t\t\tlegOptions = this._group.options.spiderLegPolylineOptions,\n\t\t\ti, m, leg, newPos;\n\n\t\tgroup._ignoreMove = true;\n\n\t\t// Traverse in ascending order to make sure that inner circleMarkers are on top of further legs. Normal markers are re-ordered by newPosition.\n\t\t// The reverse order trick no longer improves performance on modern browsers.\n\t\tfor (i = 0; i < childMarkers.length; i++) {\n\t\t\tnewPos = map.layerPointToLatLng(positions[i]);\n\t\t\tm = childMarkers[i];\n\n\t\t\t// Add the leg before the marker, so that in case the latter is a circleMarker, the leg is behind it.\n\t\t\tleg = new L.Polyline([this._latlng, newPos], legOptions);\n\t\t\tmap.addLayer(leg);\n\t\t\tm._spiderLeg = leg;\n\n\t\t\t// Now add the marker.\n\t\t\tm._preSpiderfyLatlng = m._latlng;\n\t\t\tm.setLatLng(newPos);\n\t\t\tif (m.setZIndexOffset) {\n\t\t\t\tm.setZIndexOffset(1000000); //Make these appear on top of EVERYTHING\n\t\t\t}\n\n\t\t\tfg.addLayer(m);\n\t\t}\n\t\tthis.setOpacity(0.3);\n\n\t\tgroup._ignoreMove = false;\n\t\tgroup.fire('spiderfied', {\n\t\t\tcluster: this,\n\t\t\tmarkers: childMarkers\n\t\t});\n\t},\n\n\t_animationUnspiderfy: function () {\n\t\tthis._noanimationUnspiderfy();\n\t}\n});\n\n//Animated versions here\nL.MarkerCluster.include({\n\n\t_animationSpiderfy: function (childMarkers, positions) {\n\t\tvar me = this,\n\t\t\tgroup = this._group,\n\t\t\tmap = group._map,\n\t\t\tfg = group._featureGroup,\n\t\t\tthisLayerLatLng = this._latlng,\n\t\t\tthisLayerPos = map.latLngToLayerPoint(thisLayerLatLng),\n\t\t\tsvg = L.Path.SVG,\n\t\t\tlegOptions = L.extend({}, this._group.options.spiderLegPolylineOptions), // Copy the options so that we can modify them for animation.\n\t\t\tfinalLegOpacity = legOptions.opacity,\n\t\t\ti, m, leg, legPath, legLength, newPos;\n\n\t\tif (finalLegOpacity === undefined) {\n\t\t\tfinalLegOpacity = L.MarkerClusterGroup.prototype.options.spiderLegPolylineOptions.opacity;\n\t\t}\n\n\t\tif (svg) {\n\t\t\t// If the initial opacity of the spider leg is not 0 then it appears before the animation starts.\n\t\t\tlegOptions.opacity = 0;\n\n\t\t\t// Add the class for CSS transitions.\n\t\t\tlegOptions.className = (legOptions.className || '') + ' leaflet-cluster-spider-leg';\n\t\t} else {\n\t\t\t// Make sure we have a defined opacity.\n\t\t\tlegOptions.opacity = finalLegOpacity;\n\t\t}\n\n\t\tgroup._ignoreMove = true;\n\n\t\t// Add markers and spider legs to map, hidden at our center point.\n\t\t// Traverse in ascending order to make sure that inner circleMarkers are on top of further legs. Normal markers are re-ordered by newPosition.\n\t\t// The reverse order trick no longer improves performance on modern browsers.\n\t\tfor (i = 0; i < childMarkers.length; i++) {\n\t\t\tm = childMarkers[i];\n\n\t\t\tnewPos = map.layerPointToLatLng(positions[i]);\n\n\t\t\t// Add the leg before the marker, so that in case the latter is a circleMarker, the leg is behind it.\n\t\t\tleg = new L.Polyline([thisLayerLatLng, newPos], legOptions);\n\t\t\tmap.addLayer(leg);\n\t\t\tm._spiderLeg = leg;\n\n\t\t\t// Explanations: https://jakearchibald.com/2013/animated-line-drawing-svg/\n\t\t\t// In our case the transition property is declared in the CSS file.\n\t\t\tif (svg) {\n\t\t\t\tlegPath = leg._path;\n\t\t\t\tlegLength = legPath.getTotalLength() + 0.1; // Need a small extra length to avoid remaining dot in Firefox.\n\t\t\t\tlegPath.style.strokeDasharray = legLength; // Just 1 length is enough, it will be duplicated.\n\t\t\t\tlegPath.style.strokeDashoffset = legLength;\n\t\t\t}\n\n\t\t\t// If it is a marker, add it now and we'll animate it out\n\t\t\tif (m.setZIndexOffset) {\n\t\t\t\tm.setZIndexOffset(1000000); // Make normal markers appear on top of EVERYTHING\n\t\t\t}\n\t\t\tif (m.clusterHide) {\n\t\t\t\tm.clusterHide();\n\t\t\t}\n\t\t\t\n\t\t\t// Vectors just get immediately added\n\t\t\tfg.addLayer(m);\n\n\t\t\tif (m._setPos) {\n\t\t\t\tm._setPos(thisLayerPos);\n\t\t\t}\n\t\t}\n\n\t\tgroup._forceLayout();\n\t\tgroup._animationStart();\n\n\t\t// Reveal markers and spider legs.\n\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\tnewPos = map.layerPointToLatLng(positions[i]);\n\t\t\tm = childMarkers[i];\n\n\t\t\t//Move marker to new position\n\t\t\tm._preSpiderfyLatlng = m._latlng;\n\t\t\tm.setLatLng(newPos);\n\t\t\t\n\t\t\tif (m.clusterShow) {\n\t\t\t\tm.clusterShow();\n\t\t\t}\n\n\t\t\t// Animate leg (animation is actually delegated to CSS transition).\n\t\t\tif (svg) {\n\t\t\t\tleg = m._spiderLeg;\n\t\t\t\tlegPath = leg._path;\n\t\t\t\tlegPath.style.strokeDashoffset = 0;\n\t\t\t\t//legPath.style.strokeOpacity = finalLegOpacity;\n\t\t\t\tleg.setStyle({opacity: finalLegOpacity});\n\t\t\t}\n\t\t}\n\t\tthis.setOpacity(0.3);\n\n\t\tgroup._ignoreMove = false;\n\n\t\tsetTimeout(function () {\n\t\t\tgroup._animationEnd();\n\t\t\tgroup.fire('spiderfied', {\n\t\t\t\tcluster: me,\n\t\t\t\tmarkers: childMarkers\n\t\t\t});\n\t\t}, 200);\n\t},\n\n\t_animationUnspiderfy: function (zoomDetails) {\n\t\tvar me = this,\n\t\t\tgroup = this._group,\n\t\t\tmap = group._map,\n\t\t\tfg = group._featureGroup,\n\t\t\tthisLayerPos = zoomDetails ? map._latLngToNewLayerPoint(this._latlng, zoomDetails.zoom, zoomDetails.center) : map.latLngToLayerPoint(this._latlng),\n\t\t\tchildMarkers = this.getAllChildMarkers(null, true),\n\t\t\tsvg = L.Path.SVG,\n\t\t\tm, i, leg, legPath, legLength, nonAnimatable;\n\n\t\tgroup._ignoreMove = true;\n\t\tgroup._animationStart();\n\n\t\t//Make us visible and bring the child markers back in\n\t\tthis.setOpacity(1);\n\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\tm = childMarkers[i];\n\n\t\t\t//Marker was added to us after we were spiderfied\n\t\t\tif (!m._preSpiderfyLatlng) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t//Close any popup on the marker first, otherwise setting the location of the marker will make the map scroll\n\t\t\tm.closePopup();\n\n\t\t\t//Fix up the location to the real one\n\t\t\tm.setLatLng(m._preSpiderfyLatlng);\n\t\t\tdelete m._preSpiderfyLatlng;\n\n\t\t\t//Hack override the location to be our center\n\t\t\tnonAnimatable = true;\n\t\t\tif (m._setPos) {\n\t\t\t\tm._setPos(thisLayerPos);\n\t\t\t\tnonAnimatable = false;\n\t\t\t}\n\t\t\tif (m.clusterHide) {\n\t\t\t\tm.clusterHide();\n\t\t\t\tnonAnimatable = false;\n\t\t\t}\n\t\t\tif (nonAnimatable) {\n\t\t\t\tfg.removeLayer(m);\n\t\t\t}\n\n\t\t\t// Animate the spider leg back in (animation is actually delegated to CSS transition).\n\t\t\tif (svg) {\n\t\t\t\tleg = m._spiderLeg;\n\t\t\t\tlegPath = leg._path;\n\t\t\t\tlegLength = legPath.getTotalLength() + 0.1;\n\t\t\t\tlegPath.style.strokeDashoffset = legLength;\n\t\t\t\tleg.setStyle({opacity: 0});\n\t\t\t}\n\t\t}\n\n\t\tgroup._ignoreMove = false;\n\n\t\tsetTimeout(function () {\n\t\t\t//If we have only <= one child left then that marker will be shown on the map so don't remove it!\n\t\t\tvar stillThereChildCount = 0;\n\t\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\t\tm = childMarkers[i];\n\t\t\t\tif (m._spiderLeg) {\n\t\t\t\t\tstillThereChildCount++;\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tfor (i = childMarkers.length - 1; i >= 0; i--) {\n\t\t\t\tm = childMarkers[i];\n\n\t\t\t\tif (!m._spiderLeg) { //Has already been unspiderfied\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tif (m.clusterShow) {\n\t\t\t\t\tm.clusterShow();\n\t\t\t\t}\n\t\t\t\tif (m.setZIndexOffset) {\n\t\t\t\t\tm.setZIndexOffset(0);\n\t\t\t\t}\n\n\t\t\t\tif (stillThereChildCount > 1) {\n\t\t\t\t\tfg.removeLayer(m);\n\t\t\t\t}\n\n\t\t\t\tmap.removeLayer(m._spiderLeg);\n\t\t\t\tdelete m._spiderLeg;\n\t\t\t}\n\t\t\tgroup._animationEnd();\n\t\t\tgroup.fire('unspiderfied', {\n\t\t\t\tcluster: me,\n\t\t\t\tmarkers: childMarkers\n\t\t\t});\n\t\t}, 200);\n\t}\n});\n\n\nL.MarkerClusterGroup.include({\n\t//The MarkerCluster currently spiderfied (if any)\n\t_spiderfied: null,\n\n\tunspiderfy: function () {\n\t\tthis._unspiderfy.apply(this, arguments);\n\t},\n\n\t_spiderfierOnAdd: function () {\n\t\tthis._map.on('click', this._unspiderfyWrapper, this);\n\n\t\tif (this._map.options.zoomAnimation) {\n\t\t\tthis._map.on('zoomstart', this._unspiderfyZoomStart, this);\n\t\t}\n\t\t//Browsers without zoomAnimation or a big zoom don't fire zoomstart\n\t\tthis._map.on('zoomend', this._noanimationUnspiderfy, this);\n\n\t\tif (!L.Browser.touch) {\n\t\t\tthis._map.getRenderer(this);\n\t\t\t//Needs to happen in the pageload, not after, or animations don't work in webkit\n\t\t\t// http://stackoverflow.com/questions/8455200/svg-animate-with-dynamically-added-elements\n\t\t\t//Disable on touch browsers as the animation messes up on a touch zoom and isn't very noticable\n\t\t}\n\t},\n\n\t_spiderfierOnRemove: function () {\n\t\tthis._map.off('click', this._unspiderfyWrapper, this);\n\t\tthis._map.off('zoomstart', this._unspiderfyZoomStart, this);\n\t\tthis._map.off('zoomanim', this._unspiderfyZoomAnim, this);\n\t\tthis._map.off('zoomend', this._noanimationUnspiderfy, this);\n\n\t\t//Ensure that markers are back where they should be\n\t\t// Use no animation to avoid a sticky leaflet-cluster-anim class on mapPane\n\t\tthis._noanimationUnspiderfy();\n\t},\n\n\t//On zoom start we add a zoomanim handler so that we are guaranteed to be last (after markers are animated)\n\t//This means we can define the animation they do rather than Markers doing an animation to their actual location\n\t_unspiderfyZoomStart: function () {\n\t\tif (!this._map) { //May have been removed from the map by a zoomEnd handler\n\t\t\treturn;\n\t\t}\n\n\t\tthis._map.on('zoomanim', this._unspiderfyZoomAnim, this);\n\t},\n\n\t_unspiderfyZoomAnim: function (zoomDetails) {\n\t\t//Wait until the first zoomanim after the user has finished touch-zooming before running the animation\n\t\tif (L.DomUtil.hasClass(this._map._mapPane, 'leaflet-touching')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._map.off('zoomanim', this._unspiderfyZoomAnim, this);\n\t\tthis._unspiderfy(zoomDetails);\n\t},\n\n\t_unspiderfyWrapper: function () {\n\t\t/// <summary>_unspiderfy but passes no arguments</summary>\n\t\tthis._unspiderfy();\n\t},\n\n\t_unspiderfy: function (zoomDetails) {\n\t\tif (this._spiderfied) {\n\t\t\tthis._spiderfied.unspiderfy(zoomDetails);\n\t\t}\n\t},\n\n\t_noanimationUnspiderfy: function () {\n\t\tif (this._spiderfied) {\n\t\t\tthis._spiderfied._noanimationUnspiderfy();\n\t\t}\n\t},\n\n\t//If the given layer is currently being spiderfied then we unspiderfy it so it isn't on the map anymore etc\n\t_unspiderfyLayer: function (layer) {\n\t\tif (layer._spiderLeg) {\n\t\t\tthis._featureGroup.removeLayer(layer);\n\n\t\t\tif (layer.clusterShow) {\n\t\t\t\tlayer.clusterShow();\n\t\t\t}\n\t\t\t\t//Position will be fixed up immediately in _animationUnspiderfy\n\t\t\tif (layer.setZIndexOffset) {\n\t\t\t\tlayer.setZIndexOffset(0);\n\t\t\t}\n\n\t\t\tthis._map.removeLayer(layer._spiderLeg);\n\t\t\tdelete layer._spiderLeg;\n\t\t}\n\t}\n});\n","/**\n * Adds 1 public method to MCG and 1 to L.Marker to facilitate changing\n * markers' icon options and refreshing their icon and their parent clusters\n * accordingly (case where their iconCreateFunction uses data of childMarkers\n * to make up the cluster icon).\n */\n\n\nL.MarkerClusterGroup.include({\n\t/**\n\t * Updates the icon of all clusters which are parents of the given marker(s).\n\t * In singleMarkerMode, also updates the given marker(s) icon.\n\t * @param layers L.MarkerClusterGroup|L.LayerGroup|Array(L.Marker)|Map(L.Marker)|\n\t * L.MarkerCluster|L.Marker (optional) list of markers (or single marker) whose parent\n\t * clusters need to be updated. If not provided, retrieves all child markers of this.\n\t * @returns {L.MarkerClusterGroup}\n\t */\n\trefreshClusters: function (layers) {\n\t\tif (!layers) {\n\t\t\tlayers = this._topClusterLevel.getAllChildMarkers();\n\t\t} else if (layers instanceof L.MarkerClusterGroup) {\n\t\t\tlayers = layers._topClusterLevel.getAllChildMarkers();\n\t\t} else if (layers instanceof L.LayerGroup) {\n\t\t\tlayers = layers._layers;\n\t\t} else if (layers instanceof L.MarkerCluster) {\n\t\t\tlayers = layers.getAllChildMarkers();\n\t\t} else if (layers instanceof L.Marker) {\n\t\t\tlayers = [layers];\n\t\t} // else: must be an Array(L.Marker)|Map(L.Marker)\n\t\tthis._flagParentsIconsNeedUpdate(layers);\n\t\tthis._refreshClustersIcons();\n\n\t\t// In case of singleMarkerMode, also re-draw the markers.\n\t\tif (this.options.singleMarkerMode) {\n\t\t\tthis._refreshSingleMarkerModeMarkers(layers);\n\t\t}\n\n\t\treturn this;\n\t},\n\n\t/**\n\t * Simply flags all parent clusters of the given markers as having a \"dirty\" icon.\n\t * @param layers Array(L.Marker)|Map(L.Marker) list of markers.\n\t * @private\n\t */\n\t_flagParentsIconsNeedUpdate: function (layers) {\n\t\tvar id, parent;\n\n\t\t// Assumes layers is an Array or an Object whose prototype is non-enumerable.\n\t\tfor (id in layers) {\n\t\t\t// Flag parent clusters' icon as \"dirty\", all the way up.\n\t\t\t// Dumb process that flags multiple times upper parents, but still\n\t\t\t// much more efficient than trying to be smart and make short lists,\n\t\t\t// at least in the case of a hierarchy following a power law:\n\t\t\t// http://jsperf.com/flag-nodes-in-power-hierarchy/2\n\t\t\tparent = layers[id].__parent;\n\t\t\twhile (parent) {\n\t\t\t\tparent._iconNeedsUpdate = true;\n\t\t\t\tparent = parent.__parent;\n\t\t\t}\n\t\t}\n\t},\n\n\t/**\n\t * Re-draws the icon of the supplied markers.\n\t * To be used in singleMarkerMode only.\n\t * @param layers Array(L.Marker)|Map(L.Marker) list of markers.\n\t * @private\n\t */\n\t_refreshSingleMarkerModeMarkers: function (layers) {\n\t\tvar id, layer;\n\n\t\tfor (id in layers) {\n\t\t\tlayer = layers[id];\n\n\t\t\t// Make sure we do not override markers that do not belong to THIS group.\n\t\t\tif (this.hasLayer(layer)) {\n\t\t\t\t// Need to re-create the icon first, then re-draw the marker.\n\t\t\t\tlayer.setIcon(this._overrideMarkerIcon(layer));\n\t\t\t}\n\t\t}\n\t}\n});\n\nL.Marker.include({\n\t/**\n\t * Updates the given options in the marker's icon and refreshes the marker.\n\t * @param options map object of icon options.\n\t * @param directlyRefreshClusters boolean (optional) true to trigger\n\t * MCG.refreshClustersOf() right away with this single marker.\n\t * @returns {L.Marker}\n\t */\n\trefreshIconOptions: function (options, directlyRefreshClusters) {\n\t\tvar icon = this.options.icon;\n\n\t\tL.setOptions(icon, options);\n\n\t\tthis.setIcon(icon);\n\n\t\t// Shortcut to refresh the associated MCG clusters right away.\n\t\t// To be used when refreshing a single marker.\n\t\t// Otherwise, better use MCG.refreshClusters() once at the end with\n\t\t// the list of modified markers.\n\t\tif (directlyRefreshClusters && this.__parent) {\n\t\t\tthis.__parent._group.refreshClusters(this);\n\t\t}\n\n\t\treturn this;\n\t}\n});\n"],"names":[],"mappings":";;;;;;;;;;;;CAAA;CACA;CACA;;AAEA,AAAU,KAAC,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;;CAE7E,CAAC,OAAO,EAAE;CACV,EAAE,gBAAgB,EAAE,EAAE;CACtB,EAAE,kBAAkB,EAAE,IAAI;CAC1B,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI;;CAE9C,EAAE,mBAAmB,EAAE,KAAK;CAC5B,EAAE,iBAAiB,EAAE,IAAI;CACzB,EAAE,mBAAmB,EAAE,IAAI;CAC3B,EAAE,mBAAmB,EAAE,IAAI;CAC3B,EAAE,gBAAgB,EAAE,KAAK;;CAEzB,EAAE,uBAAuB,EAAE,IAAI;;CAE/B;CACA;CACA,EAAE,0BAA0B,EAAE,IAAI;;CAElC;CACA;CACA;CACA,EAAE,OAAO,EAAE,IAAI;;CAEf;CACA;CACA,EAAE,oBAAoB,EAAE,KAAK;;CAE7B;CACA,EAAE,sBAAsB,EAAE,IAAI;;CAE9B;CACA,EAAE,0BAA0B,EAAE,CAAC;;CAE/B;CACA,EAAE,wBAAwB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE;;CAExE;CACA,EAAE,cAAc,EAAE,KAAK;CACvB,EAAE,aAAa,EAAE,GAAG;CACpB,EAAE,UAAU,EAAE,EAAE;CAChB,EAAE,aAAa,EAAE,IAAI;;CAErB;CACA,EAAE,cAAc,EAAE,EAAE;CACpB,EAAE;;CAEF,CAAC,UAAU,EAAE,UAAU,OAAO,EAAE;CAChC,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CACnC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;CACxC,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,0BAA0B,CAAC;CACrE,GAAG;;CAEH,EAAE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;CACxC,EAAE,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;;CAE1C,EAAE,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,YAAY,EAAE,CAAC;CACzC,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;;CAE3C,EAAE,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;CAC5B,EAAE,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;CAC7B,EAAE,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;CAC3B;CACA,EAAE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;;CAElC,EAAE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;;CAEnB,EAAE,IAAI,CAAC,yBAAyB,GAAG;CACnC,GAAG,WAAW,EAAE,IAAI,CAAC,qBAAqB;CAC1C,GAAG,MAAM,EAAE,IAAI,CAAC,iBAAiB;CACjC,GAAG,SAAS,EAAE,IAAI,CAAC,mBAAmB;CACtC,GAAG,CAAC;;CAEJ;CACA,EAAE,IAAI,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;CAC7D,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;CACpE;CACA,EAAE,IAAI,CAAC,cAAc,GAAG,OAAO,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,wBAAwB,CAAC;CAC/E,EAAE;;CAEF,CAAC,QAAQ,EAAE,UAAU,KAAK,EAAE;;CAE5B,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,UAAU,EAAE;CACrC,GAAG,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;CAClC,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;CACxB,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CACvC,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;CAC3C,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;CACrC,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;CAC3C,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;CAC5B,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;;CAGH;;CAEA,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;CACxB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;CACtB,GAAG;;CAEH,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;CACvC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;;CAE1C;CACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;;CAE7C,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;;CAE/B;CACA,EAAE,IAAI,YAAY,GAAG,KAAK;CAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;CAC/B,EAAE,IAAI,KAAK,CAAC,QAAQ,EAAE;CACtB,GAAG,OAAO,YAAY,CAAC,QAAQ,CAAC,KAAK,IAAI,WAAW,EAAE;CACtD,IAAI,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC;CACzC,IAAI;CACJ,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE;CACnE,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE;CAC1C,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;CACjD,IAAI,MAAM;CACV,IAAI,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;CAC5D,IAAI;CACJ,GAAG;CACH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF,CAAC,WAAW,EAAE,UAAU,KAAK,EAAE;;CAE/B,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,UAAU,EAAE;CACrC,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;CACrC,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;CACxB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;CAC1C,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;CAC9C,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;CACjF,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;CACtE,IAAI;CACJ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;CAC9C,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;CACvB,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;CACxB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;CACtB,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;CAChC,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;CACjC,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;;CAE7C;CACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;;CAE7C,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;;CAE/B,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;;CAElD,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;CAC1C,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;CACzC,GAAG,IAAI,KAAK,CAAC,WAAW,EAAE;CAC1B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;CACxB,IAAI;CACJ,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,UAAU,WAAW,EAAE,iBAAiB,EAAE;CACtD,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;CACpC,GAAG,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;CACrC,GAAG;;CAEH,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,aAAa;CAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc;CAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc;CAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa;CAChD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa;CAChD,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM;CAC5B,MAAM,MAAM,GAAG,CAAC;CAChB,MAAM,aAAa,GAAG,IAAI;CAC1B,MAAM,CAAC,CAAC;;CAER,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;CACjB,GAAG,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;CACxC,GAAG,IAAI,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY;CACpC,IAAI,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC;;CAEvC;CACA,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;CACvC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;CACxB,KAAK;;CAEL,IAAI,OAAO,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE;CACjC,KAAK,IAAI,OAAO,IAAI,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE;CACxC;CACA,MAAM,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;CACnD,MAAM,IAAI,OAAO,GAAG,aAAa,EAAE;CACnC,OAAO,MAAM;CACb,OAAO;CACP,MAAM;;CAEN,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;;CAE7B;CACA;CACA;CACA;CACA;CACA;CACA,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE;CACpC,MAAM,IAAI,aAAa,EAAE;CACzB,OAAO,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;CACzC,OAAO,aAAa,GAAG,KAAK,CAAC;CAC7B,OAAO;CACP,MAAM,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;CAClD,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;CAC7B,MAAM,SAAS;CACf,MAAM;;CAEN;CACA,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE;CACvB,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CACtB,MAAM,IAAI,CAAC,iBAAiB,EAAE;CAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;CAC3C,OAAO;CACP,MAAM,SAAS;CACf,MAAM;;CAEN,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;CAC3B,MAAM,SAAS;CACf,MAAM;;CAEN,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;CACtC,KAAK,IAAI,CAAC,iBAAiB,EAAE;CAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;CAC1C,MAAM;;CAEN;CACA,KAAK,IAAI,CAAC,CAAC,QAAQ,EAAE;CACrB,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE;CAC5C,OAAO,IAAI,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE;CACpD,WAAW,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACpE,OAAO,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;CACnC,OAAO;CACP,MAAM;CACN,KAAK;;CAEL,IAAI,IAAI,aAAa,EAAE;CACvB;CACA,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;CAChE,KAAK;;CAEL;CACA,IAAI,IAAI,MAAM,KAAK,CAAC,EAAE;;CAEtB;CACA,KAAK,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;;CAEhD,KAAK,IAAI,CAAC,qBAAqB,EAAE,CAAC;;CAElC,KAAK,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;CACpG,KAAK,MAAM;CACX,KAAK,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;CAClD,KAAK;CACL,IAAI,EAAE,IAAI,CAAC,CAAC;;CAEZ,GAAG,OAAO,EAAE,CAAC;CACb,GAAG,MAAM;CACT,GAAG,IAAI,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;;CAE/C,GAAG,OAAO,MAAM,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE;CAChC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;;CAE5B;CACA,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE;CACnC,KAAK,IAAI,aAAa,EAAE;CACxB,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;CACxC,MAAM,aAAa,GAAG,KAAK,CAAC;CAC5B,MAAM;CACN,KAAK,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;CACjD,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;CAC5B,KAAK,SAAS;CACd,KAAK;;CAEL;CACA,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE;CACtB,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CACrB,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;CAC1B,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAC5B,IAAI;CACJ,GAAG;CACH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF;CACA,CAAC,YAAY,EAAE,UAAU,WAAW,EAAE;CACtC,EAAE,IAAI,CAAC,EAAE,CAAC;CACV,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM;CAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,aAAa;CAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc;CAC/B,MAAM,aAAa,GAAG,IAAI,CAAC;;CAE3B,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CAC3B,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;;CAEvB;CACA,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE;CACnC,KAAK,IAAI,aAAa,EAAE;CACxB,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;CACxC,MAAM,aAAa,GAAG,KAAK,CAAC;CAC5B,MAAM;CACN,KAAK,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;CACjD,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;CAC5B,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;CAChD,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACvB,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;CAC1B,KAAK,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;CAC/D,KAAK;CACL,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;CAC3C,IAAI;CACJ,GAAG,OAAO,IAAI,CAAC;CACf,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;CACxB,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;;CAEtB;CACA,GAAG,IAAI,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE;CACzC,OAAO,EAAE,GAAG,CAAC,CAAC;CACd,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;CAC5B,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAExB;CACA,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE;CACnC,KAAK,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;CAClD,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC;CAC9B,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;CAC7B,IAAI;CACJ,GAAG;;CAEH,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CAC1B,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;;CAEtB;CACA,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,UAAU,EAAE;CAClC,IAAI,IAAI,aAAa,EAAE;CACvB,KAAK,WAAW,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;CACvC,KAAK,aAAa,GAAG,KAAK,CAAC;CAC3B,KAAK;CACL,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;CAChD,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;CAC3B,IAAI,SAAS;CACb,IAAI;;CAEJ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;CACpB,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACvB,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;CAC3C,IAAI,SAAS;CACb,IAAI;;CAEJ,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;CACpC,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;;CAE1C,GAAG,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;CACvB,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACtB,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE;CACvB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK;CACL,IAAI;CACJ,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;;CAE7C,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;;CAE/B;CACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;;CAEjG,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF;CACA,CAAC,WAAW,EAAE,YAAY;CAC1B;;CAEA;CACA,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;CAC9B,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;CAC5B,GAAG,OAAO,IAAI,CAAC,aAAa,CAAC;CAC7B,GAAG,OAAO,IAAI,CAAC,gBAAgB,CAAC;CAChC,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,sBAAsB,EAAE;CACnC,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;CACjC,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;CACnC,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;;CAEpC,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,MAAM,EAAE;CACnC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;CACpD,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC;CAC1B,GAAG,EAAE,IAAI,CAAC,CAAC;;CAEX,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;CACjB;CACA,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;CACnC,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,YAAY;CACxB,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;;CAEpC,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;CAChD,GAAG;;CAEH,EAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC9D,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;CACvD,GAAG;;CAEH,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,CAAC;;CAEjD,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,UAAU,MAAM,EAAE,OAAO,EAAE;CACvC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;CAC7C,GAAG,aAAa,GAAG,IAAI,CAAC,cAAc;CACtC,GAAG,iBAAiB,EAAE,CAAC,EAAE,CAAC,CAAC;;CAE3B,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;CACrD,GAAG;;CAEH,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC5C,GAAG,iBAAiB,GAAG,IAAI,CAAC;;CAE5B,GAAG,KAAK,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACnD,IAAI,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;CAC/C,KAAK,iBAAiB,GAAG,KAAK,CAAC;CAC/B,KAAK,MAAM;CACX,KAAK;CACL,IAAI;;CAEJ,GAAG,IAAI,iBAAiB,EAAE;CAC1B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;CACrC,IAAI;CACJ,GAAG;;CAEH,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjD,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,YAAY;CACxB,EAAE,IAAI,MAAM,GAAG,EAAE,CAAC;CAClB,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;CAC9B,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAClB,GAAG,CAAC,CAAC;CACL,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF;CACA,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE;CACzB,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC;;CAEpB,EAAE,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;CAExB,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;CAC9B,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;CAC1B,IAAI,MAAM,GAAG,CAAC,CAAC;CACf,IAAI;CACJ,GAAG,CAAC,CAAC;;CAEL,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF;CACA,CAAC,QAAQ,EAAE,UAAU,KAAK,EAAE;CAC5B,EAAE,IAAI,CAAC,KAAK,EAAE;CACd,GAAG,OAAO,KAAK,CAAC;CAChB,GAAG;;CAEH,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC;;CAEzC,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC5C,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;CAC7B,IAAI,OAAO,IAAI,CAAC;CAChB,IAAI;CACJ,GAAG;;CAEH,EAAE,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC;CAChC,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC5C,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,EAAE;CACnC,IAAI,OAAO,KAAK,CAAC;CACjB,IAAI;CACJ,GAAG;;CAEH,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CACrG,EAAE;;CAEF;CACA,CAAC,eAAe,EAAE,UAAU,KAAK,EAAE,QAAQ,EAAE;;CAE7C,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;;CAEtB,EAAE,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;CACtC,GAAG,QAAQ,GAAG,YAAY,EAAE,CAAC;CAC7B,GAAG;;CAEH,EAAE,IAAI,UAAU,GAAG,YAAY;CAC/B;CACA;CACA,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE;CACxF,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;CAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;;CAE/C,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;CAC7B,KAAK,QAAQ,EAAE,CAAC;CAChB,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE;CACrC,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;CAC7C,KAAK,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;CAC/B,KAAK;CACL,IAAI;CACJ,GAAG,CAAC;;CAEJ,EAAE,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,EAAE;CACxE;CACA,GAAG,QAAQ,EAAE,CAAC;CACd,GAAG,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;CACjE;CACA,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;CAC7C,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;CACtC,GAAG,MAAM;CACT,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;CAC7C,GAAG,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;CAC7C,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;CACjC,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,KAAK,EAAE,UAAU,GAAG,EAAE;CACvB,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;CAClB,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;;CAElB,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE;CACzC,GAAG,MAAM,8BAA8B,CAAC;CACxC,GAAG;;CAEH,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CAChC,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;CAEjC,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;CAC3B,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;CACnC,GAAG;;CAEH,EAAE,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;;CAEzD;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CAC1D,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAClC,GAAG,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;CACzC,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;CACtC,GAAG;CACH;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CAC1D,GAAG,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAClC,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;CACxC,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC;CACzC,GAAG;CACH,EAAE,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;;CAE3B;CACA,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;CAC3C,EAAE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;;CAE9D,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;CAC/C,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;;CAE/C,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;CAC3B,GAAG;;CAEH,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;;CAErB;CACA,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC;CAC5B,EAAE,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;CAC7B,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;CAC1B,EAAE;;CAEF;CACA,CAAC,QAAQ,EAAE,UAAU,GAAG,EAAE;CAC1B,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;CAC1C,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;;CAE1C,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;CAEvB;CACA,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;;CAEnG,EAAE,IAAI,IAAI,CAAC,mBAAmB,EAAE;CAChC,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;CAC9B,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC;;CAEtB;CACA,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;CACvB,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;CAC9B,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;;CAE/B,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;;CAEnC,EAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;CACnB,EAAE;;CAEF,CAAC,gBAAgB,EAAE,UAAU,MAAM,EAAE;CACrC,EAAE,IAAI,OAAO,GAAG,MAAM,CAAC;CACvB,EAAE,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;CACpC,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;CAC9B,GAAG;CACH,EAAE,OAAO,OAAO,IAAI,IAAI,CAAC;CACzB,EAAE;;CAEF;CACA,CAAC,YAAY,EAAE,UAAU,OAAO,EAAE,GAAG,EAAE;CACvC,EAAE,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAChD,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;CAC3B,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACzB,IAAI,OAAO,IAAI,CAAC;CAChB,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,0BAA0B,EAAE,UAAU,MAAM,EAAE,CAAC,EAAE;CAClD,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI;CACrB,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB;CAC7C,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;CAEhD,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC,EAAE,EAAE;CAC5B,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE;CACrF,IAAI,MAAM;CACV,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF,CAAC,qBAAqB,EAAE,UAAU,CAAC,EAAE;CACrC,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;CAC1C,EAAE;;CAEF,CAAC,iBAAiB,EAAE,UAAU,CAAC,EAAE;CACjC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;CAClD,GAAG,IAAI,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;;CAEjE,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;;CAEpD,GAAG,IAAI,WAAW,EAAE;CACpB,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;CACzB,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF,CAAC,UAAU,EAAE,UAAU,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;CACxC,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;CACvB,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;;CAE1B,EAAE,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;CACrB,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CACvB,EAAE;;CAEF,CAAC,mBAAmB,EAAE,UAAU,CAAC,EAAE;CACnC,EAAE,IAAI,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;CACvC,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;CAC9B,EAAE,IAAI,SAAS,EAAE;CACjB,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;CAC1D,GAAG;CACH,EAAE;;;CAGF;CACA;CACA,CAAC,YAAY,EAAE,UAAU,MAAM,EAAE,sBAAsB,EAAE,aAAa,EAAE;CACxE,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,aAAa;CACvC,GAAG,eAAe,GAAG,IAAI,CAAC,gBAAgB;CAC1C,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa;CAC1B,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI;CAClB,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;CAEhD;CACA,EAAE,IAAI,sBAAsB,EAAE;CAC9B,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;CAC1D,GAAG;;CAEH;CACA,EAAE,IAAI,OAAO,GAAG,MAAM,CAAC,QAAQ;CAC/B,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ;CAC7B,GAAG,WAAW,CAAC;;CAEf;CACA,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;;CAErC,EAAE,OAAO,OAAO,EAAE;CAClB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CACzB,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;;CAEpC,GAAG,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,EAAE;CAChC;CACA,IAAI,MAAM;CACV,IAAI,MAAM,IAAI,sBAAsB,IAAI,OAAO,CAAC,WAAW,IAAI,CAAC,EAAE;CAClE;CACA,IAAI,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;;CAE7F;CACA,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CACpG,IAAI,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;;CAE/G;CACA,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;CAChE,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;CAChD,IAAI,WAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;;CAE5C,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE;CACvB;CACA,KAAK,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;CAC7B,KAAK,IAAI,CAAC,aAAa,EAAE;CACzB,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;CAC/B,MAAM;CACN,KAAK;CACL,IAAI,MAAM;CACV,IAAI,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;CACpC,IAAI;;CAEJ,GAAG,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;CAC9B,GAAG;;CAEH,EAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;CACzB,EAAE;;CAEF,CAAC,aAAa,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE;CACnC,EAAE,OAAO,GAAG,EAAE;CACd,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE;CACnB,IAAI,OAAO,IAAI,CAAC;CAChB,IAAI;CACJ,GAAG,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC;CACxB,GAAG;CACH,EAAE,OAAO,KAAK,CAAC;CACf,EAAE;;CAEF;CACA,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE;CACxC,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,YAAY,CAAC,CAAC,aAAa,EAAE;CACrD;CACA,GAAG,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE;CACrG,IAAI,OAAO;CACX,IAAI;CACJ,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;CAC3B,GAAG;;CAEH,EAAE,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;CAClE,EAAE;;CAEF;CACA,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,SAAS,EAAE;CACrC,EAAE,OAAO,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC;CAClJ,EAAE;;CAEF;CACA,CAAC,0BAA0B,EAAE,UAAU,OAAO,EAAE;CAChD,EAAE,IAAI,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;;CAE3C,EAAE,IAAI,CAAC,GAAG,kBAAkB,CAAC;CAC7B,EAAE,IAAI,UAAU,GAAG,EAAE,EAAE;CACvB,GAAG,CAAC,IAAI,OAAO,CAAC;CAChB,GAAG,MAAM,IAAI,UAAU,GAAG,GAAG,EAAE;CAC/B,GAAG,CAAC,IAAI,QAAQ,CAAC;CACjB,GAAG,MAAM;CACT,GAAG,CAAC,IAAI,OAAO,CAAC;CAChB,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,UAAU,GAAG,eAAe,EAAE,SAAS,EAAE,gBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;CAC/I,EAAE;;CAEF,CAAC,WAAW,EAAE,YAAY;CAC1B,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI;CACrB,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB;CACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB;CAC5D,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB;CAC5D,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC;;CAE7D;CACA,EAAE,IAAI,iBAAiB,IAAI,mBAAmB,IAAI,mBAAmB,EAAE;CACvE,GAAG,IAAI,CAAC,EAAE,CAAC,8BAA8B,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;CACvE,GAAG;;CAEH;CACA,EAAE,IAAI,mBAAmB,EAAE;CAC3B,GAAG,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CACzD,GAAG,IAAI,CAAC,EAAE,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CACxD,GAAG,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CAC/C,GAAG;CACH,EAAE;;CAEF,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE;CAC/B,EAAE,IAAI,OAAO,GAAG,CAAC,CAAC,KAAK;CACvB,MAAM,aAAa,GAAG,OAAO,CAAC;;CAE9B,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,EAAE,EAAE;CACzF,GAAG,OAAO;CACV,GAAG;;CAEH,EAAE,OAAO,aAAa,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;CACpD,GAAG,aAAa,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACnD,GAAG;;CAEH,EAAE,IAAI,aAAa,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ;CAC3C,GAAG,aAAa,CAAC,WAAW,KAAK,OAAO,CAAC,WAAW;CACpD,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE;;CAEnC;CACA,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CACtB,GAAG,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;CAC/C,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAC1B,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;CACxC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CACtB,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa,CAAC,OAAO,KAAK,EAAE,EAAE;CACzD,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;CAChC,GAAG;CACH,EAAE;;CAEF,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE;CAC7B,EAAE,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;CACtB,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,OAAO;CACV,GAAG;CACH,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE;CAC1B,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;CACvC,GAAG;CACH,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,WAAW,EAAE;CACnE,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;CAC5F,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;CACpC,GAAG;CACH,EAAE;;CAEF,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE;CAC1B,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;CAC7C,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;CAC7B,GAAG;CACH,EAAE;;CAEF,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,IAAI,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB;CACxD,GAAG,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB;CACzD,GAAG,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB;CACzD,GAAG,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB;CACzD,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;;CAEnB,EAAE,IAAI,iBAAiB,IAAI,mBAAmB,IAAI,mBAAmB,EAAE;CACvE,GAAG,IAAI,CAAC,GAAG,CAAC,8BAA8B,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;CACxE,GAAG;CACH,EAAE,IAAI,mBAAmB,EAAE;CAC3B,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CAC1D,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CACzD,GAAG,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;CAChD,GAAG;CACH,EAAE;;CAEF,CAAC,QAAQ,EAAE,YAAY;CACvB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,OAAO;CACV,GAAG;CACH,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC;;CAE7B,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;CAC3C,EAAE,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;CAC9D,EAAE;;CAEF,CAAC,QAAQ,EAAE,YAAY;CACvB,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,OAAO;CACV,GAAG;;CAEH,EAAE,IAAI,SAAS,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;;CAEnD,EAAE,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;CAC/I,EAAE,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAAC;;CAEnG,EAAE,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;CACvC,EAAE,OAAO;CACT,EAAE;;CAEF,CAAC,wBAAwB,EAAE,YAAY;CACvC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;CACjD,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;CAC/C,GAAG,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB;CACzC,GAAG,QAAQ,GAAG,MAAM,CAAC;;CAErB;CACA;CACA;CACA,EAAE,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE;CACpC,GAAG,QAAQ,GAAG,YAAY,EAAE,OAAO,MAAM,CAAC,EAAE,CAAC;CAC7C,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,uBAAuB,KAAK,IAAI,EAAE;CACrD,GAAG,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,GAAG,CAAC,CAAC;CACtD,GAAG;CACH,EAAE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;CAC1B,EAAE,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;CAC1B,EAAE,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;;CAE7B;CACA,EAAE,KAAK,IAAI,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE;CACpD,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;CACjE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;CACpE,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;CACrE,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,UAAU,KAAK,EAAE,IAAI,EAAE;CACnC,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,aAAa;CACvC,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB;CAC7C,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;CAC/C,MAAM,WAAW,EAAE,CAAC,CAAC;;CAErB,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;CACrC,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;CACnC,GAAG;;CAEH,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;;CAEjD;CACA,EAAE,OAAO,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE;CAClC,GAAG,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;;CAE5D;CACA,GAAG,IAAI,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;CAC/D,GAAG,IAAI,OAAO,EAAE;CAChB,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;CAC7B,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;CAC7B,IAAI,OAAO;CACX,IAAI;;CAEJ;CACA,GAAG,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;CAC9D,GAAG,IAAI,OAAO,EAAE;CAChB,IAAI,IAAI,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAClC,IAAI,IAAI,MAAM,EAAE;CAChB,KAAK,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;CACvC,KAAK;;CAEL;;CAEA,IAAI,IAAI,UAAU,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;CACzE,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;CAC3F,IAAI,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC;CAClC,IAAI,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC;;CAEhC;CACA,IAAI,IAAI,UAAU,GAAG,UAAU,CAAC;CAChC,IAAI,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;CAC9C,KAAK,UAAU,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;CAC/D,KAAK,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;CACtF,KAAK;CACL,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;;CAEjC;CACA,IAAI,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;;CAEnD,IAAI,OAAO;CACX,IAAI;;CAEJ;CACA,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;CACvD,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;CACzC,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC;CACzC,EAAE,OAAO;CACT,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA,CAAC,qBAAqB,EAAE,YAAY;CACpC,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;CAC5C,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,gBAAgB,EAAE;CAC3D,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;CACpB,IAAI;CACJ,GAAG,CAAC,CAAC;CACL,EAAE;;CAEF;CACA,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE;CACzB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;CACvB,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;CAC3B,GAAG,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;CAC1E,GAAG;CACH,EAAE;CACF,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC/C,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;CAC7B,GAAG;CACH,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;CACzB,EAAE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;CACnC,EAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;CAC5B,EAAE;;CAEF;CACA,CAAC,mBAAmB,EAAE,YAAY;CAClC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;CAE5C;CACA,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;;CAEvB,EAAE,IAAI,IAAI,CAAC,KAAK,GAAG,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC,EAAE;CACrG,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;CAC1B;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;;CAEvK,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;;CAE9C,GAAG,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE;CACnC,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;;CAE1B,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CAC/C,GAAG,MAAM;CACT,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;CACnB,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,yBAAyB,EAAE,YAAY;CACxC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE;CAChD,GAAG,OAAO,IAAI,CAAC,kBAAkB,CAAC;CAClC,GAAG,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE;CAC/B,GAAG,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;CACzD,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CAC/D,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,kBAAkB,EAAE,UAAU,MAAM,EAAE;CACvC,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;;CAE5B,EAAE,IAAI,MAAM,KAAK,SAAS,EAAE;CAC5B,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,IAAI,MAAM,EAAE;CACpC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,QAAQ,CAAC;CACrC,IAAI;CACJ,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE;CACrC,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;CACtC,IAAI;CACJ,GAAG;;CAEH,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF;CACA,CAAC,6BAA6B,EAAE,UAAU,KAAK,EAAE,UAAU,EAAE;CAC7D,EAAE,IAAI,UAAU,KAAK,KAAK,EAAE;CAC5B,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CACtC,GAAG,MAAM,IAAI,UAAU,CAAC,WAAW,KAAK,CAAC,EAAE;CAC3C,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;;CAE1B,GAAG,IAAI,OAAO,GAAG,UAAU,CAAC,kBAAkB,EAAE,CAAC;CACjD,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;CAC9C,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;CAC9C,GAAG,MAAM;CACT,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;CAC5B,GAAG;CACH,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,sBAAsB,EAAE,UAAU,KAAK,EAAE,MAAM,EAAE;CAClD,EAAE,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE;CAChC,MAAM,CAAC,GAAG,CAAC;CACX,MAAM,KAAK,CAAC;;CAEZ,EAAE,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;;CAExB,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CACjC,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;;CAErB,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,UAAU,EAAE;CACtC,IAAI,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CAC/C,IAAI,SAAS;CACb,IAAI;;CAEJ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;CACtB,GAAG;;CAEH,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,mBAAmB,EAAE,UAAU,KAAK,EAAE;CACvC,EAAE,IAAI,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;CAClE,GAAG,aAAa,EAAE,YAAY;CAC9B,IAAI,OAAO,CAAC,CAAC;CACb,IAAI;CACJ,GAAG,kBAAkB,EAAE,YAAY;CACnC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;CACnB,IAAI;CACJ,GAAG,CAAC,CAAC;;CAEL,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;CACF,CAAC,CAAC,CAAC;;CAEH;CACA,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;CAC7B,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;CAC7G,CAAC,CAAC,CAAC;;CAEH,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;CAC7B,CAAC,YAAY,EAAE;CACf;CACA,EAAE,eAAe,EAAE,YAAY;CAC/B;CACA,GAAG;CACH,EAAE,gBAAgB,EAAE,UAAU,iBAAiB,EAAE,YAAY,EAAE;CAC/D,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC;CAC5I,GAAG,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;;CAE5G;CACA,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;CAC7B,GAAG;CACH,EAAE,iBAAiB,EAAE,UAAU,iBAAiB,EAAE,YAAY,EAAE;CAChE,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAAC;CAC5I,GAAG,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;;CAE5G;CACA,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;CAC7B,GAAG;CACH,EAAE,kBAAkB,EAAE,UAAU,KAAK,EAAE,UAAU,EAAE;CACnD,GAAG,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;CACzD,GAAG;CACH,EAAE;;CAEF,CAAC,cAAc,EAAE;CACjB;CACA,EAAE,eAAe,EAAE,YAAY;CAC/B,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,uBAAuB,CAAC;CAC3D,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;CAC3B,GAAG;;CAEH,EAAE,gBAAgB,EAAE,UAAU,iBAAiB,EAAE,YAAY,EAAE;CAC/D,GAAG,IAAI,MAAM,GAAG,IAAI,CAAC,yBAAyB,EAAE;CAChD,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa;CAC9B,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;CAChD,OAAO,CAAC,CAAC;;CAET,GAAG,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;;CAE3B;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;CACvF,IAAI,IAAI,QAAQ,GAAG,CAAC,CAAC,OAAO;CAC5B,QAAQ,OAAO,IAAI,CAAC,CAAC,QAAQ;CAC7B,QAAQ,CAAC,CAAC;;CAEV,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;CACpC,KAAK,QAAQ,GAAG,IAAI,CAAC;CACrB,KAAK;;CAEL,IAAI,IAAI,CAAC,CAAC,eAAe,EAAE,IAAI,iBAAiB,GAAG,CAAC,KAAK,YAAY,EAAE;CACvE,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACvB,KAAK,CAAC,CAAC,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;CAChE,KAAK,MAAM;CACX;CACA,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK,CAAC,CAAC,4BAA4B,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;CACpE,KAAK;;CAEL;CACA;CACA,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC9C,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACpB,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;CACtC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACxB,MAAM;CACN,KAAK;;CAEL,IAAI,CAAC,CAAC;;CAEN,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;;CAEvB;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACzE;CACA,GAAG,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;CAC7B,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE;CACpD,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK;CACL,IAAI,CAAC,CAAC;;CAEN;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE;CAC5F,IAAI,CAAC,CAAC,iCAAiC,CAAC,YAAY,CAAC,CAAC;CACtD,IAAI,CAAC,CAAC;;CAEN,GAAG,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;;CAE5B;CACA,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY;CAC7B;CACA,IAAI,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;CACxF,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACvB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK,CAAC,CAAC;;CAEP,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;CACzB,IAAI,CAAC,CAAC;CACN,GAAG;;CAEH,EAAE,iBAAiB,EAAE,UAAU,iBAAiB,EAAE,YAAY,EAAE;CAChE,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;;CAE5F;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;CAC5G;CACA,GAAG,IAAI,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;CAC9K,GAAG;;CAEH,EAAE,kBAAkB,EAAE,UAAU,KAAK,EAAE,UAAU,EAAE;CACnD,GAAG,IAAI,EAAE,GAAG,IAAI;CAChB,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;;CAE/B,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;CACtB,GAAG,IAAI,UAAU,KAAK,KAAK,EAAE;CAC7B,IAAI,IAAI,UAAU,CAAC,WAAW,GAAG,CAAC,EAAE;;CAEpC,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;CAC9B,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;CACzB,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;;CAE5B,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;CACzE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;;CAEzB,KAAK,IAAI,CAAC,QAAQ,CAAC,YAAY;CAC/B,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;CAC5B,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;;CAE1B,MAAM,EAAE,CAAC,aAAa,EAAE,CAAC;CACzB,MAAM,CAAC,CAAC;;CAER,KAAK,MAAM;CACX,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;;CAEzB,KAAK,EAAE,CAAC,eAAe,EAAE,CAAC;CAC1B,KAAK,EAAE,CAAC,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;CAChF,KAAK;CACL,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,uBAAuB,EAAE,UAAU,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE;CAC9E,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,yBAAyB,EAAE;CAC/C,GAAG,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;;CAEhD;CACA,EAAE,OAAO,CAAC,4CAA4C,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,CAAC,EAAE,YAAY,CAAC,CAAC;;CAE7G,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;;CAEhB;CACA,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;CACtB,EAAE,OAAO,CAAC,yBAAyB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;;CAE1D;CACA;CACA,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;;CAE5B;CACA,GAAG,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE;CAClC,IAAI,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CAChC;CACA,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;CAC5B,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;CAC/B,IAAI,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;CAC7B,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE;CACvB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK;CACL,IAAI,MAAM;CACV,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE;CACrE,KAAK,CAAC,CAAC,iCAAiC,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,CAAC,CAAC,CAAC;CACjF,KAAK,CAAC,CAAC;CACP,IAAI;CACJ,GAAG,EAAE,CAAC,aAAa,EAAE,CAAC;CACtB,GAAG,CAAC,CAAC;CACL,EAAE;;CAEF,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;CACjB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;CACpG,GAAG;CACH,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;CAC1B,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;CAC5B,EAAE;;CAEF;CACA;CACA,CAAC,YAAY,EAAE,YAAY;CAC3B;CACA;;CAEA,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;CAC5C,EAAE;CACF,CAAC,CAAC,CAAC;;CAEH,CAAC,CAAC,kBAAkB,GAAG,UAAU,OAAO,EAAE;CAC1C,CAAC,OAAO,IAAI,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;CAC1C,CAAC,CAAC;;ACr3CQ,KAAC,aAAa,GAAG,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;CAC7D,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO;;CAElC,CAAC,UAAU,EAAE,UAAU,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE;;CAE1C,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;CACjG,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;;CAE7D,EAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;CACtB,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;;CAEpB,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;CACrB,EAAE,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;CAC3B,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;CACvB,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;CAC/B,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;;CAEhC,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;;CAEtC,EAAE,IAAI,CAAC,EAAE;CACT,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACrB,GAAG;CACH,EAAE,IAAI,CAAC,EAAE;CACT,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;CACrB,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,kBAAkB,EAAE,UAAU,YAAY,EAAE,mBAAmB,EAAE;CAClE,EAAE,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;;CAEpC,EAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC5D,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;CAChF,GAAG;;CAEH,EAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACtD,GAAG,IAAI,mBAAmB,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;CAC5D,IAAI,SAAS;CACb,IAAI;CACJ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CACvC,GAAG;;CAEH,EAAE,OAAO,YAAY,CAAC;CACtB,EAAE;;CAEF;CACA,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC;CAC1B,EAAE;;CAEF;CACA,CAAC,YAAY,EAAE,UAAU,gBAAgB,EAAE;CAC3C,EAAE,IAAI,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE;CACjD,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;CACzB,GAAG,UAAU,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;CAC/C,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;CACxB,GAAG,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE;CAC1B,GAAG,CAAC,CAAC;;CAEL;CACA,EAAE,OAAO,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,GAAG,IAAI,EAAE;CACxD,GAAG,IAAI,EAAE,CAAC;CACV,GAAG,IAAI,WAAW,GAAG,EAAE,CAAC;CACxB,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC9C,IAAI,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;CACtE,IAAI;CACJ,GAAG,aAAa,GAAG,WAAW,CAAC;CAC/B,GAAG;;CAEH,EAAE,IAAI,UAAU,GAAG,IAAI,EAAE;CACzB,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;CAChD,GAAG,MAAM,IAAI,UAAU,IAAI,OAAO,EAAE;CACpC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;CACvD,GAAG,MAAM;CACT,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;CAC9D,GAAG;CACH,EAAE;;CAEF,CAAC,SAAS,EAAE,YAAY;CACxB,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;CACpC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;CAC9B,EAAE,OAAO,MAAM,CAAC;CAChB,EAAE;;CAEF,CAAC,WAAW,EAAE,YAAY;CAC1B,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;CAC/B,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE;CAClB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;CACtB,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,UAAU,EAAE,YAAY;CACzB,EAAE,IAAI,IAAI,CAAC,gBAAgB,EAAE;CAC7B,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;CAChE,GAAG,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;CACjC,GAAG;CACH,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;CACpC,EAAE;CACF,CAAC,YAAY,EAAE,YAAY;CAC3B,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;CACtC,EAAE;;;CAGF,CAAC,SAAS,EAAE,UAAU,IAAI,EAAE,uBAAuB,EAAE;;CAErD,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;;CAE/B,EAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;CAChC,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;;CAE/B,EAAE,IAAI,IAAI,YAAY,CAAC,CAAC,aAAa,EAAE;CACvC,GAAG,IAAI,CAAC,uBAAuB,EAAE;CACjC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;CACnC,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;CACzB,IAAI;CACJ,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;CACxC,GAAG,MAAM;CACT,GAAG,IAAI,CAAC,uBAAuB,EAAE;CACjC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;CAC7B,IAAI;CACJ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;CACtB,GAAG;;CAEH,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;CACrB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;CACvC,GAAG;CACH,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA,CAAC,iBAAiB,EAAE,UAAU,KAAK,EAAE;CACrC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;CACtB;CACA,GAAG,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;CACnD,GAAG;CACH,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,YAAY,EAAE,YAAY;CAC3B,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;;CAE5B,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE;CACzB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,QAAQ,CAAC;CACpC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,QAAQ,CAAC;CACpC,GAAG;CACH,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE;CACzB,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;CACrC,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;CACrC,GAAG;CACH,EAAE;;CAEF,CAAC,kBAAkB,EAAE,YAAY;CACjC,EAAE,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ;CAC7B,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc;CACzC,MAAM,MAAM,GAAG,CAAC;CAChB,MAAM,MAAM,GAAG,CAAC;CAChB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW;CACnC,MAAM,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC;;CAExC;CACA,EAAE,IAAI,UAAU,KAAK,CAAC,EAAE;CACxB,GAAG,OAAO;CACV,GAAG;;CAEH;CACA,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;;CAEtB;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CACvC,GAAG,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;;CAEpC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;;CAEpC,GAAG,MAAM,IAAI,WAAW,CAAC,GAAG,CAAC;CAC7B,GAAG,MAAM,IAAI,WAAW,CAAC,GAAG,CAAC;CAC7B,GAAG;;CAEH;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC7C,GAAG,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;;CAE5B;CACA,GAAG,IAAI,KAAK,CAAC,iBAAiB,EAAE;CAChC,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;CAC/B,IAAI;;CAEJ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;;CAEtC,GAAG,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC;CAChC,GAAG,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC;;CAElC,GAAG,MAAM,IAAI,WAAW,CAAC,GAAG,GAAG,UAAU,CAAC;CAC1C,GAAG,MAAM,IAAI,WAAW,CAAC,GAAG,GAAG,UAAU,CAAC;CAC1C,GAAG;;CAEH,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;;CAExF;CACA,EAAE,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;CACjC,EAAE;;CAEF;CACA,CAAC,SAAS,EAAE,UAAU,QAAQ,EAAE;CAChC,EAAE,IAAI,QAAQ,EAAE;CAChB,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC;CACrC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC5B,GAAG;CACH,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC3C,EAAE;;CAEF,CAAC,6BAA6B,EAAE,UAAU,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;CACnE,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,GAAG,CAAC;CACtE,GAAG,UAAU,CAAC,EAAE;CAChB,IAAI,IAAI,OAAO,GAAG,CAAC,CAAC,QAAQ;CAC5B,KAAK,CAAC,EAAE,CAAC,CAAC;CACV,IAAI,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC9C,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;;CAEpB;CACA,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE;CAClB,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;CACxB,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;CACtB,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG,UAAU,CAAC,EAAE;CAChB,IAAI,IAAI,aAAa,GAAG,CAAC,CAAC,cAAc;CACxC,KAAK,CAAC,EAAE,EAAE,CAAC;CACX,IAAI,KAAK,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACpD,KAAK,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;CAC3B,KAAK,IAAI,EAAE,CAAC,KAAK,EAAE;CACnB,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;CACzB,MAAM,EAAE,CAAC,WAAW,EAAE,CAAC;CACvB,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG,CAAC;CACJ,EAAE;;CAEF,CAAC,4CAA4C,EAAE,UAAU,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE;CAC9G,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU;CACpD,GAAG,UAAU,CAAC,EAAE;CAChB,IAAI,CAAC,CAAC,6BAA6B,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,iBAAiB,CAAC,CAAC;;CAExH;CACA;CACA,IAAI,IAAI,CAAC,CAAC,eAAe,EAAE,IAAI,iBAAiB,GAAG,CAAC,KAAK,YAAY,EAAE;CACvE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK,CAAC,CAAC,iCAAiC,CAAC,MAAM,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;CAChF,KAAK,MAAM;CACX,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK;;CAEL,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;CAClB,IAAI;CACJ,GAAG,CAAC;CACJ,EAAE;;CAEF,CAAC,yBAAyB,EAAE,UAAU,MAAM,EAAE,SAAS,EAAE;CACzD,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE;CACzF,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;CACnB,GAAG,CAAC,CAAC;CACL,EAAE;;CAEF,CAAC,4BAA4B,EAAE,UAAU,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE;CACtE,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,SAAS;CACxE,GAAG,UAAU,CAAC,EAAE;CAChB,IAAI,IAAI,SAAS,KAAK,CAAC,CAAC,KAAK,EAAE;CAC/B,KAAK,OAAO;CACZ,KAAK;;CAEL;CACA,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACrD,KAAK,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;;CAE5B,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE;CACvC,MAAM,SAAS;CACf,MAAM;;CAEN,KAAK,IAAI,QAAQ,EAAE;CACnB,MAAM,EAAE,CAAC,aAAa,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC;;CAExC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC7B,MAAM,IAAI,EAAE,CAAC,WAAW,EAAE;CAC1B,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;CACxB,OAAO;CACP,MAAM;;CAEN,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;CACzC,KAAK;CACL,IAAI;CACJ,GAAG,UAAU,CAAC,EAAE;CAChB,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;CAC1B,IAAI;CACJ,GAAG,CAAC;CACJ,EAAE;;CAEF,CAAC,iCAAiC,EAAE,UAAU,SAAS,EAAE;CACzD;CACA,EAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACtD,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CAC7B,GAAG,IAAI,EAAE,CAAC,aAAa,EAAE;CACzB,IAAI,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;CACnC,IAAI,OAAO,EAAE,CAAC,aAAa,CAAC;CAC5B,IAAI;CACJ,GAAG;;CAEH,EAAE,IAAI,SAAS,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE;CACpC;CACA,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC7D,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;CAC9C,IAAI;CACJ,GAAG,MAAM;CACT,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC7D,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,SAAS,CAAC,CAAC;CACxE,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF,CAAC,gBAAgB,EAAE,YAAY;CAC/B,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE;CAC1B,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;CACtC,GAAG,OAAO,IAAI,CAAC,aAAa,CAAC;CAC7B,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,iCAAiC,EAAE,UAAU,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE;CACnG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;CACX,EAAE,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,UAAU,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC;CACjE,GAAG,UAAU,CAAC,EAAE;CAChB;CACA,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACjD,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CACvB,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;CAC7D,MAAM,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAC5C,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;CACzB,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;CACvB,OAAO;CACP,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG,UAAU,CAAC,EAAE;CAChB;CACA,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACvD,KAAK,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CAC7B,KAAK,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;CAC7D,MAAM,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAC5C,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;CACzB,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;CACvB,OAAO;CACP,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG,CAAC;CACJ,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,YAAY,EAAE,UAAU,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE;CAChH,EAAE,IAAI,aAAa,GAAG,IAAI,CAAC,cAAc;CACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK;CACvB,MAAM,CAAC,EAAE,CAAC,CAAC;;CAEX,EAAE,IAAI,gBAAgB,IAAI,IAAI,EAAE;CAChC,GAAG,IAAI,eAAe,EAAE;CACxB,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC;CAC1B,IAAI;CACJ,GAAG,IAAI,gBAAgB,IAAI,IAAI,KAAK,eAAe,EAAE;CACrD,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;CAC3B,IAAI;CACJ,GAAG;;CAEH,EAAE,IAAI,IAAI,GAAG,gBAAgB,IAAI,IAAI,GAAG,eAAe,EAAE;CACzD,GAAG,KAAK,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACnD,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;CACzB,IAAI,IAAI,CAAC,CAAC,iBAAiB,EAAE;CAC7B,KAAK,CAAC,CAAC,kBAAkB,EAAE,CAAC;CAC5B,KAAK;CACL,IAAI,IAAI,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;CAC/C,KAAK,CAAC,CAAC,YAAY,CAAC,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC;CAC3G,KAAK;CACL,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,eAAe,EAAE,YAAY;CAC9B;CACA,EAAE,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC;CACnG,EAAE;CACF,CAAC,CAAC;;CCpZF;CACA;CACA;CACA;CACA;CACA;CACA;;CAEA,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;CACjB,CAAC,WAAW,EAAE,YAAY;CAC1B,EAAE,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;CACpC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CACrB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC;CAChC,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;CACF;CACA,CAAC,WAAW,EAAE,YAAY;CAC1B,EAAE,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/C,EAAE;CACF,CAAC,CAAC,CAAC;;CClBH,CAAC,CAAC,YAAY,GAAG,UAAU,QAAQ,EAAE;CACrC,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;CAC3B,CAAC,IAAI,CAAC,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACxC,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;CACjB,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;CACzB,CAAC,CAAC;;CAEF,CAAC,CAAC,YAAY,CAAC,SAAS,GAAG;;CAE3B,CAAC,SAAS,EAAE,UAAU,GAAG,EAAE,KAAK,EAAE;CAClC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK;CACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;CACnC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;CAClC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;CAEhC,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;;CAEnC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CACjB,EAAE;;CAEF,CAAC,YAAY,EAAE,UAAU,GAAG,EAAE,KAAK,EAAE;CACrC,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;CACzB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;CAC7B,EAAE;;CAEF;CACA,CAAC,YAAY,EAAE,UAAU,GAAG,EAAE,KAAK,EAAE;CACrC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK;CACvB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;CACnC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;CAClC,MAAM,CAAC,EAAE,GAAG,CAAC;;CAEb,EAAE,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;;CAE9C,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;CAC/C,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;;CAExB,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;CAEtB,IAAI,IAAI,GAAG,KAAK,CAAC,EAAE;CACnB,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;CACnB,KAAK;;CAEL,IAAI,OAAO,IAAI,CAAC;CAChB,IAAI;CACJ,GAAG;;CAEH,EAAE;;CAEF,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE;CACpC,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO;CACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;;CAExB,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;CAClB,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;;CAEjB,GAAG,KAAK,CAAC,IAAI,GAAG,EAAE;CAClB,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;;CAElB,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;CACjD,KAAK,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;CACzC,KAAK,IAAI,OAAO,EAAE;CAClB,MAAM,CAAC,EAAE,CAAC;CACV,MAAM,GAAG,EAAE,CAAC;CACZ,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF,CAAC,aAAa,EAAE,UAAU,KAAK,EAAE;CACjC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;CACjC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI;CACxC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY;CACrC,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW;CACtC,MAAM,OAAO,GAAG,IAAI,CAAC;;CAErB,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CACnC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;CACvB,GAAG,IAAI,GAAG,EAAE;;CAEZ,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;CACrC,KAAK,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;CACnB,KAAK,IAAI,IAAI,EAAE;;CAEf,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;CACnD,OAAO,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;CACrB,OAAO,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;CAClE,OAAO,IAAI,IAAI,GAAG,aAAa;CAC/B,QAAQ,IAAI,IAAI,aAAa,IAAI,OAAO,KAAK,IAAI,EAAE;CACnD,QAAQ,aAAa,GAAG,IAAI,CAAC;CAC7B,QAAQ,OAAO,GAAG,GAAG,CAAC;CACtB,QAAQ;CACR,OAAO;CACP,MAAM;CACN,KAAK;CACL,IAAI;CACJ,GAAG;CACH,EAAE,OAAO,OAAO,CAAC;CACjB,EAAE;;CAEF,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE;CACzB,EAAE,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;CAC7C,EAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;CACrC,EAAE;;CAEF,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE;CAC3B,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CACrB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACtB,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;CAC3B,EAAE;CACF,CAAC,CAAC;;CCrHF;CACA;CACA;;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;;CAEA;CACA;;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;;CAEA;CACA;;CAEA,CAAC,YAAY;CACb,CAAC,CAAC,CAAC,SAAS,GAAG;;CAEf;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,UAAU,EAAE,UAAU,GAAG,EAAE,EAAE,EAAE;CACjC,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG;CACjC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;CAC/B,GAAG,QAAQ,EAAE,IAAI,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;CACpE,GAAG;;CAEH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,gCAAgC,EAAE,UAAU,QAAQ,EAAE,OAAO,EAAE;CACjE,GAAG,IAAI,IAAI,GAAG,CAAC;CACf,IAAI,KAAK,GAAG,IAAI;CAChB,IAAI,SAAS,GAAG,EAAE;CAClB,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;;CAEb,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC7C,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACpB,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;;CAEtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE;CACf,KAAK,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;CACxB,KAAK,MAAM;CACX,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE;CAClB,KAAK,IAAI,GAAG,CAAC,CAAC;CACd,KAAK,KAAK,GAAG,EAAE,CAAC;CAChB,KAAK;CACL,IAAI;;CAEJ,GAAG,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;CACpD,GAAG;;;CAGH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,eAAe,EAAE,UAAU,QAAQ,EAAE,OAAO,EAAE;CAChD,GAAG,IAAI,mBAAmB,GAAG,EAAE;CAC/B,IAAI,CAAC,GAAG,IAAI,CAAC,gCAAgC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;;CAEjE,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE;CACnB,IAAI,mBAAmB;CACvB,KAAK,mBAAmB,CAAC,MAAM;CAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;CAClE,MAAM,CAAC;CACP,IAAI,mBAAmB;CACvB,KAAK,mBAAmB,CAAC,MAAM;CAC/B,MAAM,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;CAClE,MAAM,CAAC;CACP,IAAI,OAAO,mBAAmB,CAAC;CAC/B,IAAI,MAAM;CACV,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CACzB,IAAI;CACJ,GAAG;;CAEH;CACA;CACA;CACA;CACA;CACA;CACA;CACA,EAAE,aAAa,EAAE,UAAU,OAAO,EAAE;CACpC;CACA,GAAG,IAAI,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK;CACrC,IAAI,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK;CAClC,IAAI,QAAQ,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI;CACpC,IAAI,QAAQ,GAAG,IAAI,EAAE,QAAQ,GAAG,IAAI;CACpC,IAAI,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,IAAI;CAC9B,IAAI,CAAC,CAAC;;CAEN,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC7C,IAAI,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACxB,IAAI,IAAI,MAAM,KAAK,KAAK,IAAI,EAAE,CAAC,GAAG,GAAG,MAAM,EAAE;CAC7C,KAAK,QAAQ,GAAG,EAAE,CAAC;CACnB,KAAK,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC;CACrB,KAAK;CACL,IAAI,IAAI,MAAM,KAAK,KAAK,IAAI,EAAE,CAAC,GAAG,GAAG,MAAM,EAAE;CAC7C,KAAK,QAAQ,GAAG,EAAE,CAAC;CACnB,KAAK,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC;CACrB,KAAK;CACL,IAAI,IAAI,MAAM,KAAK,KAAK,IAAI,EAAE,CAAC,GAAG,GAAG,MAAM,EAAE;CAC7C,KAAK,QAAQ,GAAG,EAAE,CAAC;CACnB,KAAK,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC;CACrB,KAAK;CACL,IAAI,IAAI,MAAM,KAAK,KAAK,IAAI,EAAE,CAAC,GAAG,GAAG,MAAM,EAAE;CAC7C,KAAK,QAAQ,GAAG,EAAE,CAAC;CACnB,KAAK,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC;CACrB,KAAK;CACL,IAAI;CACJ;CACA,GAAG,IAAI,MAAM,KAAK,MAAM,EAAE;CAC1B,IAAI,KAAK,GAAG,QAAQ,CAAC;CACrB,IAAI,KAAK,GAAG,QAAQ,CAAC;CACrB,IAAI,MAAM;CACV,IAAI,KAAK,GAAG,QAAQ,CAAC;CACrB,IAAI,KAAK,GAAG,QAAQ,CAAC;CACrB,IAAI;;CAEJ,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC;CACnE,QAAQ,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;CACvD,GAAG,OAAO,EAAE,CAAC;CACb,GAAG;CACH,EAAE,CAAC;CACH,CAAC,EAAE,EAAE;;CAEL,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;CACxB,CAAC,aAAa,EAAE,YAAY;CAC5B,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,kBAAkB,EAAE;CAC9C,GAAG,MAAM,GAAG,EAAE;CACd,GAAG,CAAC,EAAE,CAAC,CAAC;;CAER,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACjD,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;CACnC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAClB,GAAG;;CAEH,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;CAC3C,EAAE;CACF,CAAC,CAAC,CAAC;;CCpKH;CACA;;CAEA,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;;CAExB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC;CAClB,CAAC,qBAAqB,EAAE,EAAE;CAC1B,CAAC,iBAAiB,EAAE,CAAC;;CAErB,CAAC,qBAAqB,GAAG,EAAE;CAC3B,CAAC,kBAAkB,EAAE,EAAE;CACvB,CAAC,mBAAmB,EAAE,CAAC;;CAEvB,CAAC,uBAAuB,EAAE,CAAC;CAC3B;;CAEA,CAAC,QAAQ,EAAE,YAAY;CACvB,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;CACxE,GAAG,OAAO;CACV,GAAG;;CAEH,EAAE,IAAI,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC;CACxD,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM;CACtB,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI;CACnB,GAAG,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;CAChD,GAAG,SAAS,CAAC;;CAEb,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;CAC5B,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;;CAEjC;;CAEA,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE;CAClD,GAAG,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvF,GAAG,MAAM,IAAI,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,uBAAuB,EAAE;CAClE,GAAG,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvE,GAAG,MAAM;CACT,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;CAClB,GAAG,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvE,GAAG;;CAEH,EAAE,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;CACnD,EAAE;;CAEF,CAAC,UAAU,EAAE,UAAU,WAAW,EAAE;CACpC;CACA,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE;CACpC,GAAG,OAAO;CACV,GAAG;CACH,EAAE,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;;CAEzC,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;CACjC,EAAE;;CAEF,CAAC,qBAAqB,EAAE,UAAU,KAAK,EAAE,QAAQ,EAAE;CACnD,EAAE,IAAI,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,0BAA0B,GAAG,IAAI,CAAC,qBAAqB,IAAI,CAAC,GAAG,KAAK,CAAC;CAC/G,GAAG,SAAS,GAAG,aAAa,GAAG,IAAI,CAAC,IAAI;CACxC,GAAG,SAAS,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK;CAChC,GAAG,GAAG,GAAG,EAAE;CACX,GAAG,CAAC,EAAE,KAAK,CAAC;;CAEZ,EAAE,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;;CAEtC,EAAE,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;;CAErB,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;CAC9B,GAAG,KAAK,GAAG,IAAI,CAAC,iBAAiB,GAAG,CAAC,GAAG,SAAS,CAAC;CAClD,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACrH,GAAG;;CAEH,EAAE,OAAO,GAAG,CAAC;CACb,EAAE;;CAEF,CAAC,qBAAqB,EAAE,UAAU,KAAK,EAAE,QAAQ,EAAE;CACnD,EAAE,IAAI,0BAA0B,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,0BAA0B;CACjF,GAAG,SAAS,GAAG,0BAA0B,GAAG,IAAI,CAAC,kBAAkB;CACnE,GAAG,UAAU,GAAG,0BAA0B,GAAG,IAAI,CAAC,qBAAqB;CACvE,GAAG,YAAY,GAAG,0BAA0B,GAAG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,IAAI;CACnF,GAAG,KAAK,GAAG,CAAC;CACZ,GAAG,GAAG,GAAG,EAAE;CACX,GAAG,CAAC,CAAC;;CAEL,EAAE,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC;;CAErB;CACA,EAAE,KAAK,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAC/B;CACA;CACA,GAAG,IAAI,CAAC,GAAG,KAAK,EAAE;CAClB,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACtH,IAAI;CACJ,GAAG,KAAK,IAAI,UAAU,GAAG,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC;CAChD,GAAG,SAAS,IAAI,YAAY,GAAG,KAAK,CAAC;CACrC,GAAG;CACH,EAAE,OAAO,GAAG,CAAC;CACb,EAAE;;CAEF,CAAC,sBAAsB,EAAE,YAAY;CACrC,EAAE,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM;CACzB,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI;CACnB,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa;CAC3B,GAAG,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC;CACrD,GAAG,CAAC,EAAE,CAAC,CAAC;;CAER,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;;CAE3B,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CACrB,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACjD,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAEvB,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;;CAErB,GAAG,IAAI,CAAC,CAAC,kBAAkB,EAAE;CAC7B,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;CACtC,IAAI,OAAO,CAAC,CAAC,kBAAkB,CAAC;CAChC,IAAI;CACJ,GAAG,IAAI,CAAC,CAAC,eAAe,EAAE;CAC1B,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CACzB,IAAI;;CAEJ,GAAG,IAAI,CAAC,CAAC,UAAU,EAAE;CACrB,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;CAClC,IAAI,OAAO,CAAC,CAAC,UAAU,CAAC;CACxB,IAAI;CACJ,GAAG;;CAEH,EAAE,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;CAC7B,GAAG,OAAO,EAAE,IAAI;CAChB,GAAG,OAAO,EAAE,YAAY;CACxB,GAAG,CAAC,CAAC;CACL,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;CAC5B,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;CAC3B,EAAE;CACF,CAAC,CAAC,CAAC;;CAEH;CACA,CAAC,CAAC,wBAAwB,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC;CACpD,CAAC,kBAAkB,EAAE,UAAU,YAAY,EAAE,SAAS,EAAE;CACxD,EAAE,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM;CACzB,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI;CACnB,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa;CAC3B,GAAG,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,wBAAwB;CAC5D,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC;;CAErB,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;;CAE3B;CACA;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC5C,GAAG,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;CACjD,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAEvB;CACA,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;CAC5D,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;CACrB,GAAG,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;;CAEtB;CACA,GAAG,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,OAAO,CAAC;CACpC,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;CACvB,GAAG,IAAI,CAAC,CAAC,eAAe,EAAE;CAC1B,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;CAC/B,IAAI;;CAEJ,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CAClB,GAAG;CACH,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;;CAEvB,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;CAC5B,EAAE,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE;CAC3B,GAAG,OAAO,EAAE,IAAI;CAChB,GAAG,OAAO,EAAE,YAAY;CACxB,GAAG,CAAC,CAAC;CACL,EAAE;;CAEF,CAAC,oBAAoB,EAAE,YAAY;CACnC,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;CAChC,EAAE;CACF,CAAC,CAAC,CAAC;;CAEH;CACA,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;;CAExB,CAAC,kBAAkB,EAAE,UAAU,YAAY,EAAE,SAAS,EAAE;CACxD,EAAE,IAAI,EAAE,GAAG,IAAI;CACf,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM;CACtB,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI;CACnB,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa;CAC3B,GAAG,eAAe,GAAG,IAAI,CAAC,OAAO;CACjC,GAAG,YAAY,GAAG,GAAG,CAAC,kBAAkB,CAAC,eAAe,CAAC;CACzD,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG;CACnB,GAAG,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,wBAAwB,CAAC;CAC1E,GAAG,eAAe,GAAG,UAAU,CAAC,OAAO;CACvC,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;;CAEzC,EAAE,IAAI,eAAe,KAAK,SAAS,EAAE;CACrC,GAAG,eAAe,GAAG,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC;CAC7F,GAAG;;CAEH,EAAE,IAAI,GAAG,EAAE;CACX;CACA,GAAG,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC;;CAE1B;CACA,GAAG,UAAU,CAAC,SAAS,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,IAAI,6BAA6B,CAAC;CACvF,GAAG,MAAM;CACT;CACA,GAAG,UAAU,CAAC,OAAO,GAAG,eAAe,CAAC;CACxC,GAAG;;CAEH,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;;CAE3B;CACA;CACA;CACA,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;CAC5C,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAEvB,GAAG,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;;CAEjD;CACA,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,eAAe,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;CAC/D,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;CACrB,GAAG,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;;CAEtB;CACA;CACA,GAAG,IAAI,GAAG,EAAE;CACZ,IAAI,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;CACxB,IAAI,SAAS,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,GAAG,CAAC;CAC/C,IAAI,OAAO,CAAC,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;CAC9C,IAAI,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC;CAC/C,IAAI;;CAEJ;CACA,GAAG,IAAI,CAAC,CAAC,eAAe,EAAE;CAC1B,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;CAC/B,IAAI;CACJ,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;CACtB,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;CACpB,IAAI;CACJ;CACA;CACA,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;;CAElB,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE;CAClB,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5B,IAAI;CACJ,GAAG;;CAEH,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;CACvB,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;;CAE1B;CACA,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACjD,GAAG,MAAM,GAAG,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;CACjD,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAEvB;CACA,GAAG,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,OAAO,CAAC;CACpC,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;CACvB;CACA,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;CACtB,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;CACpB,IAAI;;CAEJ;CACA,GAAG,IAAI,GAAG,EAAE;CACZ,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC;CACvB,IAAI,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;CACxB,IAAI,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;CACvC;CACA,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;CAC7C,IAAI;CACJ,GAAG;CACH,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;;CAEvB,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;;CAE5B,EAAE,UAAU,CAAC,YAAY;CACzB,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;CACzB,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE;CAC5B,IAAI,OAAO,EAAE,EAAE;CACf,IAAI,OAAO,EAAE,YAAY;CACzB,IAAI,CAAC,CAAC;CACN,GAAG,EAAE,GAAG,CAAC,CAAC;CACV,EAAE;;CAEF,CAAC,oBAAoB,EAAE,UAAU,WAAW,EAAE;CAC9C,EAAE,IAAI,EAAE,GAAG,IAAI;CACf,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM;CACtB,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI;CACnB,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa;CAC3B,GAAG,YAAY,GAAG,WAAW,GAAG,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;CACrJ,GAAG,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC;CACrD,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG;CACnB,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;;CAEhD,EAAE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;CAC3B,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;;CAE1B;CACA,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CACrB,EAAE,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CACjD,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAEvB;CACA,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,EAAE;CAC9B,IAAI,SAAS;CACb,IAAI;;CAEJ;CACA,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;;CAElB;CACA,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;CACrC,GAAG,OAAO,CAAC,CAAC,kBAAkB,CAAC;;CAE/B;CACA,GAAG,aAAa,GAAG,IAAI,CAAC;CACxB,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE;CAClB,IAAI,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5B,IAAI,aAAa,GAAG,KAAK,CAAC;CAC1B,IAAI;CACJ,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;CACtB,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;CACpB,IAAI,aAAa,GAAG,KAAK,CAAC;CAC1B,IAAI;CACJ,GAAG,IAAI,aAAa,EAAE;CACtB,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACtB,IAAI;;CAEJ;CACA,GAAG,IAAI,GAAG,EAAE;CACZ,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC;CACvB,IAAI,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;CACxB,IAAI,SAAS,GAAG,OAAO,CAAC,cAAc,EAAE,GAAG,GAAG,CAAC;CAC/C,IAAI,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC;CAC/C,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;CAC/B,IAAI;CACJ,GAAG;;CAEH,EAAE,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;;CAE5B,EAAE,UAAU,CAAC,YAAY;CACzB;CACA,GAAG,IAAI,oBAAoB,GAAG,CAAC,CAAC;CAChC,GAAG,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAClD,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;CACxB,IAAI,IAAI,CAAC,CAAC,UAAU,EAAE;CACtB,KAAK,oBAAoB,EAAE,CAAC;CAC5B,KAAK;CACL,IAAI;;;CAGJ,GAAG,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;CAClD,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;;CAExB,IAAI,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE;CACvB,KAAK,SAAS;CACd,KAAK;;CAEL,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE;CACvB,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;CACrB,KAAK;CACL,IAAI,IAAI,CAAC,CAAC,eAAe,EAAE;CAC3B,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAC1B,KAAK;;CAEL,IAAI,IAAI,oBAAoB,GAAG,CAAC,EAAE;CAClC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACvB,KAAK;;CAEL,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;CAClC,IAAI,OAAO,CAAC,CAAC,UAAU,CAAC;CACxB,IAAI;CACJ,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;CACzB,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;CAC9B,IAAI,OAAO,EAAE,EAAE;CACf,IAAI,OAAO,EAAE,YAAY;CACzB,IAAI,CAAC,CAAC;CACN,GAAG,EAAE,GAAG,CAAC,CAAC;CACV,EAAE;CACF,CAAC,CAAC,CAAC;;;CAGH,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;CAC7B;CACA,CAAC,WAAW,EAAE,IAAI;;CAElB,CAAC,UAAU,EAAE,YAAY;CACzB,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CAC1C,EAAE;;CAEF,CAAC,gBAAgB,EAAE,YAAY;CAC/B,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;;CAEvD,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;CACvC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;CAC9D,GAAG;CACH;CACA,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;;CAE7D,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE;CACxB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;CAC/B;CACA;CACA;CACA,GAAG;CACH,EAAE;;CAEF,CAAC,mBAAmB,EAAE,YAAY;CAClC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;CACxD,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;CAC9D,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;CAC5D,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;;CAE9D;CACA;CACA,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;CAChC,EAAE;;CAEF;CACA;CACA,CAAC,oBAAoB,EAAE,YAAY;CACnC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;CAClB,GAAG,OAAO;CACV,GAAG;;CAEH,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;CAC3D,EAAE;;CAEF,CAAC,mBAAmB,EAAE,UAAU,WAAW,EAAE;CAC7C;CACA,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE;CAClE,GAAG,OAAO;CACV,GAAG;;CAEH,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;CAC5D,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;CAChC,EAAE;;CAEF,CAAC,kBAAkB,EAAE,YAAY;CACjC;CACA,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;CACrB,EAAE;;CAEF,CAAC,WAAW,EAAE,UAAU,WAAW,EAAE;CACrC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;CACxB,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;CAC5C,GAAG;CACH,EAAE;;CAEF,CAAC,sBAAsB,EAAE,YAAY;CACrC,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE;CACxB,GAAG,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;CAC7C,GAAG;CACH,EAAE;;CAEF;CACA,CAAC,gBAAgB,EAAE,UAAU,KAAK,EAAE;CACpC,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;CACxB,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;;CAEzC,GAAG,IAAI,KAAK,CAAC,WAAW,EAAE;CAC1B,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;CACxB,IAAI;CACJ;CACA,GAAG,IAAI,KAAK,CAAC,eAAe,EAAE;CAC9B,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAC7B,IAAI;;CAEJ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;CAC3C,GAAG,OAAO,KAAK,CAAC,UAAU,CAAC;CAC3B,GAAG;CACH,EAAE;CACF,CAAC,CAAC,CAAC;;CC5dH;CACA;CACA;CACA;CACA;CACA;;;CAGA,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;CAC7B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,eAAe,EAAE,UAAU,MAAM,EAAE;CACpC,EAAE,IAAI,CAAC,MAAM,EAAE;CACf,GAAG,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;CACvD,GAAG,MAAM,IAAI,MAAM,YAAY,CAAC,CAAC,kBAAkB,EAAE;CACrD,GAAG,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;CACzD,GAAG,MAAM,IAAI,MAAM,YAAY,CAAC,CAAC,UAAU,EAAE;CAC7C,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;CAC3B,GAAG,MAAM,IAAI,MAAM,YAAY,CAAC,CAAC,aAAa,EAAE;CAChD,GAAG,MAAM,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;CACxC,GAAG,MAAM,IAAI,MAAM,YAAY,CAAC,CAAC,MAAM,EAAE;CACzC,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,CAAC;CACrB,GAAG;CACH,EAAE,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;CAC3C,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC;;CAE/B;CACA,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;CACrC,GAAG,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,CAAC;CAChD,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA,CAAC,2BAA2B,EAAE,UAAU,MAAM,EAAE;CAChD,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC;;CAEjB;CACA,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE;CACrB;CACA;CACA;CACA;CACA;CACA,GAAG,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;CAChC,GAAG,OAAO,MAAM,EAAE;CAClB,IAAI,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC;CACnC,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC;CAC7B,IAAI;CACJ,GAAG;CACH,EAAE;;CAEF;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,+BAA+B,EAAE,UAAU,MAAM,EAAE;CACpD,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC;;CAEhB,EAAE,KAAK,EAAE,IAAI,MAAM,EAAE;CACrB,GAAG,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;;CAEtB;CACA,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;CAC7B;CACA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;CACnD,IAAI;CACJ,GAAG;CACH,EAAE;CACF,CAAC,CAAC,CAAC;;CAEH,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;CACjB;CACA;CACA;CACA;CACA;CACA;CACA;CACA,CAAC,kBAAkB,EAAE,UAAU,OAAO,EAAE,uBAAuB,EAAE;CACjE,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;;CAE/B,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;;CAE9B,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;CAErB;CACA;CACA;CACA;CACA,EAAE,IAAI,uBAAuB,IAAI,IAAI,CAAC,QAAQ,EAAE;CAChD,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;CAC9C,GAAG;;CAEH,EAAE,OAAO,IAAI,CAAC;CACd,EAAE;CACF,CAAC,CAAC,CAAC;;;;;;;;;;;;;"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e=e||self).Leaflet=e.Leaflet||{},e.Leaflet.markercluster={}))}(this,function(e){"use strict";var t=L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,clusterPane:L.Marker.prototype.options.pane,spiderfyOnEveryZoom:!1,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyShapePositions:null,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(e){L.Util.setOptions(this,e),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.addEventParent(this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.addEventParent(this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[],this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var t=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,t?this._withAnimation:this._noAnimation),this._markerCluster=t?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(e){if(e instanceof L.LayerGroup)return this.addLayers([e]);if(!e.getLatLng)return this._nonPointGroup.addLayer(e),this.fire("layeradd",{layer:e}),this;if(!this._map)return this._needsClustering.push(e),this.fire("layeradd",{layer:e}),this;if(this.hasLayer(e))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(e,this._maxZoom),this.fire("layeradd",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons();var t=e,i=this._zoom;if(e.__parent)for(;t.__parent._zoom>=i;)t=t.__parent;return this._currentShownBounds.contains(t.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(e,t):this._animationAddLayerNonAnimated(e,t)),this},removeLayer:function(e){return e instanceof L.LayerGroup?this.removeLayers([e]):(e.getLatLng?this._map?e.__parent&&(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(e)),this._removeLayer(e,!0),this.fire("layerremove",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),e.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(e)&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow())):(!this._arraySplice(this._needsClustering,e)&&this.hasLayer(e)&&this._needsRemoving.push({layer:e,latlng:e._latlng}),this.fire("layerremove",{layer:e})):(this._nonPointGroup.removeLayer(e),this.fire("layerremove",{layer:e})),this)},addLayers:function(n,s){if(!L.Util.isArray(n))return this.addLayer(n);var o,a=this._featureGroup,h=this._nonPointGroup,l=this.options.chunkedLoading,u=this.options.chunkInterval,_=this.options.chunkProgress,d=n.length,p=0,c=!0;if(this._map){var f=(new Date).getTime(),m=L.bind(function(){var e=(new Date).getTime();for(this._map&&this._unspiderfy&&this._unspiderfy();p<d;p++){if(l&&p%200==0){var t=(new Date).getTime()-e;if(u<t)break}if((o=n[p])instanceof L.LayerGroup)c&&(n=n.slice(),c=!1),this._extractNonGroupLayers(o,n),d=n.length;else if(o.getLatLng){if(!this.hasLayer(o)&&(this._addLayer(o,this._maxZoom),s||this.fire("layeradd",{layer:o}),o.__parent&&2===o.__parent.getChildCount())){var i=o.__parent.getAllChildMarkers(),r=i[0]===o?i[1]:i[0];a.removeLayer(r)}}else h.addLayer(o),s||this.fire("layeradd",{layer:o})}_&&_(p,d,(new Date).getTime()-f),p===d?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(m,this.options.chunkDelay)},this);m()}else for(var e=this._needsClustering;p<d;p++)(o=n[p])instanceof L.LayerGroup?(c&&(n=n.slice(),c=!1),this._extractNonGroupLayers(o,n),d=n.length):o.getLatLng?this.hasLayer(o)||e.push(o):h.addLayer(o);return this},removeLayers:function(e){var t,i,r=e.length,n=this._featureGroup,s=this._nonPointGroup,o=!0;if(!this._map){for(t=0;t<r;t++)(i=e[t])instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),r=e.length):(this._arraySplice(this._needsClustering,i),s.removeLayer(i),this.hasLayer(i)&&this._needsRemoving.push({layer:i,latlng:i._latlng}),this.fire("layerremove",{layer:i}));return this}if(this._unspiderfy){this._unspiderfy();var a=e.slice(),h=r;for(t=0;t<h;t++)(i=a[t])instanceof L.LayerGroup?(this._extractNonGroupLayers(i,a),h=a.length):this._unspiderfyLayer(i)}for(t=0;t<r;t++)(i=e[t])instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),r=e.length):i.__parent?(this._removeLayer(i,!0,!0),this.fire("layerremove",{layer:i}),n.hasLayer(i)&&(n.removeLayer(i),i.clusterShow&&i.clusterShow())):(s.removeLayer(i),this.fire("layerremove",{layer:i}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],this._needsRemoving=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(e){e.off(this._childMarkerEventHandlers,this),delete e.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var e=new L.LatLngBounds;this._topClusterLevel&&e.extend(this._topClusterLevel._bounds);for(var t=this._needsClustering.length-1;0<=t;t--)e.extend(this._needsClustering[t].getLatLng());return e.extend(this._nonPointGroup.getBounds()),e},eachLayer:function(e,t){var i,r,n,s=this._needsClustering.slice(),o=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(s),r=s.length-1;0<=r;r--){for(i=!0,n=o.length-1;0<=n;n--)if(o[n].layer===s[r]){i=!1;break}i&&e.call(t,s[r])}this._nonPointGroup.eachLayer(e,t)},getLayers:function(){var t=[];return this.eachLayer(function(e){t.push(e)}),t},getLayer:function(t){var i=null;return t=parseInt(t,10),this.eachLayer(function(e){L.stamp(e)===t&&(i=e)}),i},hasLayer:function(e){if(!e)return!1;var t,i=this._needsClustering;for(t=i.length-1;0<=t;t--)if(i[t]===e)return!0;for(t=(i=this._needsRemoving).length-1;0<=t;t--)if(i[t].layer===e)return!1;return!(!e.__parent||e.__parent._group!==this)||this._nonPointGroup.hasLayer(e)},zoomToShowLayer:function(e,t){var i=this._map;"function"!=typeof t&&(t=function(){});var r=function(){!i.hasLayer(e)&&!i.hasLayer(e.__parent)||this._inZoomAnimation||(this._map.off("moveend",r,this),this.off("animationend",r,this),i.hasLayer(e)?t():e.__parent._icon&&(this.once("spiderfied",t,this),e.__parent.spiderfy()))};e._icon&&this._map.getBounds().contains(e.getLatLng())?t():e.__parent._zoom<Math.round(this._map._zoom)?(this._map.on("moveend",r,this),this._map.panTo(e.getLatLng())):(this._map.on("moveend",r,this),this.on("animationend",r,this),e.__parent.zoomToBounds())},onAdd:function(e){var t,i,r;if(this._map=e,!isFinite(this._map.getMaxZoom()))throw"Map has no maxZoom specified";for(this._featureGroup.addTo(e),this._nonPointGroup.addTo(e),this._gridClusters||this._generateInitialClusters(),this._maxLat=e.options.crs.projection.MAX_LATITUDE,t=0,i=this._needsRemoving.length;t<i;t++)(r=this._needsRemoving[t]).newlatlng=r.layer._latlng,r.layer._latlng=r.latlng;for(t=0,i=this._needsRemoving.length;t<i;t++)r=this._needsRemoving[t],this._removeLayer(r.layer,!0),r.layer._latlng=r.newlatlng;this._needsRemoving=[],this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds(),this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),i=this._needsClustering,this._needsClustering=[],this.addLayers(i,!0)},onRemove:function(e){e.off("zoomend",this._zoomEnd,this),e.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),delete this._maxLat,this._hideCoverage(),this._featureGroup.remove(),this._nonPointGroup.remove(),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(e){for(var t=e;t&&!t._icon;)t=t.__parent;return t||null},_arraySplice:function(e,t){for(var i=e.length-1;0<=i;i--)if(e[i]===t)return e.splice(i,1),!0},_removeFromGridUnclustered:function(e,t){for(var i=this._map,r=this._gridUnclustered,n=Math.floor(this._map.getMinZoom());n<=t&&r[t].removeObject(e,i.project(e.getLatLng(),t));t--);},_childMarkerDragStart:function(e){e.target.__dragStart=e.target._latlng},_childMarkerMoved:function(e){if(!this._ignoreMove&&!e.target.__dragStart){var t=e.target._popup&&e.target._popup.isOpen();this._moveChild(e.target,e.oldLatLng,e.latlng),t&&e.target.openPopup()}},_moveChild:function(e,t,i){e._latlng=t,this.removeLayer(e),e._latlng=i,this.addLayer(e)},_childMarkerDragEnd:function(e){var t=e.target.__dragStart;delete e.target.__dragStart,t&&this._moveChild(e.target,t,e.target._latlng)},_removeLayer:function(e,t,i){var r=this._gridClusters,n=this._gridUnclustered,s=this._featureGroup,o=this._map,a=Math.floor(this._map.getMinZoom());t&&this._removeFromGridUnclustered(e,this._maxZoom);var h,l=e.__parent,u=l._markers;for(this._arraySplice(u,e);l&&(l._childCount--,l._boundsNeedUpdate=!0,!(l._zoom<a));)t&&l._childCount<=1?(h=l._markers[0]===e?l._markers[1]:l._markers[0],r[l._zoom].removeObject(l,o.project(l._cLatLng,l._zoom)),n[l._zoom].addObject(h,o.project(h.getLatLng(),l._zoom)),this._arraySplice(l.__parent._childClusters,l),l.__parent._markers.push(h),h.__parent=l.__parent,l._icon&&(s.removeLayer(l),i||s.addLayer(h))):l._iconNeedsUpdate=!0,l=l.__parent;delete e.__parent},_isOrIsParent:function(e,t){for(;t;){if(e===t)return!0;t=t.parentNode}return!1},fire:function(e,t,i){if(t&&t.layer instanceof L.MarkerCluster){if(t.originalEvent&&this._isOrIsParent(t.layer._icon,t.originalEvent.relatedTarget))return;e="cluster"+e}L.FeatureGroup.prototype.fire.call(this,e,t,i)},listens:function(e,t){return L.FeatureGroup.prototype.listens.call(this,e,t)||L.FeatureGroup.prototype.listens.call(this,"cluster"+e,t)},_defaultIconCreateFunction:function(e){var t=e.getChildCount(),i=" marker-cluster-";return i+=t<10?"small":t<100?"medium":"large",new L.DivIcon({html:"<div><span>"+t+"</span></div>",className:"marker-cluster"+i,iconSize:new L.Point(40,40)})},_bindEvents:function(){var e=this._map,t=this.options.spiderfyOnMaxZoom,i=this.options.showCoverageOnHover,r=this.options.zoomToBoundsOnClick,n=this.options.spiderfyOnEveryZoom;(t||r||n)&&this.on("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),i&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),e.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(e){var t=e.layer,i=t;if("clusterkeypress"!==e.type||!e.originalEvent||13===e.originalEvent.keyCode){for(;1===i._childClusters.length;)i=i._childClusters[0];i._zoom===this._maxZoom&&i._childCount===t._childCount&&this.options.spiderfyOnMaxZoom?t.spiderfy():this.options.zoomToBoundsOnClick&&t.zoomToBounds(),this.options.spiderfyOnEveryZoom&&t.spiderfy(),e.originalEvent&&13===e.originalEvent.keyCode&&this._map._container.focus()}},_showCoverage:function(e){var t=this._map;this._inZoomAnimation||(this._shownPolygon&&t.removeLayer(this._shownPolygon),2<e.layer.getChildCount()&&e.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(e.layer.getConvexHull(),this.options.polygonOptions),t.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var e=this.options.spiderfyOnMaxZoom,t=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,r=this.options.spiderfyOnEveryZoom,n=this._map;(e||i||r)&&this.off("clusterclick clusterkeypress",this._zoomOrSpiderfy,this),t&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),n.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var e=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),e),this._currentShownBounds=e}},_generateInitialClusters:function(){var e=Math.ceil(this._map.getMaxZoom()),t=Math.floor(this._map.getMinZoom()),i=this.options.maxClusterRadius,r=i;"function"!=typeof i&&(r=function(){return i}),null!==this.options.disableClusteringAtZoom&&(e=this.options.disableClusteringAtZoom-1),this._maxZoom=e,this._gridClusters={},this._gridUnclustered={};for(var n=e;t<=n;n--)this._gridClusters[n]=new L.DistanceGrid(r(n)),this._gridUnclustered[n]=new L.DistanceGrid(r(n));this._topClusterLevel=new this._markerCluster(this,t-1)},_addLayer:function(e,t){var i,r,n=this._gridClusters,s=this._gridUnclustered,o=Math.floor(this._map.getMinZoom());for(this.options.singleMarkerMode&&this._overrideMarkerIcon(e),e.on(this._childMarkerEventHandlers,this);o<=t;t--){i=this._map.project(e.getLatLng(),t);var a=n[t].getNearObject(i);if(a)return a._addChild(e),void(e.__parent=a);if(a=s[t].getNearObject(i)){var h=a.__parent;h&&this._removeLayer(a,!1);var l=new this._markerCluster(this,t,a,e);n[t].addObject(l,this._map.project(l._cLatLng,t)),a.__parent=l;var u=e.__parent=l;for(r=t-1;r>h._zoom;r--)u=new this._markerCluster(this,r,u),n[r].addObject(u,this._map.project(a.getLatLng(),r));return h._addChild(u),void this._removeFromGridUnclustered(a,t)}s[t].addObject(e,i)}this._topClusterLevel._addChild(e),e.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(e){e instanceof L.MarkerCluster&&e._iconNeedsUpdate&&e._updateIcon()})},_enqueue:function(e){this._queue.push(e),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var e=0;e<this._queue.length;e++)this._queue[e].call(this);this._queue.length=0,clearTimeout(this._queueTimeout),this._queueTimeout=null},_mergeSplitClusters:function(){var e=Math.round(this._map._zoom);this._processQueue(),this._zoom<e&&this._currentShownBounds.intersects(this._getExpandedVisibleBounds())?(this._animationStart(),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,this._getExpandedVisibleBounds()),this._animationZoomIn(this._zoom,e)):this._zoom>e?(this._animationStart(),this._animationZoomOut(this._zoom,e)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(e){var t=this._maxLat;return void 0!==t&&(e.getNorth()>=t&&(e._northEast.lat=1/0),e.getSouth()<=-t&&(e._southWest.lat=-1/0)),e},_animationAddLayerNonAnimated:function(e,t){if(t===e)this._featureGroup.addLayer(e);else if(2===t._childCount){t._addToMap();var i=t.getAllChildMarkers();this._featureGroup.removeLayer(i[0]),this._featureGroup.removeLayer(i[1])}else t._updateIcon()},_extractNonGroupLayers:function(e,t){var i,r=e.getLayers(),n=0;for(t=t||[];n<r.length;n++)(i=r[n])instanceof L.LayerGroup?this._extractNonGroupLayers(i,t):t.push(i);return t},_overrideMarkerIcon:function(e){return e.options.icon=this.options.iconCreateFunction({getChildCount:function(){return 1},getAllChildMarkers:function(){return[e]}})}});L.MarkerClusterGroup.include({_mapBoundsInfinite:new L.LatLngBounds(new L.LatLng(-1/0,-1/0),new L.LatLng(1/0,1/0))}),L.MarkerClusterGroup.include({_noAnimation:{_animationStart:function(){},_animationZoomIn:function(e,t){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),e),this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationZoomOut:function(e,t){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),e),this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds()),this.fire("animationend")},_animationAddLayer:function(e,t){this._animationAddLayerNonAnimated(e,t)}},_withAnimation:{_animationStart:function(){this._map._mapPane.className+=" leaflet-cluster-anim",this._inZoomAnimation++},_animationZoomIn:function(n,s){var o,a=this._getExpandedVisibleBounds(),h=this._featureGroup,e=Math.floor(this._map.getMinZoom());this._ignoreMove=!0,this._topClusterLevel._recursively(a,n,e,function(e){var t,i=e._latlng,r=e._markers;for(a.contains(i)||(i=null),e._isSingleParent()&&n+1===s?(h.removeLayer(e),e._recursivelyAddChildrenToMap(null,s,a)):(e.clusterHide(),e._recursivelyAddChildrenToMap(i,s,a)),o=r.length-1;0<=o;o--)t=r[o],a.contains(t._latlng)||h.removeLayer(t)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(a,s),h.eachLayer(function(e){e instanceof L.MarkerCluster||!e._icon||e.clusterShow()}),this._topClusterLevel._recursively(a,n,s,function(e){e._recursivelyRestoreChildPositions(s)}),this._ignoreMove=!1,this._enqueue(function(){this._topClusterLevel._recursively(a,n,e,function(e){h.removeLayer(e),e.clusterShow()}),this._animationEnd()})},_animationZoomOut:function(e,t){this._animationZoomOutSingle(this._topClusterLevel,e-1,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),e,this._getExpandedVisibleBounds())},_animationAddLayer:function(e,t){var i=this,r=this._featureGroup;r.addLayer(e),t!==e&&(2<t._childCount?(t._updateIcon(),this._forceLayout(),this._animationStart(),e._setPos(this._map.latLngToLayerPoint(t.getLatLng())),e.clusterHide(),this._enqueue(function(){r.removeLayer(e),e.clusterShow(),i._animationEnd()})):(this._forceLayout(),i._animationStart(),i._animationZoomOutSingle(t,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(t,i,r){var n=this._getExpandedVisibleBounds(),s=Math.floor(this._map.getMinZoom());t._recursivelyAnimateChildrenInAndAddSelfToMap(n,s,i+1,r);var o=this;this._forceLayout(),t._recursivelyBecomeVisible(n,r),this._enqueue(function(){if(1===t._childCount){var e=t._markers[0];this._ignoreMove=!0,e.setLatLng(e.getLatLng()),this._ignoreMove=!1,e.clusterShow&&e.clusterShow()}else t._recursively(n,r,s,function(e){e._recursivelyRemoveChildrenFromMap(n,s,i+1)});o._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(document.body.offsetWidth)}}),L.markerClusterGroup=function(e){return new L.MarkerClusterGroup(e)};var i=L.MarkerCluster=L.Marker.extend({options:L.Icon.prototype.options,initialize:function(e,t,i,r){L.Marker.prototype.initialize.call(this,i?i._cLatLng||i.getLatLng():new L.LatLng(0,0),{icon:this,pane:e.options.clusterPane}),this._group=e,this._zoom=t,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._bounds=new L.LatLngBounds,i&&this._addChild(i),r&&this._addChild(r)},getAllChildMarkers:function(e,t){e=e||[];for(var i=this._childClusters.length-1;0<=i;i--)this._childClusters[i].getAllChildMarkers(e,t);for(var r=this._markers.length-1;0<=r;r--)t&&this._markers[r].__dragStart||e.push(this._markers[r]);return e},getChildCount:function(){return this._childCount},zoomToBounds:function(e){for(var t,i=this._childClusters.slice(),r=this._group._map,n=r.getBoundsZoom(this._bounds),s=this._zoom+1,o=r.getZoom();0<i.length&&s<n;){s++;var a=[];for(t=0;t<i.length;t++)a=a.concat(i[t]._childClusters);i=a}s<n?this._group._map.setView(this._latlng,s):n<=o?this._group._map.setView(this._latlng,o+1):this._group._map.fitBounds(this._bounds,e)},getBounds:function(){var e=new L.LatLngBounds;return e.extend(this._bounds),e},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(e,t){this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._setClusterCenter(e),e instanceof L.MarkerCluster?(t||(this._childClusters.push(e),e.__parent=this),this._childCount+=e._childCount):(t||this._markers.push(e),this._childCount++),this.__parent&&this.__parent._addChild(e,!0)},_setClusterCenter:function(e){this._cLatLng||(this._cLatLng=e._cLatLng||e._latlng)},_resetBounds:function(){var e=this._bounds;e._southWest&&(e._southWest.lat=1/0,e._southWest.lng=1/0),e._northEast&&(e._northEast.lat=-1/0,e._northEast.lng=-1/0)},_recalculateBounds:function(){var e,t,i,r,n=this._markers,s=this._childClusters,o=0,a=0,h=this._childCount;if(0!==h){for(this._resetBounds(),e=0;e<n.length;e++)i=n[e]._latlng,this._bounds.extend(i),o+=i.lat,a+=i.lng;for(e=0;e<s.length;e++)(t=s[e])._boundsNeedUpdate&&t._recalculateBounds(),this._bounds.extend(t._bounds),i=t._wLatLng,r=t._childCount,o+=i.lat*r,a+=i.lng*r;this._latlng=this._wLatLng=new L.LatLng(o/h,a/h),this._boundsNeedUpdate=!1}},_addToMap:function(e){e&&(this._backupLatlng=this._latlng,this.setLatLng(e)),this._group._featureGroup.addLayer(this)},_recursivelyAnimateChildrenIn:function(e,n,t){this._recursively(e,this._group._map.getMinZoom(),t-1,function(e){var t,i,r=e._markers;for(t=r.length-1;0<=t;t--)(i=r[t])._icon&&(i._setPos(n),i.clusterHide())},function(e){var t,i,r=e._childClusters;for(t=r.length-1;0<=t;t--)(i=r[t])._icon&&(i._setPos(n),i.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(t,i,r,n){this._recursively(t,n,i,function(e){e._recursivelyAnimateChildrenIn(t,e._group._map.latLngToLayerPoint(e.getLatLng()).round(),r),e._isSingleParent()&&r-1===n?(e.clusterShow(),e._recursivelyRemoveChildrenFromMap(t,i,r)):e.clusterHide(),e._addToMap()})},_recursivelyBecomeVisible:function(e,t){this._recursively(e,this._group._map.getMinZoom(),t,null,function(e){e.clusterShow()})},_recursivelyAddChildrenToMap:function(r,n,s){this._recursively(s,this._group._map.getMinZoom()-1,n,function(e){if(n!==e._zoom)for(var t=e._markers.length-1;0<=t;t--){var i=e._markers[t];s.contains(i._latlng)&&(r&&(i._backupLatlng=i.getLatLng(),i.setLatLng(r),i.clusterHide&&i.clusterHide()),e._group._featureGroup.addLayer(i))}},function(e){e._addToMap(r)})},_recursivelyRestoreChildPositions:function(e){for(var t=this._markers.length-1;0<=t;t--){var i=this._markers[t];i._backupLatlng&&(i.setLatLng(i._backupLatlng),delete i._backupLatlng)}if(e-1===this._zoom)for(var r=this._childClusters.length-1;0<=r;r--)this._childClusters[r]._restorePosition();else for(var n=this._childClusters.length-1;0<=n;n--)this._childClusters[n]._recursivelyRestoreChildPositions(e)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(e,t,i,r){var n,s;this._recursively(e,t-1,i-1,function(e){for(s=e._markers.length-1;0<=s;s--)n=e._markers[s],r&&r.contains(n._latlng)||(e._group._featureGroup.removeLayer(n),n.clusterShow&&n.clusterShow())},function(e){for(s=e._childClusters.length-1;0<=s;s--)n=e._childClusters[s],r&&r.contains(n._latlng)||(e._group._featureGroup.removeLayer(n),n.clusterShow&&n.clusterShow())})},_recursively:function(e,t,i,r,n){var s,o,a=this._childClusters,h=this._zoom;if(t<=h&&(r&&r(this),n&&h===i&&n(this)),h<t||h<i)for(s=a.length-1;0<=s;s--)(o=a[s])._boundsNeedUpdate&&o._recalculateBounds(),e.intersects(o._bounds)&&o._recursively(e,t,i,r,n)},_isSingleParent:function(){return 0<this._childClusters.length&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){var e=this.options.opacity;return this.setOpacity(0),this.options.opacity=e,this},clusterShow:function(){return this.setOpacity(this.options.opacity)}}),L.DistanceGrid=function(e){this._cellSize=e,this._sqCellSize=e*e,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(e,t){var i=this._getCoord(t.x),r=this._getCoord(t.y),n=this._grid,s=n[r]=n[r]||{},o=s[i]=s[i]||[],a=L.Util.stamp(e);this._objectPoint[a]=t,o.push(e)},updateObject:function(e,t){this.removeObject(e),this.addObject(e,t)},removeObject:function(e,t){var i,r,n=this._getCoord(t.x),s=this._getCoord(t.y),o=this._grid,a=o[s]=o[s]||{},h=a[n]=a[n]||[];for(delete this._objectPoint[L.Util.stamp(e)],i=0,r=h.length;i<r;i++)if(h[i]===e)return h.splice(i,1),1===r&&delete a[n],!0},eachObject:function(e,t){var i,r,n,s,o,a,h=this._grid;for(i in h)for(r in o=h[i])for(n=0,s=(a=o[r]).length;n<s;n++)e.call(t,a[n])&&(n--,s--)},getNearObject:function(e){var t,i,r,n,s,o,a,h,l=this._getCoord(e.x),u=this._getCoord(e.y),_=this._objectPoint,d=this._sqCellSize,p=null;for(t=u-1;t<=u+1;t++)if(n=this._grid[t])for(i=l-1;i<=l+1;i++)if(s=n[i])for(r=0,o=s.length;r<o;r++)a=s[r],((h=this._sqDist(_[L.Util.stamp(a)],e))<d||h<=d&&null===p)&&(d=h,p=a);return p},_getCoord:function(e){var t=Math.floor(e/this._cellSize);return isFinite(t)?t:e},_sqDist:function(e,t){var i=t.x-e.x,r=t.y-e.y;return i*i+r*r}},L.QuickHull={getDistant:function(e,t){var i=t[1].lat-t[0].lat;return(t[0].lng-t[1].lng)*(e.lat-t[0].lat)+i*(e.lng-t[0].lng)},findMostDistantPointFromBaseLine:function(e,t){var i,r,n,s=0,o=null,a=[];for(i=t.length-1;0<=i;i--)r=t[i],0<(n=this.getDistant(r,e))&&(a.push(r),s<n&&(s=n,o=r));return{maxPoint:o,newPoints:a}},buildConvexHull:function(e,t){var i=[],r=this.findMostDistantPointFromBaseLine(e,t);return r.maxPoint?i=(i=i.concat(this.buildConvexHull([e[0],r.maxPoint],r.newPoints))).concat(this.buildConvexHull([r.maxPoint,e[1]],r.newPoints)):[e[0]]},getConvexHull:function(e){var t,i=!1,r=!1,n=!1,s=!1,o=null,a=null,h=null,l=null,u=null,_=null;for(t=e.length-1;0<=t;t--){var d=e[t];(!1===i||d.lat>i)&&(i=(o=d).lat),(!1===r||d.lat<r)&&(r=(a=d).lat),(!1===n||d.lng>n)&&(n=(h=d).lng),(!1===s||d.lng<s)&&(s=(l=d).lng)}return u=r!==i?(_=a,o):(_=l,h),[].concat(this.buildConvexHull([_,u],e),this.buildConvexHull([u,_],e))}},L.MarkerCluster.include({getConvexHull:function(){var e,t,i=this.getAllChildMarkers(),r=[];for(t=i.length-1;0<=t;t--)e=i[t].getLatLng(),r.push(e);return L.QuickHull.getConvexHull(r)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:0,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var e,t=this.getAllChildMarkers(null,!0),i=this._group._map.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),e=(this._group._spiderfied=this)._group.options.spiderfyShapePositions?this._group.options.spiderfyShapePositions(t.length,i):t.length>=this._circleSpiralSwitchover?this._generatePointsSpiral(t.length,i):(i.y+=10,this._generatePointsCircle(t.length,i)),this._animationSpiderfy(t,e)}},unspiderfy:function(e){this._group._inZoomAnimation||(this._animationUnspiderfy(e),this._group._spiderfied=null)},_generatePointsCircle:function(e,t){var i,r,n=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+e)/this._2PI,s=this._2PI/e,o=[];for(n=Math.max(n,35),o.length=e,i=0;i<e;i++)r=this._circleStartAngle+i*s,o[i]=new L.Point(t.x+n*Math.cos(r),t.y+n*Math.sin(r))._round();return o},_generatePointsSpiral:function(e,t){var i,r=this._group.options.spiderfyDistanceMultiplier,n=r*this._spiralLengthStart,s=r*this._spiralFootSeparation,o=r*this._spiralLengthFactor*this._2PI,a=0,h=[];for(i=h.length=e;0<=i;i--)i<e&&(h[i]=new L.Point(t.x+n*Math.cos(a),t.y+n*Math.sin(a))._round()),n+=o/(a+=s/n+5e-4*i);return h},_noanimationUnspiderfy:function(){var e,t,i=this._group,r=i._map,n=i._featureGroup,s=this.getAllChildMarkers(null,!0);for(i._ignoreMove=!0,this.setOpacity(1),t=s.length-1;0<=t;t--)e=s[t],n.removeLayer(e),e._preSpiderfyLatlng&&(e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng),e.setZIndexOffset&&e.setZIndexOffset(0),e._spiderLeg&&(r.removeLayer(e._spiderLeg),delete e._spiderLeg);i.fire("unspiderfied",{cluster:this,markers:s}),i._ignoreMove=!1,i._spiderfied=null}}),L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(e,t){var i,r,n,s,o=this._group,a=o._map,h=o._featureGroup,l=this._group.options.spiderLegPolylineOptions;for(o._ignoreMove=!0,i=0;i<e.length;i++)s=a.layerPointToLatLng(t[i]),r=e[i],n=new L.Polyline([this._latlng,s],l),a.addLayer(n),r._spiderLeg=n,r._preSpiderfyLatlng=r._latlng,r.setLatLng(s),r.setZIndexOffset&&r.setZIndexOffset(1e6),h.addLayer(r);this.setOpacity(.3),o._ignoreMove=!1,o.fire("spiderfied",{cluster:this,markers:e})},_animationUnspiderfy:function(){this._noanimationUnspiderfy()}}),L.MarkerCluster.include({_animationSpiderfy:function(e,t){var i,r,n,s,o,a,h=this,l=this._group,u=l._map,_=l._featureGroup,d=this._latlng,p=u.latLngToLayerPoint(d),c=L.Path.SVG,f=L.extend({},this._group.options.spiderLegPolylineOptions),m=f.opacity;for(void 0===m&&(m=L.MarkerClusterGroup.prototype.options.spiderLegPolylineOptions.opacity),c?(f.opacity=0,f.className=(f.className||"")+" leaflet-cluster-spider-leg"):f.opacity=m,l._ignoreMove=!0,i=0;i<e.length;i++)r=e[i],a=u.layerPointToLatLng(t[i]),n=new L.Polyline([d,a],f),u.addLayer(n),r._spiderLeg=n,c&&(o=(s=n._path).getTotalLength()+.1,s.style.strokeDasharray=o,s.style.strokeDashoffset=o),r.setZIndexOffset&&r.setZIndexOffset(1e6),r.clusterHide&&r.clusterHide(),_.addLayer(r),r._setPos&&r._setPos(p);for(l._forceLayout(),l._animationStart(),i=e.length-1;0<=i;i--)a=u.layerPointToLatLng(t[i]),(r=e[i])._preSpiderfyLatlng=r._latlng,r.setLatLng(a),r.clusterShow&&r.clusterShow(),c&&((s=(n=r._spiderLeg)._path).style.strokeDashoffset=0,n.setStyle({opacity:m}));this.setOpacity(.3),l._ignoreMove=!1,setTimeout(function(){l._animationEnd(),l.fire("spiderfied",{cluster:h,markers:e})},200)},_animationUnspiderfy:function(e){var t,i,r,n,s,o,a=this,h=this._group,l=h._map,u=h._featureGroup,_=e?l._latLngToNewLayerPoint(this._latlng,e.zoom,e.center):l.latLngToLayerPoint(this._latlng),d=this.getAllChildMarkers(null,!0),p=L.Path.SVG;for(h._ignoreMove=!0,h._animationStart(),this.setOpacity(1),i=d.length-1;0<=i;i--)(t=d[i])._preSpiderfyLatlng&&(t.closePopup(),t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng,o=!0,t._setPos&&(t._setPos(_),o=!1),t.clusterHide&&(t.clusterHide(),o=!1),o&&u.removeLayer(t),p&&(s=(n=(r=t._spiderLeg)._path).getTotalLength()+.1,n.style.strokeDashoffset=s,r.setStyle({opacity:0})));h._ignoreMove=!1,setTimeout(function(){var e=0;for(i=d.length-1;0<=i;i--)(t=d[i])._spiderLeg&&e++;for(i=d.length-1;0<=i;i--)(t=d[i])._spiderLeg&&(t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),1<e&&u.removeLayer(t),l.removeLayer(t._spiderLeg),delete t._spiderLeg);h._animationEnd(),h.fire("unspiderfied",{cluster:a,markers:d})},200)}}),L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._map.off("zoomend",this._noanimationUnspiderfy,this),this._noanimationUnspiderfy()},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(e){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(e))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(e){this._spiderfied&&this._spiderfied.unspiderfy(e)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(e){e._spiderLeg&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow(),e.setZIndexOffset&&e.setZIndexOffset(0),this._map.removeLayer(e._spiderLeg),delete e._spiderLeg)}}),L.MarkerClusterGroup.include({refreshClusters:function(e){return e?e instanceof L.MarkerClusterGroup?e=e._topClusterLevel.getAllChildMarkers():e instanceof L.LayerGroup?e=e._layers:e instanceof L.MarkerCluster?e=e.getAllChildMarkers():e instanceof L.Marker&&(e=[e]):e=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(e),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(e),this},_flagParentsIconsNeedUpdate:function(e){var t,i;for(t in e)for(i=e[t].__parent;i;)i._iconNeedsUpdate=!0,i=i.__parent},_refreshSingleMarkerModeMarkers:function(e){var t,i;for(t in e)i=e[t],this.hasLayer(i)&&i.setIcon(this._overrideMarkerIcon(i))}}),L.Marker.include({refreshIconOptions:function(e,t){var i=this.options.icon;return L.setOptions(i,e),this.setIcon(i),t&&this.__parent&&this.__parent._group.refreshClusters(this),this}}),e.MarkerClusterGroup=t,e.MarkerCluster=i,Object.defineProperty(e,"__esModule",{value:!0})});
|
2
|
+
//# sourceMappingURL=leaflet.markercluster.js.map
|
package/plugins/tiddlywiki/geospatial/files/leaflet.markercluster/leaflet.markercluster.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../src/MarkerClusterGroup.js","../src/MarkerCluster.js","../src/MarkerOpacity.js","../src/DistanceGrid.js","../src/MarkerCluster.QuickHull.js","../src/MarkerCluster.Spiderfier.js","../src/MarkerClusterGroup.Refresh.js"],"names":["MarkerClusterGroup","L","FeatureGroup","extend","options","maxClusterRadius","iconCreateFunction","clusterPane","Marker","prototype","pane","spiderfyOnEveryZoom","spiderfyOnMaxZoom","showCoverageOnHover","zoomToBoundsOnClick","singleMarkerMode","disableClusteringAtZoom","removeOutsideVisibleBounds","animate","animateAddingMarkers","spiderfyShapePositions","spiderfyDistanceMultiplier","spiderLegPolylineOptions","weight","color","opacity","chunkedLoading","chunkInterval","chunkDelay","chunkProgress","polygonOptions","initialize","Util","setOptions","this","_defaultIconCreateFunction","_featureGroup","featureGroup","addEventParent","_nonPointGroup","_inZoomAnimation","_needsClustering","_needsRemoving","_currentShownBounds","_queue","_childMarkerEventHandlers","dragstart","_childMarkerDragStart","move","_childMarkerMoved","dragend","_childMarkerDragEnd","DomUtil","TRANSITION","_withAnimation","_noAnimation","_markerCluster","MarkerCluster","MarkerClusterNonAnimated","addLayer","layer","LayerGroup","addLayers","getLatLng","fire","_map","push","hasLayer","_unspiderfy","_addLayer","_maxZoom","_topClusterLevel","_recalculateBounds","_refreshClustersIcons","visibleLayer","currentZoom","_zoom","__parent","contains","_animationAddLayer","_animationAddLayerNonAnimated","removeLayer","removeLayers","_unspiderfyLayer","_removeLayer","off","clusterShow","_arraySplice","latlng","_latlng","layersArray","skipLayerAddEvent","isArray","m","fg","npg","chunked","l","length","offset","originalArray","started","Date","getTime","process","bind","start","elapsed","slice","_extractNonGroupLayers","getChildCount","markers","getAllChildMarkers","otherMarker","_recursivelyAddChildrenToMap","setTimeout","needsClustering","i","layersArray2","l2","clearLayers","_gridClusters","_gridUnclustered","_noanimationUnspiderfy","eachLayer","marker","_generateInitialClusters","getBounds","bounds","LatLngBounds","_bounds","method","context","thisNeedsRemoving","j","needsRemoving","call","getLayers","layers","getLayer","id","result","parseInt","stamp","anArray","_group","zoomToShowLayer","callback","map","showMarker","_icon","once","spiderfy","Math","round","on","panTo","zoomToBounds","onAdd","isFinite","getMaxZoom","addTo","_maxLat","crs","projection","MAX_LATITUDE","newlatlng","_getExpandedVisibleBounds","_zoomEnd","_moveEnd","_spiderfierOnAdd","_bindEvents","onRemove","_unbindEvents","_mapPane","className","replace","_spiderfierOnRemove","_hideCoverage","remove","getVisibleParent","vMarker","obj","splice","_removeFromGridUnclustered","z","gridUnclustered","minZoom","floor","getMinZoom","removeObject","project","e","target","__dragStart","_ignoreMove","isPopupOpen","_popup","isOpen","_moveChild","oldLatLng","openPopup","from","to","dragStart","removeFromDistanceGrid","dontUpdateMap","gridClusters","cluster","_markers","_childCount","_boundsNeedUpdate","_cLatLng","addObject","_childClusters","_iconNeedsUpdate","_isOrIsParent","el","oel","parentNode","type","data","propagate","originalEvent","relatedTarget","listens","childCount","c","DivIcon","html","iconSize","Point","_zoomOrSpiderfy","_showCoverage","bottomCluster","keyCode","_container","focus","_shownPolygon","_spiderfied","Polygon","getConvexHull","_mergeSplitClusters","newBounds","_recursivelyRemoveChildrenFromMap","maxZoom","ceil","radius","radiusFn","zoom","DistanceGrid","markerPoint","_overrideMarkerIcon","closest","getNearObject","_addChild","parent","newCluster","lastParent","_updateIcon","_enqueue","fn","_queueTimeout","_processQueue","clearTimeout","mapZoom","intersects","_animationStart","_animationZoomIn","_animationZoomOut","Browser","mobile","_checkBoundsMaxLat","pad","_mapBoundsInfinite","maxLat","undefined","getNorth","_northEast","lat","Infinity","getSouth","_southWest","_addToMap","group","output","icon","include","LatLng","previousZoomLevel","newZoomLevel","_recursively","startPos","_isSingleParent","clusterHide","_forceLayout","_recursivelyBecomeVisible","n","_recursivelyRestoreChildPositions","_animationEnd","_animationZoomOutSingle","me","_setPos","latLngToLayerPoint","_recursivelyAnimateChildrenInAndAddSelfToMap","setLatLng","falseFn","document","body","offsetWidth","markerClusterGroup","Icon","a","b","storageArray","ignoreDraggedMarker","fitBoundsOptions","childClusters","boundsZoom","getBoundsZoom","getZoom","newClusters","concat","setView","fitBounds","setIcon","createIcon","_iconObj","createShadow","new1","isNotificationFromChild","_setClusterCenter","child","_resetBounds","lng","childLatLng","latSum","lngSum","totalCount","_wLatLng","_backupLatlng","_recursivelyAnimateChildrenIn","center","cm","mapMinZoom","zoomLevel","nm","_restorePosition","k","previousBounds","exceptBounds","boundsToApplyTo","zoomLevelToStart","zoomLevelToStop","runAtEveryLevel","runAtBottomLevel","backup","setOpacity","cellSize","_cellSize","_sqCellSize","_grid","_objectPoint","point","x","_getCoord","y","grid","row","cell","updateObject","len","eachObject","dist","objectPoint","closestDistSq","_sqDist","coord","p","p2","dx","dy","QuickHull","getDistant","cpt","bl","vY","findMostDistantPointFromBaseLine","baseLine","latLngs","pt","d","maxD","maxPt","newPoints","maxPoint","buildConvexHull","convexHullBaseLines","t","minLat","maxLng","minLng","maxLatPt","minLatPt","maxLngPt","minLngPt","minPt","childMarkers","points","_2PI","PI","_circleFootSeparation","_circleStartAngle","_spiralFootSeparation","_spiralLengthStart","_spiralLengthFactor","_circleSpiralSwitchover","positions","_generatePointsSpiral","_generatePointsCircle","_animationSpiderfy","unspiderfy","zoomDetails","_animationUnspiderfy","count","centerPt","angle","legLength","angleStep","res","max","cos","sin","_round","separation","lengthFactor","_preSpiderfyLatlng","setZIndexOffset","_spiderLeg","leg","newPos","legOptions","layerPointToLatLng","Polyline","legPath","thisLayerLatLng","thisLayerPos","svg","Path","SVG","finalLegOpacity","_path","getTotalLength","style","strokeDasharray","strokeDashoffset","setStyle","nonAnimatable","_latLngToNewLayerPoint","closePopup","stillThereChildCount","apply","arguments","_unspiderfyWrapper","zoomAnimation","_unspiderfyZoomStart","touch","getRenderer","_unspiderfyZoomAnim","hasClass","refreshClusters","_layers","_flagParentsIconsNeedUpdate","_refreshSingleMarkerModeMarkers","refreshIconOptions","directlyRefreshClusters"],"mappings":"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","file":"dist/leaflet.markercluster.js.map"}
|