From d2e08b63bd0d3644d56528e3c19a03b6a1916f1a Mon Sep 17 00:00:00 2001 From: Samuel Hassine Date: Tue, 14 May 2024 15:53:02 +0100 Subject: [PATCH] Deployed cd757a0 to 1.0.X with MkDocs 1.6.0 and mike 2.2.0.dev0 --- 1.0.X/404.html | 2896 +++++++ 1.0.X/administration/enterprise/index.html | 3297 ++++++++ 1.0.X/administration/introduction/index.html | 3109 ++++++++ 1.0.X/administration/parameters/index.html | 3126 ++++++++ 1.0.X/administration/policies/index.html | 3143 ++++++++ 1.0.X/administration/users/index.html | 3143 ++++++++ 1.0.X/assets/css/custom.css | 136 + 1.0.X/assets/images/favicon.png | Bin 0 -> 3351 bytes .../assets/javascripts/bundle.13690f9d.min.js | 3 + 1.0.X/assets/javascripts/glightbox.min.js | 1 + .../javascripts/lunr/min/lunr.ar.min.js | 1 + .../javascripts/lunr/min/lunr.da.min.js | 18 + .../javascripts/lunr/min/lunr.de.min.js | 18 + .../javascripts/lunr/min/lunr.du.min.js | 18 + .../javascripts/lunr/min/lunr.el.min.js | 1 + .../javascripts/lunr/min/lunr.es.min.js | 18 + .../javascripts/lunr/min/lunr.fi.min.js | 18 + .../javascripts/lunr/min/lunr.fr.min.js | 18 + .../javascripts/lunr/min/lunr.he.min.js | 1 + .../javascripts/lunr/min/lunr.hi.min.js | 1 + .../javascripts/lunr/min/lunr.hu.min.js | 18 + .../javascripts/lunr/min/lunr.hy.min.js | 1 + .../javascripts/lunr/min/lunr.it.min.js | 18 + .../javascripts/lunr/min/lunr.ja.min.js | 1 + .../javascripts/lunr/min/lunr.jp.min.js | 1 + .../javascripts/lunr/min/lunr.kn.min.js | 1 + .../javascripts/lunr/min/lunr.ko.min.js | 1 + .../javascripts/lunr/min/lunr.multi.min.js | 1 + .../javascripts/lunr/min/lunr.nl.min.js | 18 + .../javascripts/lunr/min/lunr.no.min.js | 18 + .../javascripts/lunr/min/lunr.pt.min.js | 18 + .../javascripts/lunr/min/lunr.ro.min.js | 18 + .../javascripts/lunr/min/lunr.ru.min.js | 18 + .../javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + .../javascripts/lunr/min/lunr.sv.min.js | 18 + .../javascripts/lunr/min/lunr.ta.min.js | 1 + .../javascripts/lunr/min/lunr.te.min.js | 1 + .../javascripts/lunr/min/lunr.th.min.js | 1 + .../javascripts/lunr/min/lunr.tr.min.js | 18 + .../javascripts/lunr/min/lunr.vi.min.js | 1 + .../javascripts/lunr/min/lunr.zh.min.js | 1 + 1.0.X/assets/javascripts/lunr/tinyseg.js | 206 + 1.0.X/assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.1e90e0fb.min.js | 2 + 1.0.X/assets/logo.png | Bin 0 -> 6919 bytes 1.0.X/assets/stylesheets/glightbox.min.css | 1 + .../assets/stylesheets/main.46e89654.min.css | 1 + .../stylesheets/palette.ab4e12ef.min.css | 1 + 1.0.X/css/timeago.css | 15 + 1.0.X/deployment/assets/openbas_stack.png | 0 1.0.X/deployment/authentication/index.html | 3477 +++++++++ 1.0.X/deployment/clustering/index.html | 3135 ++++++++ 1.0.X/deployment/collectors/index.html | 3107 ++++++++ 1.0.X/deployment/configuration/index.html | 4253 +++++++++++ 1.0.X/deployment/injectors/index.html | 3711 +++++++++ 1.0.X/deployment/installation/index.html | 3920 ++++++++++ 1.0.X/deployment/integrations/index.html | 3135 ++++++++ 1.0.X/deployment/overview/index.html | 3470 +++++++++ 1.0.X/deployment/resources/index.html | 3135 ++++++++ 1.0.X/deployment/troubleshooting/index.html | 3135 ++++++++ 1.0.X/deployment/upgrade/index.html | 3295 ++++++++ 1.0.X/development/api-usage/index.html | 3105 ++++++++ .../development/environment_ubuntu/index.html | 3135 ++++++++ .../environment_windows/index.html | 3135 ++++++++ 1.0.X/development/injectors/index.html | 3118 ++++++++ 1.0.X/development/platform/index.html | 3118 ++++++++ 1.0.X/index.html | 3253 ++++++++ 1.0.X/js/timeago.min.js | 2 + 1.0.X/js/timeago_mkdocs_material.js | 18 + 1.0.X/search/search_index.json | 1 + 1.0.X/sitemap.xml | 278 + 1.0.X/sitemap.xml.gz | Bin 0 -> 637 bytes 1.0.X/usage/assets/Channel_update.png | Bin 0 -> 188957 bytes 1.0.X/usage/assets/assets_list.png | Bin 0 -> 67416 bytes 1.0.X/usage/assets/assetsgroup_creation.png | Bin 0 -> 68717 bytes .../usage/assets/atomic_details_overview.png | Bin 0 -> 59112 bytes 1.0.X/usage/assets/atomic_list.png | Bin 0 -> 85223 bytes .../atomic_testing_execution_details.png | Bin 0 -> 42000 bytes .../assets/caldera_inject_definition.png | Bin 0 -> 29051 bytes .../usage/assets/caldera_injector_screen.png | Bin 0 -> 134143 bytes .../channel_selection_during_creation.png | Bin 0 -> 19468 bytes .../usage/assets/email_inject_definition.png | Bin 0 -> 52638 bytes .../usage/assets/example_inject_filtering.png | Bin 0 -> 102136 bytes .../assets/expectation_edition_screen.png | Bin 0 -> 19565 bytes 1.0.X/usage/assets/index.html | 3238 ++++++++ 1.0.X/usage/assets/inject-caldera.png | Bin 0 -> 39341 bytes .../usage/assets/injects_list_in_scenario.png | Bin 0 -> 80033 bytes .../assets/install_agent_instruction.png | Bin 0 -> 75527 bytes 1.0.X/usage/assets/list_of_injectors.png | Bin 0 -> 80821 bytes .../usage/assets/simulation_agents_screen.png | Bin 0 -> 43163 bytes 1.0.X/usage/assets/variables-management.png | Bin 0 -> 47989 bytes 1.0.X/usage/assets/variables-usage.png | Bin 0 -> 76910 bytes 1.0.X/usage/atomic/index.html | 3304 ++++++++ 1.0.X/usage/challenges/index.html | 3143 ++++++++ 1.0.X/usage/channels/index.html | 3243 ++++++++ 1.0.X/usage/collector-caldera/index.html | 3329 ++++++++ 1.0.X/usage/collectors/index.html | 3126 ++++++++ 1.0.X/usage/components/index.html | 3014 ++++++++ 1.0.X/usage/documents/index.html | 3143 ++++++++ 1.0.X/usage/expectations/index.html | 3354 +++++++++ 1.0.X/usage/exports/index.html | 3126 ++++++++ 1.0.X/usage/getting-started/index.html | 3361 +++++++++ 1.0.X/usage/inject-caldera/index.html | 3299 ++++++++ 1.0.X/usage/injectors/index.html | 3233 ++++++++ 1.0.X/usage/injects/index.html | 3555 +++++++++ .../usage/injects_and_expectations/index.html | 3225 ++++++++ 1.0.X/usage/injects_builtin/index.html | 3126 ++++++++ 1.0.X/usage/media_pressure/index.html | 3251 ++++++++ 1.0.X/usage/mitigations/index.html | 3126 ++++++++ 1.0.X/usage/opencti_scenario/index.html | 3129 ++++++++ 1.0.X/usage/overview/index.html | 3126 ++++++++ 1.0.X/usage/payloads/index.html | 3143 ++++++++ 1.0.X/usage/personas/index.html | 3143 ++++++++ 1.0.X/usage/playing/index.html | 3014 ++++++++ 1.0.X/usage/reports/index.html | 3126 ++++++++ 1.0.X/usage/scenario/index.html | 3308 ++++++++ .../scenarios_and_simulations/index.html | 3221 ++++++++ 1.0.X/usage/simulation/index.html | 3314 ++++++++ 1.0.X/usage/skills/index.html | 3126 ++++++++ 1.0.X/usage/systems/index.html | 3014 ++++++++ 1.0.X/usage/targets/index.html | 3225 ++++++++ .../index.html | 3268 ++++++++ 1.0.X/usage/testing/index.html | 3014 ++++++++ 1.0.X/usage/variables/index.html | 3309 ++++++++ latest | 1 + versions.json | 10 +- 127 files changed, 188697 insertions(+), 1 deletion(-) create mode 100755 1.0.X/404.html create mode 100755 1.0.X/administration/enterprise/index.html create mode 100755 1.0.X/administration/introduction/index.html create mode 100755 1.0.X/administration/parameters/index.html create mode 100755 1.0.X/administration/policies/index.html create mode 100755 1.0.X/administration/users/index.html create mode 100755 1.0.X/assets/css/custom.css create mode 100755 1.0.X/assets/images/favicon.png create mode 100755 1.0.X/assets/javascripts/bundle.13690f9d.min.js create mode 100755 1.0.X/assets/javascripts/glightbox.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ar.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.da.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.de.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.du.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.el.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.es.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.fi.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.fr.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.he.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.hi.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.hu.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.hy.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.it.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ja.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.jp.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.kn.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ko.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.multi.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.nl.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.no.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.pt.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ro.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ru.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.sa.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.sv.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.ta.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.te.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.th.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.tr.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.vi.min.js create mode 100755 1.0.X/assets/javascripts/lunr/min/lunr.zh.min.js create mode 100755 1.0.X/assets/javascripts/lunr/tinyseg.js create mode 100755 1.0.X/assets/javascripts/lunr/wordcut.js create mode 100755 1.0.X/assets/javascripts/workers/search.1e90e0fb.min.js create mode 100755 1.0.X/assets/logo.png create mode 100755 1.0.X/assets/stylesheets/glightbox.min.css create mode 100755 1.0.X/assets/stylesheets/main.46e89654.min.css create mode 100755 1.0.X/assets/stylesheets/palette.ab4e12ef.min.css create mode 100755 1.0.X/css/timeago.css create mode 100755 1.0.X/deployment/assets/openbas_stack.png create mode 100755 1.0.X/deployment/authentication/index.html create mode 100755 1.0.X/deployment/clustering/index.html create mode 100755 1.0.X/deployment/collectors/index.html create mode 100755 1.0.X/deployment/configuration/index.html create mode 100755 1.0.X/deployment/injectors/index.html create mode 100755 1.0.X/deployment/installation/index.html create mode 100755 1.0.X/deployment/integrations/index.html create mode 100755 1.0.X/deployment/overview/index.html create mode 100755 1.0.X/deployment/resources/index.html create mode 100755 1.0.X/deployment/troubleshooting/index.html create mode 100755 1.0.X/deployment/upgrade/index.html create mode 100755 1.0.X/development/api-usage/index.html create mode 100755 1.0.X/development/environment_ubuntu/index.html create mode 100755 1.0.X/development/environment_windows/index.html create mode 100755 1.0.X/development/injectors/index.html create mode 100755 1.0.X/development/platform/index.html create mode 100755 1.0.X/index.html create mode 100755 1.0.X/js/timeago.min.js create mode 100755 1.0.X/js/timeago_mkdocs_material.js create mode 100755 1.0.X/search/search_index.json create mode 100755 1.0.X/sitemap.xml create mode 100755 1.0.X/sitemap.xml.gz create mode 100755 1.0.X/usage/assets/Channel_update.png create mode 100755 1.0.X/usage/assets/assets_list.png create mode 100755 1.0.X/usage/assets/assetsgroup_creation.png create mode 100755 1.0.X/usage/assets/atomic_details_overview.png create mode 100755 1.0.X/usage/assets/atomic_list.png create mode 100755 1.0.X/usage/assets/atomic_testing_execution_details.png create mode 100755 1.0.X/usage/assets/caldera_inject_definition.png create mode 100755 1.0.X/usage/assets/caldera_injector_screen.png create mode 100755 1.0.X/usage/assets/channel_selection_during_creation.png create mode 100755 1.0.X/usage/assets/email_inject_definition.png create mode 100755 1.0.X/usage/assets/example_inject_filtering.png create mode 100755 1.0.X/usage/assets/expectation_edition_screen.png create mode 100755 1.0.X/usage/assets/index.html create mode 100755 1.0.X/usage/assets/inject-caldera.png create mode 100755 1.0.X/usage/assets/injects_list_in_scenario.png create mode 100755 1.0.X/usage/assets/install_agent_instruction.png create mode 100755 1.0.X/usage/assets/list_of_injectors.png create mode 100755 1.0.X/usage/assets/simulation_agents_screen.png create mode 100755 1.0.X/usage/assets/variables-management.png create mode 100755 1.0.X/usage/assets/variables-usage.png create mode 100755 1.0.X/usage/atomic/index.html create mode 100755 1.0.X/usage/challenges/index.html create mode 100755 1.0.X/usage/channels/index.html create mode 100755 1.0.X/usage/collector-caldera/index.html create mode 100755 1.0.X/usage/collectors/index.html create mode 100755 1.0.X/usage/components/index.html create mode 100755 1.0.X/usage/documents/index.html create mode 100755 1.0.X/usage/expectations/index.html create mode 100755 1.0.X/usage/exports/index.html create mode 100755 1.0.X/usage/getting-started/index.html create mode 100755 1.0.X/usage/inject-caldera/index.html create mode 100755 1.0.X/usage/injectors/index.html create mode 100755 1.0.X/usage/injects/index.html create mode 100755 1.0.X/usage/injects_and_expectations/index.html create mode 100755 1.0.X/usage/injects_builtin/index.html create mode 100755 1.0.X/usage/media_pressure/index.html create mode 100755 1.0.X/usage/mitigations/index.html create mode 100755 1.0.X/usage/opencti_scenario/index.html create mode 100755 1.0.X/usage/overview/index.html create mode 100755 1.0.X/usage/payloads/index.html create mode 100755 1.0.X/usage/personas/index.html create mode 100755 1.0.X/usage/playing/index.html create mode 100755 1.0.X/usage/reports/index.html create mode 100755 1.0.X/usage/scenario/index.html create mode 100755 1.0.X/usage/scenarios_and_simulations/index.html create mode 100755 1.0.X/usage/simulation/index.html create mode 100755 1.0.X/usage/skills/index.html create mode 100755 1.0.X/usage/systems/index.html create mode 100755 1.0.X/usage/targets/index.html create mode 100755 1.0.X/usage/teams_and_players_and_organizations/index.html create mode 100755 1.0.X/usage/testing/index.html create mode 100755 1.0.X/usage/variables/index.html create mode 120000 latest diff --git a/1.0.X/404.html b/1.0.X/404.html new file mode 100755 index 0000000..a17fda1 --- /dev/null +++ b/1.0.X/404.html @@ -0,0 +1,2896 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ +

404 - Not found

+ +
+
+ + + +
+ +
+ +
+ + + + +
+ +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/administration/enterprise/index.html b/1.0.X/administration/enterprise/index.html new file mode 100755 index 0000000..db8d22b --- /dev/null +++ b/1.0.X/administration/enterprise/index.html @@ -0,0 +1,3297 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Enterprise edition - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Enterprise edition

+ +
+

Filigran

+

Filigran is providing an Enterprise Edition of the platform, whether on-premise or in the SaaS.

+
+

What is OpenBAS EE?

+

OpenBAS Enterprise Edition is based on the open core concept. This means that the source code of OCTI EE remains open source and included in the main GitHub repository of the platform but is published under a specific license. As specified in the GitHub license file:

+
    +
  • The OpenBAS Community Edition is licensed under the Apache License, Version 2.0 (the “Apache License”).
  • +
  • The OpenBAS Enterprise Edition is licensed under the OpenBAS Enterprise Edition License (the “Enterprise Edition Licensee”).
  • +
+

The source files in this repository have a header indicating which license they are under. If no such header is provided, this means that the file belongs to the Community Edition under the Apache License, Version 2.0.

+

EE Activation

+

Enterprise edition is easy to activate. You need to go the platform settings and click on the Activate button.

+

OpenBAS activation

+

Then you will need to agree to the Filigran EULA.

+

OpenBAS EE EULA

+

As a reminder:

+
    +
  • OpenBAS EE is free-to-use for development, testing and research purposes as well as for non-profit organizations.
  • +
  • OpenBAS EE is included for all Filigran SaaS customers without additional fee.
  • +
  • For all other usages, OpenBAS EE is reserved to organizations that have signed a Filigran Enterprise agreement.
  • +
+

Available features

+

Generative AI

+

Be able to use AI for content generation including emails, media pressure articles etc.

+

More to come

+

More features will be available in OpenBAS in the future. Features like:

+
    +
  • Security posture automatic evalution.
  • +
  • Premium mitigations and recommendation for configuration changes.
  • +
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/administration/introduction/index.html b/1.0.X/administration/introduction/index.html new file mode 100755 index 0000000..2f4c3fa --- /dev/null +++ b/1.0.X/administration/introduction/index.html @@ -0,0 +1,3109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Introduction - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Introduction

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/administration/parameters/index.html b/1.0.X/administration/parameters/index.html new file mode 100755 index 0000000..2fccb76 --- /dev/null +++ b/1.0.X/administration/parameters/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Parameters - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Parameters

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/administration/policies/index.html b/1.0.X/administration/policies/index.html new file mode 100755 index 0000000..8a77d97 --- /dev/null +++ b/1.0.X/administration/policies/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Policies - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Policies

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/administration/users/index.html b/1.0.X/administration/users/index.html new file mode 100755 index 0000000..a6652af --- /dev/null +++ b/1.0.X/administration/users/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Users and RBAC - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + Skip to content + + +
+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Users and RBAC

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/assets/css/custom.css b/1.0.X/assets/css/custom.css new file mode 100755 index 0000000..1d20235 --- /dev/null +++ b/1.0.X/assets/css/custom.css @@ -0,0 +1,136 @@ +/* Color scheme */ + +[data-md-color-scheme="filigran"] { + /* Primary color shades */ + --md-primary-fg-color: #; + --md-primary-fg-color--light: #; + --md-primary-fg-color--dark: #; + --md-primary-bg-color: #; + --md-primary-bg-color--light: #; + + /* Accent color shades */ + --md-accent-fg-color: #1bb6ff; + --md-accent-fg-color--transparent: #; + --md-accent-bg-color: #; + --md-accent-bg-color--light: #; + + /* Default color shades */ + --md-default-fg-color: #00b1ff; + --md-default-fg-color--light: #697a94; + --md-default-fg-color--lighter: #3d4e66; + --md-default-fg-color--lightest: #03305d; + --md-default-bg-color: #070d19; + --md-default-bg-color--light: #0f1e38; + --md-default-bg-color--lighter: #152849; + --md-default-bg-color--lightest: #09101e; + + /* Code color shades */ + --md-code-fg-color: #ffffff; + --md-code-fg-color--light: #1bb6ff; + --md-code-bg-color: #001e3c; + --md-code-bg-color--light: #001e3c; + --md-code-bg-color--lighter: #001e3c; + + /* Code highlighting color shades */ + --md-code-hl-operator-color: #9ccc65; + --md-code-hl-punctuation-color: #cddc39; + --md-code-hl-comment-color: #3d4e66; + --md-code-hl-variable-color: #9ccc65; + --md-code-hl-name-color: #ffb300; + + /* Typeset color shades */ + --md-typeset-color: #ffffff; + + /* Typeset `a` color shades */ + --md-typeset-a-color: #0fbcff; + + /* Typeset `mark` color shades */ + --md-typeset-mark-color: #; + + /* Typeset `del` and `ins` color shades */ + --md-typeset-del-color: #; + --md-typeset-ins-color: #; + + /* Typeset `kbd` color shades */ + --md-typeset-kbd-color: #; + --md-typeset-kbd-accent-color: #; + --md-typeset-kbd-border-color: #; + + /* Typeset `table` color shades */ + --md-typeset-table-color: #0082d1; + --md-typeset-table-color--light: #051629; + + /* Admonition color shades */ + --md-admonition-fg-color: #ffffff; + --md-admonition-bg-color: var(--md-default-bg-color); + + /* Warning color shades */ + --md-warning-fg-color: #; + --md-warning-bg-color: #; + + /* Footer color shades */ + --md-footer-fg-color: #; + --md-footer-fg-color--light: #; + --md-footer-fg-color--lighter: #; + --md-footer-bg-color: #011222; + --md-footer-bg-color--dark: #09101e; +} + +/* Header */ +.md-header, .md-tabs { + background-color: #09101e !important; +} + +/* Cards */ +.md-typeset .grid.cards>ol>li,.md-typeset .grid.cards>ul>li,.md-typeset .grid>.card { + border: none !important; + background-color: #001e3c !important; + border-radius: 10px; +} + +.md-typeset .grid.cards>ol>li:focus-within,.md-typeset .grid.cards>ol>li:hover,.md-typeset .grid.cards>ul>li:focus-within,.md-typeset .grid.cards>ul>li:hover,.md-typeset .grid>.card:focus-within,.md-typeset .grid>.card:hover { + border: none !important; + background-color: #001e3c !important; + border-radius: 10px; +} + +html .md-footer-meta.md-typeset a:focus,html .md-footer-meta.md-typeset a:hover { + color: #0fbcff !important; +} + +.middle { + margin: -5px 5px 0 0 !important; +} + +.md-header__button.md-logo img,.md-header__button.md-logo svg { + height: 1.5rem; +} + +.grid { + column-gap: 0.8rem !important; +} + +.md-typeset__table { + min-width: 100%; +} + +.md-typeset table:not([class]) { + display: table; +} + +.md-typeset__table td, th { + white-space: nowrap; +} + + +/* Works on Chrome, Edge, and Safari */ +html, body { + scrollbar-color: #070d19 #0f1e38; + scrollbarWidth: thin; + WebkitFontSmoothing: auto; +} + +.glightbox img { + border: 1px solid #273d5f; + border-radius: 4.8px; +} \ No newline at end of file diff --git a/1.0.X/assets/images/favicon.png b/1.0.X/assets/images/favicon.png new file mode 100755 index 0000000000000000000000000000000000000000..1a8522a41ca08d884b31975bcc1b200c9af6fa08 GIT binary patch literal 3351 zcmeHJ2~$&76n=>UK|oMJkkz`>ju=R5A!P}x2B{hfvJ}Ij&>;{sC@F~q5NB}NMe^#H*5M&J(L&|@(0S;r|k)$ZZ6WNsAx z`jo_f_hm`;fffmV{N_+Y!4*pZ;=Z@ft2X9EqYZwh_VpFD`Q00?A<9>iAAR<7=K?CQ zOj~;4!cmIZHoD~A)v`TQ)iELSY}c*9{>hRt&5YJnG1bd}0hw410C)wg2LRts_+Sny zqlKaF>2V~~j9OerS5HizwXQMsepb&Lyc=E9al?)3{CyED z(A=|dIUIGX{|l=VZFO{);sJVAmFU7CYp^A)YQO^FdD$}#0FL`CE&TWZ_V!%~dv^s@ zF<;y!m)8Y;-y^Hfe~Y!l$m`zT#ll85n`M{MGhgEbS`p|@PoSf0TnwE((GfunX^I*) zCM3uqqc(e5RrnE`1$@5SEj^BvK(JOX@CZh~e=805;8L#cb2Pxakoev+{9L;3v1E3N zy!y2L>uyyDXQk&?i=YRsDcb1WIkn=iQ)+?bSn@BFtcv^j8DwW3pAHp|NsVk$c6+YR zfXRgj>LR$F;5iaN76pKP36H zEgX}PS^c1{50sTBd!&u0QX5kaNj5cjO4pG_o)P)K&GLxnS%W=wGnUP{pzR^$mOj1M z&6D)TNG86_t#wZs*3PTXd9Fy}56&wmBd+(8j9W|kWVrJVF}s|jCZwCTAzcd&9#Oo= z)J||mt!vsF7N=g^wlVN#jHK=rKVC!5Jwg22V<~61^x)|q`KiraWti8jP$Y4djvus!oRINdvuzW`Zl!UfWB$#3$ zj2V@}m+mtGj~hI>0MgEz*W0^#nRWiHDSl!E%e*30UR( z4CQnwB}epzr8J&X)cFCQM4nCBP-%EW%9|AjLZ$XgtMMPArJYVq9gM~KRP}rqn)KRS zBT`gS?9#97E3k){hEk*HhuWJaXcLV!rv-soO_4L?V#RG6J=E45AzgFNVVgM+dw2kv z;+9fL{rE#Q@v_1Axoqvg2ch1vqlBe<)F@f#vfbO*0skQ%Y7hZ&Q}V9^9vJG}B&e>%RYGQfxhtn+?&eaf{t0EGwz)2#X1}(A%S?~&YgN!9xZp=)ZmO4 t2(K3FoCXANtMUM2z{d>n3ICRZIa6d=yz4Tbqt5|o1@6S{VEG+5{x`bfjEVpN literal 0 HcmV?d00001 diff --git a/1.0.X/assets/javascripts/bundle.13690f9d.min.js b/1.0.X/assets/javascripts/bundle.13690f9d.min.js new file mode 100755 index 0000000..3221c5e --- /dev/null +++ b/1.0.X/assets/javascripts/bundle.13690f9d.min.js @@ -0,0 +1,3 @@ +"use strict";(()=>{var Bi=Object.create;var _r=Object.defineProperty;var Gi=Object.getOwnPropertyDescriptor;var Ji=Object.getOwnPropertyNames,Bt=Object.getOwnPropertySymbols,Xi=Object.getPrototypeOf,Ar=Object.prototype.hasOwnProperty,uo=Object.prototype.propertyIsEnumerable;var fo=(e,t,r)=>t in e?_r(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,j=(e,t)=>{for(var r in t||(t={}))Ar.call(t,r)&&fo(e,r,t[r]);if(Bt)for(var r of Bt(t))uo.call(t,r)&&fo(e,r,t[r]);return e};var ho=(e,t)=>{var r={};for(var o in e)Ar.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Bt)for(var o of Bt(e))t.indexOf(o)<0&&uo.call(e,o)&&(r[o]=e[o]);return r};var Cr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Zi=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Ji(t))!Ar.call(e,n)&&n!==r&&_r(e,n,{get:()=>t[n],enumerable:!(o=Gi(t,n))||o.enumerable});return e};var Gt=(e,t,r)=>(r=e!=null?Bi(Xi(e)):{},Zi(t||!e||!e.__esModule?_r(r,"default",{value:e,enumerable:!0}):r,e));var bo=(e,t,r)=>new Promise((o,n)=>{var i=c=>{try{a(r.next(c))}catch(p){n(p)}},s=c=>{try{a(r.throw(c))}catch(p){n(p)}},a=c=>c.done?o(c.value):Promise.resolve(c.value).then(i,s);a((r=r.apply(e,t)).next())});var go=Cr((Hr,vo)=>{(function(e,t){typeof Hr=="object"&&typeof vo!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(Hr,function(){"use strict";function e(r){var o=!0,n=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(H){return!!(H&&H!==document&&H.nodeName!=="HTML"&&H.nodeName!=="BODY"&&"classList"in H&&"contains"in H.classList)}function c(H){var ft=H.type,Fe=H.tagName;return!!(Fe==="INPUT"&&s[ft]&&!H.readOnly||Fe==="TEXTAREA"&&!H.readOnly||H.isContentEditable)}function p(H){H.classList.contains("focus-visible")||(H.classList.add("focus-visible"),H.setAttribute("data-focus-visible-added",""))}function l(H){H.hasAttribute("data-focus-visible-added")&&(H.classList.remove("focus-visible"),H.removeAttribute("data-focus-visible-added"))}function f(H){H.metaKey||H.altKey||H.ctrlKey||(a(r.activeElement)&&p(r.activeElement),o=!0)}function u(H){o=!1}function d(H){a(H.target)&&(o||c(H.target))&&p(H.target)}function g(H){a(H.target)&&(H.target.classList.contains("focus-visible")||H.target.hasAttribute("data-focus-visible-added"))&&(n=!0,window.clearTimeout(i),i=window.setTimeout(function(){n=!1},100),l(H.target))}function L(H){document.visibilityState==="hidden"&&(n&&(o=!0),ee())}function ee(){document.addEventListener("mousemove",Z),document.addEventListener("mousedown",Z),document.addEventListener("mouseup",Z),document.addEventListener("pointermove",Z),document.addEventListener("pointerdown",Z),document.addEventListener("pointerup",Z),document.addEventListener("touchmove",Z),document.addEventListener("touchstart",Z),document.addEventListener("touchend",Z)}function ne(){document.removeEventListener("mousemove",Z),document.removeEventListener("mousedown",Z),document.removeEventListener("mouseup",Z),document.removeEventListener("pointermove",Z),document.removeEventListener("pointerdown",Z),document.removeEventListener("pointerup",Z),document.removeEventListener("touchmove",Z),document.removeEventListener("touchstart",Z),document.removeEventListener("touchend",Z)}function Z(H){H.target.nodeName&&H.target.nodeName.toLowerCase()==="html"||(o=!1,ne())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",L,!0),ee(),r.addEventListener("focus",d,!0),r.addEventListener("blur",g,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var io=Cr((Vt,no)=>{(function(t,r){typeof Vt=="object"&&typeof no=="object"?no.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Vt=="object"?Vt.ClipboardJS=r():t.ClipboardJS=r()})(Vt,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return Yi}});var s=i(279),a=i.n(s),c=i(370),p=i.n(c),l=i(817),f=i.n(l);function u(z){try{return document.execCommand(z)}catch(C){return!1}}var d=function(C){var _=f()(C);return u("cut"),_},g=d;function L(z){var C=document.documentElement.getAttribute("dir")==="rtl",_=document.createElement("textarea");_.style.fontSize="12pt",_.style.border="0",_.style.padding="0",_.style.margin="0",_.style.position="absolute",_.style[C?"right":"left"]="-9999px";var D=window.pageYOffset||document.documentElement.scrollTop;return _.style.top="".concat(D,"px"),_.setAttribute("readonly",""),_.value=z,_}var ee=function(C,_){var D=L(C);_.container.appendChild(D);var N=f()(D);return u("copy"),D.remove(),N},ne=function(C){var _=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},D="";return typeof C=="string"?D=ee(C,_):C instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(C==null?void 0:C.type)?D=ee(C.value,_):(D=f()(C),u("copy")),D},Z=ne;function H(z){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?H=function(_){return typeof _}:H=function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},H(z)}var ft=function(){var C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},_=C.action,D=_===void 0?"copy":_,N=C.container,G=C.target,Ue=C.text;if(D!=="copy"&&D!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(G!==void 0)if(G&&H(G)==="object"&&G.nodeType===1){if(D==="copy"&&G.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(D==="cut"&&(G.hasAttribute("readonly")||G.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Ue)return Z(Ue,{container:N});if(G)return D==="cut"?g(G):Z(G,{container:N})},Fe=ft;function R(z){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?R=function(_){return typeof _}:R=function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},R(z)}function se(z,C){if(!(z instanceof C))throw new TypeError("Cannot call a class as a function")}function ce(z,C){for(var _=0;_0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof N.action=="function"?N.action:this.defaultAction,this.target=typeof N.target=="function"?N.target:this.defaultTarget,this.text=typeof N.text=="function"?N.text:this.defaultText,this.container=R(N.container)==="object"?N.container:document.body}},{key:"listenClick",value:function(N){var G=this;this.listener=p()(N,"click",function(Ue){return G.onClick(Ue)})}},{key:"onClick",value:function(N){var G=N.delegateTarget||N.currentTarget,Ue=this.action(G)||"copy",Yt=Fe({action:Ue,container:this.container,target:this.target(G),text:this.text(G)});this.emit(Yt?"success":"error",{action:Ue,text:Yt,trigger:G,clearSelection:function(){G&&G.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(N){return Mr("action",N)}},{key:"defaultTarget",value:function(N){var G=Mr("target",N);if(G)return document.querySelector(G)}},{key:"defaultText",value:function(N){return Mr("text",N)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(N){var G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return Z(N,G)}},{key:"cut",value:function(N){return g(N)}},{key:"isSupported",value:function(){var N=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],G=typeof N=="string"?[N]:N,Ue=!!document.queryCommandSupported;return G.forEach(function(Yt){Ue=Ue&&!!document.queryCommandSupported(Yt)}),Ue}}]),_}(a()),Yi=Qi},828:function(o){var n=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,c){for(;a&&a.nodeType!==n;){if(typeof a.matches=="function"&&a.matches(c))return a;a=a.parentNode}}o.exports=s},438:function(o,n,i){var s=i(828);function a(l,f,u,d,g){var L=p.apply(this,arguments);return l.addEventListener(u,L,g),{destroy:function(){l.removeEventListener(u,L,g)}}}function c(l,f,u,d,g){return typeof l.addEventListener=="function"?a.apply(null,arguments):typeof u=="function"?a.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(L){return a(L,f,u,d,g)}))}function p(l,f,u,d){return function(g){g.delegateTarget=s(g.target,f),g.delegateTarget&&d.call(l,g)}}o.exports=c},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||n.node(i[0]))},n.string=function(i){return typeof i=="string"||i instanceof String},n.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(o,n,i){var s=i(879),a=i(438);function c(u,d,g){if(!u&&!d&&!g)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(g))throw new TypeError("Third argument must be a Function");if(s.node(u))return p(u,d,g);if(s.nodeList(u))return l(u,d,g);if(s.string(u))return f(u,d,g);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function p(u,d,g){return u.addEventListener(d,g),{destroy:function(){u.removeEventListener(d,g)}}}function l(u,d,g){return Array.prototype.forEach.call(u,function(L){L.addEventListener(d,g)}),{destroy:function(){Array.prototype.forEach.call(u,function(L){L.removeEventListener(d,g)})}}}function f(u,d,g){return a(document.body,u,d,g)}o.exports=c},817:function(o){function n(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var c=window.getSelection(),p=document.createRange();p.selectNodeContents(i),c.removeAllRanges(),c.addRange(p),s=c.toString()}return s}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,s,a){var c=this.e||(this.e={});return(c[i]||(c[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var c=this;function p(){c.off(i,p),s.apply(a,arguments)}return p._=s,this.on(i,p,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),c=0,p=a.length;for(c;c{"use strict";var fs=/["'&<>]/;di.exports=us;function us(e){var t=""+e,r=fs.exec(t);if(!r)return t;var o,n="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(p[0]===6||p[0]===2)){r=0;continue}if(p[0]===3&&(!i||p[1]>i[0]&&p[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function q(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],s;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(a){s={error:a}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(s)throw s.error}}return i}function B(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||a(u,d)})})}function a(u,d){try{c(o[u](d))}catch(g){f(i[0][3],g)}}function c(u){u.value instanceof ut?Promise.resolve(u.value.v).then(p,l):f(i[0][2],u)}function p(u){a("next",u)}function l(u){a("throw",u)}function f(u,d){u(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function Eo(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Oe=="function"?Oe(e):e[Symbol.iterator](),r={},o("next"),o("throw"),o("return"),r[Symbol.asyncIterator]=function(){return this},r);function o(i){r[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),n(a,c,s.done,s.value)})}}function n(i,s,a,c){Promise.resolve(c).then(function(p){i({value:p,done:a})},s)}}function P(e){return typeof e=="function"}function xt(e){var t=function(o){Error.call(o),o.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var Xt=xt(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(o,n){return n+1+") "+o.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Xe(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var ze=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,o,n,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Oe(s),c=a.next();!c.done;c=a.next()){var p=c.value;p.remove(this)}}catch(L){t={error:L}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var l=this.initialTeardown;if(P(l))try{l()}catch(L){i=L instanceof Xt?L.errors:[L]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=Oe(f),d=u.next();!d.done;d=u.next()){var g=d.value;try{wo(g)}catch(L){i=i!=null?i:[],L instanceof Xt?i=B(B([],q(i)),q(L.errors)):i.push(L)}}}catch(L){o={error:L}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new Xt(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)wo(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Xe(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Xe(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var $r=ze.EMPTY;function Zt(e){return e instanceof ze||e&&"closed"in e&&P(e.remove)&&P(e.add)&&P(e.unsubscribe)}function wo(e){P(e)?e():e.unsubscribe()}var We={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var yt={setTimeout:function(e,t){for(var r=[],o=2;o0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var o=this,n=this,i=n.hasError,s=n.isStopped,a=n.observers;return i||s?$r:(this.currentObservers=null,a.push(r),new ze(function(){o.currentObservers=null,Xe(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,s=o.isStopped;n?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new I;return r.source=this,r},t.create=function(r,o){return new Co(r,o)},t}(I);var Co=function(e){ie(t,e);function t(r,o){var n=e.call(this)||this;return n.destination=r,n.source=o,n}return t.prototype.next=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.next)===null||n===void 0||n.call(o,r)},t.prototype.error=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.error)===null||n===void 0||n.call(o,r)},t.prototype.complete=function(){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||o===void 0||o.call(r)},t.prototype._subscribe=function(r){var o,n;return(n=(o=this.source)===null||o===void 0?void 0:o.subscribe(r))!==null&&n!==void 0?n:$r},t}(w);var jr=function(e){ie(t,e);function t(r){var o=e.call(this)||this;return o._value=r,o}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var o=e.prototype._subscribe.call(this,r);return!o.closed&&r.next(this._value),o},t.prototype.getValue=function(){var r=this,o=r.hasError,n=r.thrownError,i=r._value;if(o)throw n;return this._throwIfClosed(),i},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(w);var Pt={now:function(){return(Pt.delegate||Date).now()},delegate:void 0};var It=function(e){ie(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=Pt);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=o,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=o===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,o),i}return t.prototype.next=function(r){var o=this,n=o.isStopped,i=o._buffer,s=o._infiniteTimeWindow,a=o._timestampProvider,c=o._windowTime;n||(i.push(r),!s&&i.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var o=this._innerSubscribe(r),n=this,i=n._infiniteTimeWindow,s=n._buffer,a=s.slice(),c=0;c0?e.prototype.schedule.call(this,r,o):(this.delay=o,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,o){return o>0||this.closed?e.prototype.execute.call(this,r,o):this._execute(r,o)},t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!=null&&n>0||n==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.flush(this),0)},t}(St);var $o=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(Ot);var Dr=new $o(ko);var Ro=function(e){ie(t,e);function t(r,o){var n=e.call(this,r,o)||this;return n.scheduler=r,n.work=o,n}return t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!==null&&n>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.actions.push(this),r._scheduled||(r._scheduled=Tt.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,o,n){var i;if(n===void 0&&(n=0),n!=null?n>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,o,n);var s=r.actions;o!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==o&&(Tt.cancelAnimationFrame(o),r._scheduled=void 0)},t}(St);var Po=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var o=this._scheduled;this._scheduled=void 0;var n=this.actions,i;r=r||n.shift();do if(i=r.execute(r.state,r.delay))break;while((r=n[0])&&r.id===o&&n.shift());if(this._active=!1,i){for(;(r=n[0])&&r.id===o&&n.shift();)r.unsubscribe();throw i}},t}(Ot);var ge=new Po(Ro);var x=new I(function(e){return e.complete()});function rr(e){return e&&P(e.schedule)}function Nr(e){return e[e.length-1]}function ct(e){return P(Nr(e))?e.pop():void 0}function Ie(e){return rr(Nr(e))?e.pop():void 0}function or(e,t){return typeof Nr(e)=="number"?e.pop():t}var Lt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function nr(e){return P(e==null?void 0:e.then)}function ir(e){return P(e[wt])}function ar(e){return Symbol.asyncIterator&&P(e==null?void 0:e[Symbol.asyncIterator])}function sr(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function ca(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var cr=ca();function pr(e){return P(e==null?void 0:e[cr])}function lr(e){return yo(this,arguments,function(){var r,o,n,i;return Jt(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,ut(r.read())];case 3:return o=s.sent(),n=o.value,i=o.done,i?[4,ut(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,ut(n)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function mr(e){return P(e==null?void 0:e.getReader)}function U(e){if(e instanceof I)return e;if(e!=null){if(ir(e))return pa(e);if(Lt(e))return la(e);if(nr(e))return ma(e);if(ar(e))return Io(e);if(pr(e))return fa(e);if(mr(e))return ua(e)}throw sr(e)}function pa(e){return new I(function(t){var r=e[wt]();if(P(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function la(e){return new I(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?v(function(n,i){return e(n,i,o)}):be,Ee(1),r?rt(t):Zo(function(){return new ur}))}}function Yr(e){return e<=0?function(){return x}:y(function(t,r){var o=[];t.subscribe(E(r,function(n){o.push(n),e=2,!0))}function le(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new w}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,c=a===void 0?!0:a;return function(p){var l,f,u,d=0,g=!1,L=!1,ee=function(){f==null||f.unsubscribe(),f=void 0},ne=function(){ee(),l=u=void 0,g=L=!1},Z=function(){var H=l;ne(),H==null||H.unsubscribe()};return y(function(H,ft){d++,!L&&!g&&ee();var Fe=u=u!=null?u:r();ft.add(function(){d--,d===0&&!L&&!g&&(f=Br(Z,c))}),Fe.subscribe(ft),!l&&d>0&&(l=new ht({next:function(R){return Fe.next(R)},error:function(R){L=!0,ee(),f=Br(ne,n,R),Fe.error(R)},complete:function(){g=!0,ee(),f=Br(ne,s),Fe.complete()}}),U(H).subscribe(l))})(p)}}function Br(e,t){for(var r=[],o=2;oe.next(document)),e}function M(e,t=document){return Array.from(t.querySelectorAll(e))}function F(e,t=document){let r=ue(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ue(e,t=document){return t.querySelector(e)||void 0}function Ve(){var e,t,r,o;return(o=(r=(t=(e=document.activeElement)==null?void 0:e.shadowRoot)==null?void 0:t.activeElement)!=null?r:document.activeElement)!=null?o:void 0}var Ha=O(h(document.body,"focusin"),h(document.body,"focusout")).pipe(Ae(1),K(void 0),m(()=>Ve()||document.body),X(1));function Ke(e){return Ha.pipe(m(t=>e.contains(t)),Y())}function nt(e,t){return k(()=>O(h(e,"mouseenter").pipe(m(()=>!0)),h(e,"mouseleave").pipe(m(()=>!1))).pipe(t?jt(r=>ke(+!r*t)):be,K(e.matches(":hover"))))}function nn(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)nn(e,r)}function S(e,t,...r){let o=document.createElement(e);if(t)for(let n of Object.keys(t))typeof t[n]!="undefined"&&(typeof t[n]!="boolean"?o.setAttribute(n,t[n]):o.setAttribute(n,""));for(let n of r)nn(o,n);return o}function br(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function At(e){let t=S("script",{src:e});return k(()=>(document.head.appendChild(t),O(h(t,"load"),h(t,"error").pipe(b(()=>Vr(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(m(()=>{}),A(()=>document.head.removeChild(t)),Ee(1))))}var an=new w,ka=k(()=>typeof ResizeObserver=="undefined"?At("https://unpkg.com/resize-observer-polyfill"):$(void 0)).pipe(m(()=>new ResizeObserver(e=>e.forEach(t=>an.next(t)))),b(e=>O(et,$(e)).pipe(A(()=>e.disconnect()))),X(1));function de(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Le(e){let t=e;for(;t.clientWidth===0&&t.parentElement;)t=t.parentElement;return ka.pipe(T(r=>r.observe(t)),b(r=>an.pipe(v(o=>o.target===t),A(()=>r.unobserve(t)))),m(()=>de(e)),K(de(e)))}function Ct(e){return{width:e.scrollWidth,height:e.scrollHeight}}function vr(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}function sn(e){let t=[],r=e.parentElement;for(;r;)(e.clientWidth>r.clientWidth||e.clientHeight>r.clientHeight)&&t.push(r),r=(e=r).parentElement;return t.length===0&&t.push(document.documentElement),t}function Qe(e){return{x:e.offsetLeft,y:e.offsetTop}}function cn(e){let t=e.getBoundingClientRect();return{x:t.x+window.scrollX,y:t.y+window.scrollY}}function pn(e){return O(h(window,"load"),h(window,"resize")).pipe($e(0,ge),m(()=>Qe(e)),K(Qe(e)))}function gr(e){return{x:e.scrollLeft,y:e.scrollTop}}function Ye(e){return O(h(e,"scroll"),h(window,"scroll"),h(window,"resize")).pipe($e(0,ge),m(()=>gr(e)),K(gr(e)))}var ln=new w,$a=k(()=>$(new IntersectionObserver(e=>{for(let t of e)ln.next(t)},{threshold:0}))).pipe(b(e=>O(et,$(e)).pipe(A(()=>e.disconnect()))),X(1));function lt(e){return $a.pipe(T(t=>t.observe(e)),b(t=>ln.pipe(v(({target:r})=>r===e),A(()=>t.unobserve(e)),m(({isIntersecting:r})=>r))))}function mn(e,t=16){return Ye(e).pipe(m(({y:r})=>{let o=de(e),n=Ct(e);return r>=n.height-o.height-t}),Y())}var xr={drawer:F("[data-md-toggle=drawer]"),search:F("[data-md-toggle=search]")};function fn(e){return xr[e].checked}function it(e,t){xr[e].checked!==t&&xr[e].click()}function Be(e){let t=xr[e];return h(t,"change").pipe(m(()=>t.checked),K(t.checked))}function Ra(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Pa(){return O(h(window,"compositionstart").pipe(m(()=>!0)),h(window,"compositionend").pipe(m(()=>!1))).pipe(K(!1))}function un(){let e=h(window,"keydown").pipe(v(t=>!(t.metaKey||t.ctrlKey)),m(t=>({mode:fn("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),v(({mode:t,type:r})=>{if(t==="global"){let o=Ve();if(typeof o!="undefined")return!Ra(o,r)}return!0}),le());return Pa().pipe(b(t=>t?x:e))}function we(){return new URL(location.href)}function at(e,t=!1){if(Q("navigation.instant")&&!t){let r=S("a",{href:e.href});document.body.appendChild(r),r.click(),r.remove()}else location.href=e.href}function dn(){return new w}function hn(){return location.hash.slice(1)}function bn(e){let t=S("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Zr(e){return O(h(window,"hashchange"),e).pipe(m(hn),K(hn()),v(t=>t.length>0),X(1))}function vn(e){return Zr(e).pipe(m(t=>ue(`[id="${t}"]`)),v(t=>typeof t!="undefined"))}function Wt(e){let t=matchMedia(e);return dr(r=>t.addListener(()=>r(t.matches))).pipe(K(t.matches))}function gn(){let e=matchMedia("print");return O(h(window,"beforeprint").pipe(m(()=>!0)),h(window,"afterprint").pipe(m(()=>!1))).pipe(K(e.matches))}function eo(e,t){return e.pipe(b(r=>r?t():x))}function to(e,t){return new I(r=>{let o=new XMLHttpRequest;return o.open("GET",`${e}`),o.responseType="blob",o.addEventListener("load",()=>{o.status>=200&&o.status<300?(r.next(o.response),r.complete()):r.error(new Error(o.statusText))}),o.addEventListener("error",()=>{r.error(new Error("Network error"))}),o.addEventListener("abort",()=>{r.complete()}),typeof(t==null?void 0:t.progress$)!="undefined"&&(o.addEventListener("progress",n=>{var i;if(n.lengthComputable)t.progress$.next(n.loaded/n.total*100);else{let s=(i=o.getResponseHeader("Content-Length"))!=null?i:0;t.progress$.next(n.loaded/+s*100)}}),t.progress$.next(5)),o.send(),()=>o.abort()})}function Ge(e,t){return to(e,t).pipe(b(r=>r.text()),m(r=>JSON.parse(r)),X(1))}function yr(e,t){let r=new DOMParser;return to(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/html")),X(1))}function xn(e,t){let r=new DOMParser;return to(e,t).pipe(b(o=>o.text()),m(o=>r.parseFromString(o,"text/xml")),X(1))}function yn(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function En(){return O(h(window,"scroll",{passive:!0}),h(window,"resize",{passive:!0})).pipe(m(yn),K(yn()))}function wn(){return{width:innerWidth,height:innerHeight}}function Tn(){return h(window,"resize",{passive:!0}).pipe(m(wn),K(wn()))}function Sn(){return V([En(),Tn()]).pipe(m(([e,t])=>({offset:e,size:t})),X(1))}function Er(e,{viewport$:t,header$:r}){let o=t.pipe(oe("size")),n=V([o,r]).pipe(m(()=>Qe(e)));return V([r,t,n]).pipe(m(([{height:i},{offset:s,size:a},{x:c,y:p}])=>({offset:{x:s.x-c,y:s.y-p+i},size:a})))}function Ia(e){return h(e,"message",t=>t.data)}function Fa(e){let t=new w;return t.subscribe(r=>e.postMessage(r)),t}function On(e,t=new Worker(e)){let r=Ia(t),o=Fa(t),n=new w;n.subscribe(o);let i=o.pipe(re(),ae(!0));return n.pipe(re(),Ne(r.pipe(W(i))),le())}var ja=F("#__config"),Ht=JSON.parse(ja.textContent);Ht.base=`${new URL(Ht.base,we())}`;function Te(){return Ht}function Q(e){return Ht.features.includes(e)}function Me(e,t){return typeof t!="undefined"?Ht.translations[e].replace("#",t.toString()):Ht.translations[e]}function Ce(e,t=document){return F(`[data-md-component=${e}]`,t)}function me(e,t=document){return M(`[data-md-component=${e}]`,t)}function Ua(e){let t=F(".md-typeset > :first-child",e);return h(t,"click",{once:!0}).pipe(m(()=>F(".md-typeset",e)),m(r=>({hash:__md_hash(r.innerHTML)})))}function Ln(e){if(!Q("announce.dismiss")||!e.childElementCount)return x;if(!e.hidden){let t=F(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return k(()=>{let t=new w;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),Ua(e).pipe(T(r=>t.next(r)),A(()=>t.complete()),m(r=>j({ref:e},r)))})}function Wa(e,{target$:t}){return t.pipe(m(r=>({hidden:r!==e})))}function Mn(e,t){let r=new w;return r.subscribe(({hidden:o})=>{e.hidden=o}),Wa(e,t).pipe(T(o=>r.next(o)),A(()=>r.complete()),m(o=>j({ref:e},o)))}function Dt(e,t){return t==="inline"?S("div",{class:"md-tooltip md-tooltip--inline",id:e,role:"tooltip"},S("div",{class:"md-tooltip__inner md-typeset"})):S("div",{class:"md-tooltip",id:e,role:"tooltip"},S("div",{class:"md-tooltip__inner md-typeset"}))}function wr(...e){return S("div",{class:"md-tooltip2",role:"dialog"},S("div",{class:"md-tooltip2__inner md-typeset"},e))}function _n(...e){return S("div",{class:"md-tooltip2",role:"tooltip"},S("div",{class:"md-tooltip2__inner md-typeset"},e))}function An(e,t){if(t=t?`${t}_annotation_${e}`:void 0,t){let r=t?`#${t}`:void 0;return S("aside",{class:"md-annotation",tabIndex:0},Dt(t),S("a",{href:r,class:"md-annotation__index",tabIndex:-1},S("span",{"data-md-annotation-id":e})))}else return S("aside",{class:"md-annotation",tabIndex:0},Dt(t),S("span",{class:"md-annotation__index",tabIndex:-1},S("span",{"data-md-annotation-id":e})))}function Cn(e){return S("button",{class:"md-code__button",title:Me("clipboard.copy"),"data-clipboard-target":`#${e} > code`,"data-md-type":"copy"})}function Hn(){return S("button",{class:"md-code__button",title:"Toggle line selection","data-md-type":"select"})}function kn(){return S("nav",{class:"md-code__nav"})}function ro(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(c=>!e.terms[c]).reduce((c,p)=>[...c,S("del",null,p)," "],[]).slice(0,-1),i=Te(),s=new URL(e.location,i.base);Q("search.highlight")&&s.searchParams.set("h",Object.entries(e.terms).filter(([,c])=>c).reduce((c,[p])=>`${c} ${p}`.trim(),""));let{tags:a}=Te();return S("a",{href:`${s}`,class:"md-search-result__link",tabIndex:-1},S("article",{class:"md-search-result__article md-typeset","data-md-score":e.score.toFixed(2)},r>0&&S("div",{class:"md-search-result__icon md-icon"}),r>0&&S("h1",null,e.title),r<=0&&S("h2",null,e.title),o>0&&e.text.length>0&&e.text,e.tags&&e.tags.map(c=>{let p=a?c in a?`md-tag-icon md-tag--${a[c]}`:"md-tag-icon":"";return S("span",{class:`md-tag ${p}`},c)}),o>0&&n.length>0&&S("p",{class:"md-search-result__terms"},Me("search.result.term.missing"),": ",...n)))}function $n(e){let t=e[0].score,r=[...e],o=Te(),n=r.findIndex(l=>!`${new URL(l.location,o.base)}`.includes("#")),[i]=r.splice(n,1),s=r.findIndex(l=>l.scorero(l,1)),...c.length?[S("details",{class:"md-search-result__more"},S("summary",{tabIndex:-1},S("div",null,c.length>0&&c.length===1?Me("search.result.more.one"):Me("search.result.more.other",c.length))),...c.map(l=>ro(l,1)))]:[]];return S("li",{class:"md-search-result__item"},p)}function Rn(e){return S("ul",{class:"md-source__facts"},Object.entries(e).map(([t,r])=>S("li",{class:`md-source__fact md-source__fact--${t}`},typeof r=="number"?br(r):r)))}function oo(e){let t=`tabbed-control tabbed-control--${e}`;return S("div",{class:t,hidden:!0},S("button",{class:"tabbed-button",tabIndex:-1,"aria-hidden":"true"}))}function Pn(e){return S("div",{class:"md-typeset__scrollwrap"},S("div",{class:"md-typeset__table"},e))}function Da(e){let t=Te(),r=new URL(`../${e.version}/`,t.base);return S("li",{class:"md-version__item"},S("a",{href:`${r}`,class:"md-version__link"},e.title))}function In(e,t){return e=e.filter(r=>{var o;return!((o=r.properties)!=null&&o.hidden)}),S("div",{class:"md-version"},S("button",{class:"md-version__current","aria-label":Me("select.version")},t.title),S("ul",{class:"md-version__list"},e.map(Da)))}var Na=0;function Va(e,t=250){let r=V([Ke(e),nt(e,t)]).pipe(m(([n,i])=>n||i),Y()),o=k(()=>sn(e)).pipe(J(Ye),gt(1),m(()=>cn(e)));return r.pipe(Re(n=>n),b(()=>V([r,o])),m(([n,i])=>({active:n,offset:i})),le())}function Nt(e,t,r=250){let{content$:o,viewport$:n}=t,i=`__tooltip2_${Na++}`;return k(()=>{let s=new w,a=new jr(!1);s.pipe(re(),ae(!1)).subscribe(a);let c=a.pipe(jt(l=>ke(+!l*250,Dr)),Y(),b(l=>l?o:x),T(l=>l.id=i),le());V([s.pipe(m(({active:l})=>l)),c.pipe(b(l=>nt(l,250)),K(!1))]).pipe(m(l=>l.some(f=>f))).subscribe(a);let p=a.pipe(v(l=>l),te(c,n),m(([l,f,{size:u}])=>{let d=e.getBoundingClientRect(),g=d.width/2;if(f.role==="tooltip")return{x:g,y:8+d.height};if(d.y>=u.height/2){let{height:L}=de(f);return{x:g,y:-16-L}}else return{x:g,y:16+d.height}}));return V([c,s,p]).subscribe(([l,{offset:f},u])=>{l.style.setProperty("--md-tooltip-host-x",`${f.x}px`),l.style.setProperty("--md-tooltip-host-y",`${f.y}px`),l.style.setProperty("--md-tooltip-x",`${u.x}px`),l.style.setProperty("--md-tooltip-y",`${u.y}px`),l.classList.toggle("md-tooltip2--top",u.y<0),l.classList.toggle("md-tooltip2--bottom",u.y>=0)}),a.pipe(v(l=>l),te(c,(l,f)=>f),v(l=>l.role==="tooltip")).subscribe(l=>{let f=de(F(":scope > *",l));l.style.setProperty("--md-tooltip-width",`${f.width}px`),l.style.setProperty("--md-tooltip-tail","0px")}),a.pipe(Y(),xe(ge),te(c)).subscribe(([l,f])=>{f.classList.toggle("md-tooltip2--active",l)}),V([a.pipe(v(l=>l)),c]).subscribe(([l,f])=>{f.role==="dialog"?(e.setAttribute("aria-controls",i),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("aria-describedby",i)}),a.pipe(v(l=>!l)).subscribe(()=>{e.removeAttribute("aria-controls"),e.removeAttribute("aria-describedby"),e.removeAttribute("aria-haspopup")}),Va(e,r).pipe(T(l=>s.next(l)),A(()=>s.complete()),m(l=>j({ref:e},l)))})}function Je(e,{viewport$:t},r=document.body){return Nt(e,{content$:new I(o=>{let n=e.title,i=_n(n);return o.next(i),e.removeAttribute("title"),r.append(i),()=>{i.remove(),e.setAttribute("title",n)}}),viewport$:t},0)}function za(e,t){let r=k(()=>V([pn(e),Ye(t)])).pipe(m(([{x:o,y:n},i])=>{let{width:s,height:a}=de(e);return{x:o-i.x+s/2,y:n-i.y+a/2}}));return Ke(e).pipe(b(o=>r.pipe(m(n=>({active:o,offset:n})),Ee(+!o||1/0))))}function Fn(e,t,{target$:r}){let[o,n]=Array.from(e.children);return k(()=>{let i=new w,s=i.pipe(re(),ae(!0));return i.subscribe({next({offset:a}){e.style.setProperty("--md-tooltip-x",`${a.x}px`),e.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),lt(e).pipe(W(s)).subscribe(a=>{e.toggleAttribute("data-md-visible",a)}),O(i.pipe(v(({active:a})=>a)),i.pipe(Ae(250),v(({active:a})=>!a))).subscribe({next({active:a}){a?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe($e(16,ge)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(gt(125,ge),v(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:a})=>a)).subscribe({next(a){a?e.style.setProperty("--md-tooltip-0",`${-a}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),h(n,"click").pipe(W(s),v(a=>!(a.metaKey||a.ctrlKey))).subscribe(a=>{a.stopPropagation(),a.preventDefault()}),h(n,"mousedown").pipe(W(s),te(i)).subscribe(([a,{active:c}])=>{var p;if(a.button!==0||a.metaKey||a.ctrlKey)a.preventDefault();else if(c){a.preventDefault();let l=e.parentElement.closest(".md-annotation");l instanceof HTMLElement?l.focus():(p=Ve())==null||p.blur()}}),r.pipe(W(s),v(a=>a===o),ot(125)).subscribe(()=>e.focus()),za(e,t).pipe(T(a=>i.next(a)),A(()=>i.complete()),m(a=>j({ref:e},a)))})}function qa(e){let t=Te();if(e.tagName!=="CODE")return[e];let r=[".c",".c1",".cm"];if(typeof t.annotate!="undefined"){let o=e.closest("[class|=language]");if(o)for(let n of Array.from(o.classList)){if(!n.startsWith("language-"))continue;let[,i]=n.split("-");i in t.annotate&&r.push(...t.annotate[i])}}return M(r.join(", "),e)}function Ka(e){let t=[];for(let r of qa(e)){let o=[],n=document.createNodeIterator(r,NodeFilter.SHOW_TEXT);for(let i=n.nextNode();i;i=n.nextNode())o.push(i);for(let i of o){let s;for(;s=/(\(\d+\))(!)?/.exec(i.textContent);){let[,a,c]=s;if(typeof c=="undefined"){let p=i.splitText(s.index);i=p.splitText(a.length),t.push(p)}else{i.textContent=a,t.push(i);break}}}}return t}function jn(e,t){t.append(...Array.from(e.childNodes))}function Tr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,s=new Map;for(let a of Ka(t)){let[,c]=a.textContent.match(/\((\d+)\)/);ue(`:scope > li:nth-child(${c})`,e)&&(s.set(c,An(c,i)),a.replaceWith(s.get(c)))}return s.size===0?x:k(()=>{let a=new w,c=a.pipe(re(),ae(!0)),p=[];for(let[l,f]of s)p.push([F(".md-typeset",f),F(`:scope > li:nth-child(${l})`,e)]);return o.pipe(W(c)).subscribe(l=>{e.hidden=!l,e.classList.toggle("md-annotation-list",l);for(let[f,u]of p)l?jn(f,u):jn(u,f)}),O(...[...s].map(([,l])=>Fn(l,t,{target$:r}))).pipe(A(()=>a.complete()),le())})}function Un(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return Un(t)}}function Wn(e,t){return k(()=>{let r=Un(e);return typeof r!="undefined"?Tr(r,e,t):x})}var Nn=Gt(io());var Qa=0,Dn=O(h(window,"keydown").pipe(m(()=>!0)),O(h(window,"keyup"),h(window,"contextmenu")).pipe(m(()=>!1))).pipe(K(!1),X(1));function Vn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return Vn(t)}}function Ya(e){return Le(e).pipe(m(({width:t})=>({scrollable:Ct(e).width>t})),oe("scrollable"))}function zn(e,t){let{matches:r}=matchMedia("(hover)"),o=k(()=>{let n=new w,i=n.pipe(Yr(1));n.subscribe(({scrollable:d})=>{d&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")});let s=[],a=e.closest("pre"),c=a.closest("[id]"),p=c?c.id:Qa++;a.id=`__code_${p}`;let l=[],f=e.closest(".highlight");if(f instanceof HTMLElement){let d=Vn(f);if(typeof d!="undefined"&&(f.classList.contains("annotate")||Q("content.code.annotate"))){let g=Tr(d,e,t);l.push(Le(f).pipe(W(i),m(({width:L,height:ee})=>L&&ee),Y(),b(L=>L?g:x)))}}let u=M(":scope > span[id]",e);if(u.length&&(e.classList.add("md-code__content"),e.closest(".select")||Q("content.code.select")&&!e.closest(".no-select"))){let d=+u[0].id.split("-").pop(),g=Hn();s.push(g),Q("content.tooltips")&&l.push(Je(g,{viewport$}));let L=h(g,"click").pipe(Ut(R=>!R,!1),T(()=>g.blur()),le());L.subscribe(R=>{g.classList.toggle("md-code__button--active",R)});let ee=fe(u).pipe(J(R=>nt(R).pipe(m(se=>[R,se]))));L.pipe(b(R=>R?ee:x)).subscribe(([R,se])=>{let ce=ue(".hll.select",R);if(ce&&!se)ce.replaceWith(...Array.from(ce.childNodes));else if(!ce&&se){let he=document.createElement("span");he.className="hll select",he.append(...Array.from(R.childNodes).slice(1)),R.append(he)}});let ne=fe(u).pipe(J(R=>h(R,"mousedown").pipe(T(se=>se.preventDefault()),m(()=>R)))),Z=L.pipe(b(R=>R?ne:x),te(Dn),m(([R,se])=>{var he;let ce=u.indexOf(R)+d;if(se===!1)return[ce,ce];{let Se=M(".hll",e).map(je=>u.indexOf(je.parentElement)+d);return(he=window.getSelection())==null||he.removeAllRanges(),[Math.min(ce,...Se),Math.max(ce,...Se)]}})),H=Zr(x).pipe(v(R=>R.startsWith(`__codelineno-${p}-`)));H.subscribe(R=>{let[,,se]=R.split("-"),ce=se.split(":").map(Se=>+Se-d+1);ce.length===1&&ce.push(ce[0]);for(let Se of M(".hll:not(.select)",e))Se.replaceWith(...Array.from(Se.childNodes));let he=u.slice(ce[0]-1,ce[1]);for(let Se of he){let je=document.createElement("span");je.className="hll",je.append(...Array.from(Se.childNodes).slice(1)),Se.append(je)}}),H.pipe(Ee(1),xe(pe)).subscribe(R=>{if(R.includes(":")){let se=document.getElementById(R.split(":")[0]);se&&setTimeout(()=>{let ce=se,he=-64;for(;ce!==document.body;)he+=ce.offsetTop,ce=ce.offsetParent;window.scrollTo({top:he})},1)}});let Fe=fe(M('a[href^="#__codelineno"]',f)).pipe(J(R=>h(R,"click").pipe(T(se=>se.preventDefault()),m(()=>R)))).pipe(W(i),te(Dn),m(([R,se])=>{let he=+F(`[id="${R.hash.slice(1)}"]`).parentElement.id.split("-").pop();if(se===!1)return[he,he];{let Se=M(".hll",e).map(je=>+je.parentElement.id.split("-").pop());return[Math.min(he,...Se),Math.max(he,...Se)]}}));O(Z,Fe).subscribe(R=>{let se=`#__codelineno-${p}-`;R[0]===R[1]?se+=R[0]:se+=`${R[0]}:${R[1]}`,history.replaceState({},"",se),window.dispatchEvent(new HashChangeEvent("hashchange",{newURL:window.location.origin+window.location.pathname+se,oldURL:window.location.href}))})}if(Nn.default.isSupported()&&(e.closest(".copy")||Q("content.code.copy")&&!e.closest(".no-copy"))){let d=Cn(a.id);s.push(d),Q("content.tooltips")&&l.push(Je(d,{viewport$}))}if(s.length){let d=kn();d.append(...s),a.insertBefore(d,e)}return Ya(e).pipe(T(d=>n.next(d)),A(()=>n.complete()),m(d=>j({ref:e},d)),Ne(O(...l).pipe(W(i))))});return Q("content.lazy")?lt(e).pipe(v(n=>n),Ee(1),b(()=>o)):o}function Ba(e,{target$:t,print$:r}){let o=!0;return O(t.pipe(m(n=>n.closest("details:not([open])")),v(n=>e===n),m(()=>({action:"open",reveal:!0}))),r.pipe(v(n=>n||!o),T(()=>o=e.open),m(n=>({action:n?"open":"close"}))))}function qn(e,t){return k(()=>{let r=new w;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),Ba(e,t).pipe(T(o=>r.next(o)),A(()=>r.complete()),m(o=>j({ref:e},o)))})}function Ga(e){let t=document.createElement("h3");t.innerHTML=e.innerHTML;let r=[t],o=e.nextElementSibling;for(;o&&!(o instanceof HTMLHeadingElement);)r.push(o),o=o.nextElementSibling;return r}function Ja(e,t){for(let r of M("[href], [src]",e))for(let o of["href","src"]){let n=r.getAttribute(o);if(n&&!/^(?:[a-z]+:)?\/\//i.test(n)){r[o]=new URL(r.getAttribute(o),t).toString();break}}return $(e)}function Kn(e,t){let{sitemap$:r}=t;if(!(e instanceof HTMLAnchorElement))return x;if(!(Q("navigation.instant.preview")||e.hasAttribute("data-preview")))return x;let o=V([Ke(e),nt(e)]).pipe(m(([i,s])=>i||s),Y(),v(i=>i));return bt([r,o]).pipe(b(([i])=>{let s=new URL(e.href);return s.search=s.hash="",i.has(`${s}`)?$(s):x}),b(i=>yr(i).pipe(b(s=>Ja(s,i)))),b(i=>{let s=e.hash?`article [id="${e.hash.slice(1)}"]`:"article h1",a=ue(s,i);return typeof a=="undefined"?x:$(Ga(a))})).pipe(b(i=>{let s=new I(a=>{let c=wr(...i);return a.next(c),document.body.append(c),()=>c.remove()});return Nt(e,j({content$:s},t))}))}var Qn=".node circle,.node ellipse,.node path,.node polygon,.node rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}marker{fill:var(--md-mermaid-edge-color)!important}.edgeLabel .label rect{fill:#0000}.label{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.label foreignObject{line-height:normal;overflow:visible}.label div .edgeLabel{color:var(--md-mermaid-label-fg-color)}.edgeLabel,.edgeLabel rect,.label div .edgeLabel{background-color:var(--md-mermaid-label-bg-color)}.edgeLabel,.edgeLabel rect{fill:var(--md-mermaid-label-bg-color);color:var(--md-mermaid-edge-color)}.edgePath .path,.flowchart-link{stroke:var(--md-mermaid-edge-color);stroke-width:.05rem}.edgePath .arrowheadPath{fill:var(--md-mermaid-edge-color);stroke:none}.cluster rect{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}.cluster span{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}g #flowchart-circleEnd,g #flowchart-circleStart,g #flowchart-crossEnd,g #flowchart-crossStart,g #flowchart-pointEnd,g #flowchart-pointStart{stroke:none}g.classGroup line,g.classGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.classGroup text{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.classLabel .box{fill:var(--md-mermaid-label-bg-color);background-color:var(--md-mermaid-label-bg-color);opacity:1}.classLabel .label{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node .divider{stroke:var(--md-mermaid-node-fg-color)}.relation{stroke:var(--md-mermaid-edge-color)}.cardinality{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.cardinality text{fill:inherit!important}defs #classDiagram-compositionEnd,defs #classDiagram-compositionStart,defs #classDiagram-dependencyEnd,defs #classDiagram-dependencyStart,defs #classDiagram-extensionEnd,defs #classDiagram-extensionStart{fill:var(--md-mermaid-edge-color)!important;stroke:var(--md-mermaid-edge-color)!important}defs #classDiagram-aggregationEnd,defs #classDiagram-aggregationStart{fill:var(--md-mermaid-label-bg-color)!important;stroke:var(--md-mermaid-edge-color)!important}g.stateGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.stateGroup .state-title{fill:var(--md-mermaid-label-fg-color)!important;font-family:var(--md-mermaid-font-family)}g.stateGroup .composit{fill:var(--md-mermaid-label-bg-color)}.nodeLabel,.nodeLabel p{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}a .nodeLabel{text-decoration:underline}.node circle.state-end,.node circle.state-start,.start-state{fill:var(--md-mermaid-edge-color);stroke:none}.end-state-inner,.end-state-outer{fill:var(--md-mermaid-edge-color)}.end-state-inner,.node circle.state-end{stroke:var(--md-mermaid-label-bg-color)}.transition{stroke:var(--md-mermaid-edge-color)}[id^=state-fork] rect,[id^=state-join] rect{fill:var(--md-mermaid-edge-color)!important;stroke:none!important}.statediagram-cluster.statediagram-cluster .inner{fill:var(--md-default-bg-color)}.statediagram-cluster rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.statediagram-state rect.divider{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}defs #statediagram-barbEnd{stroke:var(--md-mermaid-edge-color)}.attributeBoxEven,.attributeBoxOdd{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityBox{fill:var(--md-mermaid-label-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityLabel{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.relationshipLabelBox{fill:var(--md-mermaid-label-bg-color);fill-opacity:1;background-color:var(--md-mermaid-label-bg-color);opacity:1}.relationshipLabel{fill:var(--md-mermaid-label-fg-color)}.relationshipLine{stroke:var(--md-mermaid-edge-color)}defs #ONE_OR_MORE_END *,defs #ONE_OR_MORE_START *,defs #ONLY_ONE_END *,defs #ONLY_ONE_START *,defs #ZERO_OR_MORE_END *,defs #ZERO_OR_MORE_START *,defs #ZERO_OR_ONE_END *,defs #ZERO_OR_ONE_START *{stroke:var(--md-mermaid-edge-color)!important}defs #ZERO_OR_MORE_END circle,defs #ZERO_OR_MORE_START circle{fill:var(--md-mermaid-label-bg-color)}.actor{fill:var(--md-mermaid-sequence-actor-bg-color);stroke:var(--md-mermaid-sequence-actor-border-color)}text.actor>tspan{fill:var(--md-mermaid-sequence-actor-fg-color);font-family:var(--md-mermaid-font-family)}line{stroke:var(--md-mermaid-sequence-actor-line-color)}.actor-man circle,.actor-man line{fill:var(--md-mermaid-sequence-actorman-bg-color);stroke:var(--md-mermaid-sequence-actorman-line-color)}.messageLine0,.messageLine1{stroke:var(--md-mermaid-sequence-message-line-color)}.note{fill:var(--md-mermaid-sequence-note-bg-color);stroke:var(--md-mermaid-sequence-note-border-color)}.loopText,.loopText>tspan,.messageText,.noteText>tspan{stroke:none;font-family:var(--md-mermaid-font-family)!important}.messageText{fill:var(--md-mermaid-sequence-message-fg-color)}.loopText,.loopText>tspan{fill:var(--md-mermaid-sequence-loop-fg-color)}.noteText>tspan{fill:var(--md-mermaid-sequence-note-fg-color)}#arrowhead path{fill:var(--md-mermaid-sequence-message-line-color);stroke:none}.loopLine{fill:var(--md-mermaid-sequence-loop-bg-color);stroke:var(--md-mermaid-sequence-loop-border-color)}.labelBox{fill:var(--md-mermaid-sequence-label-bg-color);stroke:none}.labelText,.labelText>span{fill:var(--md-mermaid-sequence-label-fg-color);font-family:var(--md-mermaid-font-family)}.sequenceNumber{fill:var(--md-mermaid-sequence-number-fg-color)}rect.rect{fill:var(--md-mermaid-sequence-box-bg-color);stroke:none}rect.rect+text.text{fill:var(--md-mermaid-sequence-box-fg-color)}defs #sequencenumber{fill:var(--md-mermaid-sequence-number-bg-color)!important}";var ao,Za=0;function es(){return typeof mermaid=="undefined"||mermaid instanceof Element?At("https://unpkg.com/mermaid@10/dist/mermaid.min.js"):$(void 0)}function Yn(e){return e.classList.remove("mermaid"),ao||(ao=es().pipe(T(()=>mermaid.initialize({startOnLoad:!1,themeCSS:Qn,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),m(()=>{}),X(1))),ao.subscribe(()=>bo(this,null,function*(){e.classList.add("mermaid");let t=`__mermaid_${Za++}`,r=S("div",{class:"mermaid"}),o=e.textContent,{svg:n,fn:i}=yield mermaid.render(t,o),s=r.attachShadow({mode:"closed"});s.innerHTML=n,e.replaceWith(r),i==null||i(s)})),ao.pipe(m(()=>({ref:e})))}var Bn=S("table");function Gn(e){return e.replaceWith(Bn),Bn.replaceWith(Pn(e)),$({ref:e})}function ts(e){let t=e.find(r=>r.checked)||e[0];return O(...e.map(r=>h(r,"change").pipe(m(()=>F(`label[for="${r.id}"]`))))).pipe(K(F(`label[for="${t.id}"]`)),m(r=>({active:r})))}function Jn(e,{viewport$:t,target$:r}){let o=F(".tabbed-labels",e),n=M(":scope > input",e),i=oo("prev");e.append(i);let s=oo("next");return e.append(s),k(()=>{let a=new w,c=a.pipe(re(),ae(!0));V([a,Le(e)]).pipe(W(c),$e(1,ge)).subscribe({next([{active:p},l]){let f=Qe(p),{width:u}=de(p);e.style.setProperty("--md-indicator-x",`${f.x}px`),e.style.setProperty("--md-indicator-width",`${u}px`);let d=gr(o);(f.xd.x+l.width)&&o.scrollTo({left:Math.max(0,f.x-16),behavior:"smooth"})},complete(){e.style.removeProperty("--md-indicator-x"),e.style.removeProperty("--md-indicator-width")}}),V([Ye(o),Le(o)]).pipe(W(c)).subscribe(([p,l])=>{let f=Ct(o);i.hidden=p.x<16,s.hidden=p.x>f.width-l.width-16}),O(h(i,"click").pipe(m(()=>-1)),h(s,"click").pipe(m(()=>1))).pipe(W(c)).subscribe(p=>{let{width:l}=de(o);o.scrollBy({left:l*p,behavior:"smooth"})}),r.pipe(W(c),v(p=>n.includes(p))).subscribe(p=>p.click()),o.classList.add("tabbed-labels--linked");for(let p of n){let l=F(`label[for="${p.id}"]`);l.replaceChildren(S("a",{href:`#${l.htmlFor}`,tabIndex:-1},...Array.from(l.childNodes))),h(l.firstElementChild,"click").pipe(W(c),v(f=>!(f.metaKey||f.ctrlKey)),T(f=>{f.preventDefault(),f.stopPropagation()})).subscribe(()=>{history.replaceState({},"",`#${l.htmlFor}`),l.click()})}return Q("content.tabs.link")&&a.pipe(Pe(1),te(t)).subscribe(([{active:p},{offset:l}])=>{let f=p.innerText.trim();if(p.hasAttribute("data-md-switching"))p.removeAttribute("data-md-switching");else{let u=e.offsetTop-l.y;for(let g of M("[data-tabs]"))for(let L of M(":scope > input",g)){let ee=F(`label[for="${L.id}"]`);if(ee!==p&&ee.innerText.trim()===f){ee.setAttribute("data-md-switching",""),L.click();break}}window.scrollTo({top:e.offsetTop-u});let d=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([f,...d])])}}),a.pipe(W(c)).subscribe(()=>{for(let p of M("audio, video",e))p.pause()}),lt(e).pipe(b(()=>ts(n)),T(p=>a.next(p)),A(()=>a.complete()),m(p=>j({ref:e},p)))}).pipe(Ze(pe))}function Xn(e,t){let{viewport$:r,target$:o,print$:n}=t;return O(...M(".annotate:not(.highlight)",e).map(i=>Wn(i,{target$:o,print$:n})),...M("pre:not(.mermaid) > code",e).map(i=>zn(i,{target$:o,print$:n})),...M("a:not([title])",e).map(i=>Kn(i,t)),...M("pre.mermaid",e).map(i=>Yn(i)),...M("table:not([class])",e).map(i=>Gn(i)),...M("details",e).map(i=>qn(i,{target$:o,print$:n})),...M("[data-tabs]",e).map(i=>Jn(i,{viewport$:r,target$:o})),...M("[title]",e).filter(()=>Q("content.tooltips")).map(i=>Je(i,{viewport$:r})),...M(".footnote-ref",e).filter(()=>Q("content.footnote.tooltips")).map(i=>Nt(i,{content$:new I(s=>{let a=new URL(i.href).hash.slice(1),c=Array.from(document.getElementById(a).cloneNode(!0).children),p=wr(...c);return s.next(p),document.body.append(p),()=>p.remove()}),viewport$:r})))}function rs(e,{alert$:t}){return t.pipe(b(r=>O($(!0),$(!1).pipe(ot(2e3))).pipe(m(o=>({message:r,active:o})))))}function Zn(e,t){let r=F(".md-typeset",e);return k(()=>{let o=new w;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),rs(e,t).pipe(T(n=>o.next(n)),A(()=>o.complete()),m(n=>j({ref:e},n)))})}var os=0;function ns(e,t){document.body.append(e);let{width:r}=de(e);e.style.setProperty("--md-tooltip-width",`${r}px`),e.remove();let o=vr(t),n=typeof o!="undefined"?Ye(o):$({x:0,y:0}),i=O(Ke(t),nt(t)).pipe(Y());return V([i,n]).pipe(m(([s,a])=>{let{x:c,y:p}=Qe(t),l=de(t),f=t.closest("table");return f&&t.parentElement&&(c+=f.offsetLeft+t.parentElement.offsetLeft,p+=f.offsetTop+t.parentElement.offsetTop),{active:s,offset:{x:c-a.x+l.width/2-r/2,y:p-a.y+l.height+8}}}))}function ei(e){let t=e.title;if(!t.length)return x;let r=`__tooltip_${os++}`,o=Dt(r,"inline"),n=F(".md-typeset",o);return n.innerHTML=t,k(()=>{let i=new w;return i.subscribe({next({offset:s}){o.style.setProperty("--md-tooltip-x",`${s.x}px`),o.style.setProperty("--md-tooltip-y",`${s.y}px`)},complete(){o.style.removeProperty("--md-tooltip-x"),o.style.removeProperty("--md-tooltip-y")}}),O(i.pipe(v(({active:s})=>s)),i.pipe(Ae(250),v(({active:s})=>!s))).subscribe({next({active:s}){s?(e.insertAdjacentElement("afterend",o),e.setAttribute("aria-describedby",r),e.removeAttribute("title")):(o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t))},complete(){o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t)}}),i.pipe($e(16,ge)).subscribe(({active:s})=>{o.classList.toggle("md-tooltip--active",s)}),i.pipe(gt(125,ge),v(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:s})=>s)).subscribe({next(s){s?o.style.setProperty("--md-tooltip-0",`${-s}px`):o.style.removeProperty("--md-tooltip-0")},complete(){o.style.removeProperty("--md-tooltip-0")}}),ns(o,e).pipe(T(s=>i.next(s)),A(()=>i.complete()),m(s=>j({ref:e},s)))}).pipe(Ze(pe))}function is({viewport$:e}){if(!Q("header.autohide"))return $(!1);let t=e.pipe(m(({offset:{y:n}})=>n),tt(2,1),m(([n,i])=>[nMath.abs(i-n.y)>100),m(([,[n]])=>n),Y()),o=Be("search");return V([e,o]).pipe(m(([{offset:n},i])=>n.y>400&&!i),Y(),b(n=>n?r:$(!1)),K(!1))}function ti(e,t){return k(()=>V([Le(e),is(t)])).pipe(m(([{height:r},o])=>({height:r,hidden:o})),Y((r,o)=>r.height===o.height&&r.hidden===o.hidden),X(1))}function ri(e,{header$:t,main$:r}){return k(()=>{let o=new w,n=o.pipe(re(),ae(!0));o.pipe(oe("active"),De(t)).subscribe(([{active:s},{hidden:a}])=>{e.classList.toggle("md-header--shadow",s&&!a),e.hidden=a});let i=fe(M("[title]",e)).pipe(v(()=>Q("content.tooltips")),J(s=>ei(s)));return r.subscribe(o),t.pipe(W(n),m(s=>j({ref:e},s)),Ne(i.pipe(W(n))))})}function as(e,{viewport$:t,header$:r}){return Er(e,{viewport$:t,header$:r}).pipe(m(({offset:{y:o}})=>{let{height:n}=de(e);return{active:o>=n}}),oe("active"))}function oi(e,t){return k(()=>{let r=new w;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=ue(".md-content h1");return typeof o=="undefined"?x:as(o,t).pipe(T(n=>r.next(n)),A(()=>r.complete()),m(n=>j({ref:e},n)))})}function ni(e,{viewport$:t,header$:r}){let o=r.pipe(m(({height:i})=>i),Y()),n=o.pipe(b(()=>Le(e).pipe(m(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),oe("bottom"))));return V([o,n,t]).pipe(m(([i,{top:s,bottom:a},{offset:{y:c},size:{height:p}}])=>(p=Math.max(0,p-Math.max(0,s-c,i)-Math.max(0,p+c-a)),{offset:s-i,height:p,active:s-i<=c})),Y((i,s)=>i.offset===s.offset&&i.height===s.height&&i.active===s.active))}function ss(e){let t=__md_get("__palette")||{index:e.findIndex(o=>matchMedia(o.getAttribute("data-md-color-media")).matches)},r=Math.max(0,Math.min(t.index,e.length-1));return $(...e).pipe(J(o=>h(o,"change").pipe(m(()=>o))),K(e[r]),m(o=>({index:e.indexOf(o),color:{media:o.getAttribute("data-md-color-media"),scheme:o.getAttribute("data-md-color-scheme"),primary:o.getAttribute("data-md-color-primary"),accent:o.getAttribute("data-md-color-accent")}})),X(1))}function ii(e){let t=M("input",e),r=S("meta",{name:"theme-color"});document.head.appendChild(r);let o=S("meta",{name:"color-scheme"});document.head.appendChild(o);let n=Wt("(prefers-color-scheme: light)");return k(()=>{let i=new w;return i.subscribe(s=>{if(document.body.setAttribute("data-md-color-switching",""),s.color.media==="(prefers-color-scheme)"){let a=matchMedia("(prefers-color-scheme: light)"),c=document.querySelector(a.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");s.color.scheme=c.getAttribute("data-md-color-scheme"),s.color.primary=c.getAttribute("data-md-color-primary"),s.color.accent=c.getAttribute("data-md-color-accent")}for(let[a,c]of Object.entries(s.color))document.body.setAttribute(`data-md-color-${a}`,c);for(let a=0;as.key==="Enter"),te(i,(s,a)=>a)).subscribe(({index:s})=>{s=(s+1)%t.length,t[s].click(),t[s].focus()}),i.pipe(m(()=>{let s=Ce("header"),a=window.getComputedStyle(s);return o.content=a.colorScheme,a.backgroundColor.match(/\d+/g).map(c=>(+c).toString(16).padStart(2,"0")).join("")})).subscribe(s=>r.content=`#${s}`),i.pipe(xe(pe)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")}),ss(t).pipe(W(n.pipe(Pe(1))),vt(),T(s=>i.next(s)),A(()=>i.complete()),m(s=>j({ref:e},s)))})}function ai(e,{progress$:t}){return k(()=>{let r=new w;return r.subscribe(({value:o})=>{e.style.setProperty("--md-progress-value",`${o}`)}),t.pipe(T(o=>r.next({value:o})),A(()=>r.complete()),m(o=>({ref:e,value:o})))})}function si(e,t){return e.protocol=t.protocol,e.hostname=t.hostname,e}function cs(e,t){let r=new Map;for(let o of M("url",e)){let n=F("loc",o),i=[si(new URL(n.textContent),t)];r.set(`${i[0]}`,i);for(let s of M("[rel=alternate]",o)){let a=s.getAttribute("href");a!=null&&i.push(si(new URL(a),t))}}return r}function kt(e){return xn(new URL("sitemap.xml",e)).pipe(m(t=>cs(t,new URL(e))),ye(()=>$(new Map)),le())}function ci({document$:e}){let t=new Map;e.pipe(b(()=>M("link[rel=alternate]")),m(r=>new URL(r.href)),v(r=>!t.has(r.toString())),J(r=>kt(r).pipe(m(o=>[r,o]),ye(()=>x)))).subscribe(([r,o])=>{t.set(r.toString().replace(/\/$/,""),o)}),h(document.body,"click").pipe(v(r=>!r.metaKey&&!r.ctrlKey),b(r=>{if(r.target instanceof Element){let o=r.target.closest("a");if(o&&!o.target){let n=[...t].find(([f])=>o.href.startsWith(`${f}/`));if(typeof n=="undefined")return x;let[i,s]=n,a=we();if(a.href.startsWith(i))return x;let c=Te(),p=a.href.replace(c.base,"");p=`${i}/${p}`;let l=s.has(p.split("#")[0])?new URL(p,c.base):new URL(i);return r.preventDefault(),$(l)}}return x})).subscribe(r=>at(r,!0))}var so=Gt(io());function ps(e){e.setAttribute("data-md-copying","");let t=e.closest("[data-copy]"),r=t?t.getAttribute("data-copy"):e.innerText;return e.removeAttribute("data-md-copying"),r.trimEnd()}function pi({alert$:e}){so.default.isSupported()&&new I(t=>{new so.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||ps(F(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(T(t=>{t.trigger.focus()}),m(()=>Me("clipboard.copied"))).subscribe(e)}function li(e,t){if(!(e.target instanceof Element))return x;let r=e.target.closest("a");if(r===null)return x;if(r.target||e.metaKey||e.ctrlKey)return x;let o=new URL(r.href);return o.search=o.hash="",t.has(`${o}`)?(e.preventDefault(),$(r)):x}function mi(e){let t=new Map;for(let r of M(":scope > *",e.head))t.set(r.outerHTML,r);return t}function fi(e){for(let t of M("[href], [src]",e))for(let r of["href","src"]){let o=t.getAttribute(r);if(o&&!/^(?:[a-z]+:)?\/\//i.test(o)){t[r]=t[r];break}}return $(e)}function ls(e){for(let o of["[data-md-component=announce]","[data-md-component=container]","[data-md-component=header-topic]","[data-md-component=outdated]","[data-md-component=logo]","[data-md-component=skip]",...Q("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let n=ue(o),i=ue(o,e);typeof n!="undefined"&&typeof i!="undefined"&&n.replaceWith(i)}let t=mi(document);for(let[o,n]of mi(e))t.has(o)?t.delete(o):document.head.appendChild(n);for(let o of t.values()){let n=o.getAttribute("name");n!=="theme-color"&&n!=="color-scheme"&&o.remove()}let r=Ce("container");return qe(M("script",r)).pipe(b(o=>{let n=e.createElement("script");if(o.src){for(let i of o.getAttributeNames())n.setAttribute(i,o.getAttribute(i));return o.replaceWith(n),new I(i=>{n.onload=()=>i.complete()})}else return n.textContent=o.textContent,o.replaceWith(n),x}),re(),ae(document))}function ui({sitemap$:e,location$:t,viewport$:r,progress$:o}){if(location.protocol==="file:")return x;$(document).subscribe(fi);let n=h(document.body,"click").pipe(De(e),b(([a,c])=>li(a,c)),m(({href:a})=>new URL(a)),le()),i=h(window,"popstate").pipe(m(we),le());n.pipe(te(r)).subscribe(([a,{offset:c}])=>{history.replaceState(c,""),history.pushState(null,"",a)}),O(n,i).subscribe(t);let s=t.pipe(oe("pathname"),b(a=>yr(a,{progress$:o}).pipe(ye(()=>(at(a,!0),x)))),b(fi),b(ls),le());return O(s.pipe(te(t,(a,c)=>c)),t.pipe(oe("pathname"),b(()=>t),oe("hash")),t.pipe(Y((a,c)=>a.pathname===c.pathname&&a.hash===c.hash),b(()=>n),T(()=>history.back()))).subscribe(a=>{var c,p;history.state!==null||!a.hash?window.scrollTo(0,(p=(c=history.state)==null?void 0:c.y)!=null?p:0):(history.scrollRestoration="auto",bn(a.hash),history.scrollRestoration="manual")}),t.subscribe(()=>{history.scrollRestoration="manual"}),h(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),r.pipe(oe("offset"),Ae(100)).subscribe(({offset:a})=>{history.replaceState(a,"")}),Q("navigation.instant.prefetch")&&O(h(document.body,"mousemove"),h(document.body,"focusin")).pipe(De(e),b(([a,c])=>li(a,c)),Ae(25),Qr(({href:a})=>a),hr(a=>{let c=document.createElement("link");return c.rel="prefetch",c.href=a.toString(),document.head.appendChild(c),h(c,"load").pipe(m(()=>c),Ee(1))})).subscribe(a=>a.remove()),s}var bi=Gt(hi());function vi(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,s)=>`${i}${s}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return s=>(0,bi.default)(s).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function zt(e){return e.type===1}function Sr(e){return e.type===3}function gi(e,t){let r=On(e);return O($(location.protocol!=="file:"),Be("search")).pipe(Re(o=>o),b(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:Q("search.suggest")}}})),r}function xi({document$:e}){let t=Te(),r=Ge(new URL("../versions.json",t.base)).pipe(ye(()=>x)),o=r.pipe(m(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:s,aliases:a})=>s===i||a.includes(i))||n[0]}));r.pipe(m(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),b(n=>h(document.body,"click").pipe(v(i=>!i.metaKey&&!i.ctrlKey),te(o),b(([i,s])=>{if(i.target instanceof Element){let a=i.target.closest("a");if(a&&!a.target&&n.has(a.href)){let c=a.href;return!i.target.closest(".md-version")&&n.get(c)===s?x:(i.preventDefault(),$(c))}}return x}),b(i=>kt(new URL(i)).pipe(m(s=>{let c=we().href.replace(t.base,i);return s.has(c.split("#")[0])?new URL(c):new URL(i)})))))).subscribe(n=>at(n,!0)),V([r,o]).subscribe(([n,i])=>{F(".md-header__topic").appendChild(In(n,i))}),e.pipe(b(()=>o)).subscribe(n=>{var s;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let a=((s=t.version)==null?void 0:s.default)||"latest";Array.isArray(a)||(a=[a]);e:for(let c of a)for(let p of n.aliases.concat(n.version))if(new RegExp(c,"i").test(p)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let a of me("outdated"))a.hidden=!1})}function hs(e,{worker$:t}){let{searchParams:r}=we();r.has("q")&&(it("search",!0),e.value=r.get("q"),e.focus(),Be("search").pipe(Re(i=>!i)).subscribe(()=>{let i=we();i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=Ke(e),n=O(t.pipe(Re(zt)),h(e,"keyup"),o).pipe(m(()=>e.value),Y());return V([n,o]).pipe(m(([i,s])=>({value:i,focus:s})),X(1))}function yi(e,{worker$:t}){let r=new w,o=r.pipe(re(),ae(!0));V([t.pipe(Re(zt)),r],(i,s)=>s).pipe(oe("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(oe("focus")).subscribe(({focus:i})=>{i&&it("search",i)}),h(e.form,"reset").pipe(W(o)).subscribe(()=>e.focus());let n=F("header [for=__search]");return h(n,"click").subscribe(()=>e.focus()),hs(e,{worker$:t}).pipe(T(i=>r.next(i)),A(()=>r.complete()),m(i=>j({ref:e},i)),X(1))}function Ei(e,{worker$:t,query$:r}){let o=new w,n=mn(e.parentElement).pipe(v(Boolean)),i=e.parentElement,s=F(":scope > :first-child",e),a=F(":scope > :last-child",e);Be("search").subscribe(l=>a.setAttribute("role",l?"list":"presentation")),o.pipe(te(r),Gr(t.pipe(Re(zt)))).subscribe(([{items:l},{value:f}])=>{switch(l.length){case 0:s.textContent=f.length?Me("search.result.none"):Me("search.result.placeholder");break;case 1:s.textContent=Me("search.result.one");break;default:let u=br(l.length);s.textContent=Me("search.result.other",u)}});let c=o.pipe(T(()=>a.innerHTML=""),b(({items:l})=>O($(...l.slice(0,10)),$(...l.slice(10)).pipe(tt(4),Xr(n),b(([f])=>f)))),m($n),le());return c.subscribe(l=>a.appendChild(l)),c.pipe(J(l=>{let f=ue("details",l);return typeof f=="undefined"?x:h(f,"toggle").pipe(W(o),m(()=>f))})).subscribe(l=>{l.open===!1&&l.offsetTop<=i.scrollTop&&i.scrollTo({top:l.offsetTop})}),t.pipe(v(Sr),m(({data:l})=>l)).pipe(T(l=>o.next(l)),A(()=>o.complete()),m(l=>j({ref:e},l)))}function bs(e,{query$:t}){return t.pipe(m(({value:r})=>{let o=we();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function wi(e,t){let r=new w,o=r.pipe(re(),ae(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),h(e,"click").pipe(W(o)).subscribe(n=>n.preventDefault()),bs(e,t).pipe(T(n=>r.next(n)),A(()=>r.complete()),m(n=>j({ref:e},n)))}function Ti(e,{worker$:t,keyboard$:r}){let o=new w,n=Ce("search-query"),i=O(h(n,"keydown"),h(n,"focus")).pipe(xe(pe),m(()=>n.value),Y());return o.pipe(De(i),m(([{suggest:a},c])=>{let p=c.split(/([\s-]+)/);if(a!=null&&a.length&&p[p.length-1]){let l=a[a.length-1];l.startsWith(p[p.length-1])&&(p[p.length-1]=l)}else p.length=0;return p})).subscribe(a=>e.innerHTML=a.join("").replace(/\s/g," ")),r.pipe(v(({mode:a})=>a==="search")).subscribe(a=>{switch(a.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(v(Sr),m(({data:a})=>a)).pipe(T(a=>o.next(a)),A(()=>o.complete()),m(()=>({ref:e})))}function Si(e,{index$:t,keyboard$:r}){let o=Te();try{let n=gi(o.search,t),i=Ce("search-query",e),s=Ce("search-result",e);h(e,"click").pipe(v(({target:c})=>c instanceof Element&&!!c.closest("a"))).subscribe(()=>it("search",!1)),r.pipe(v(({mode:c})=>c==="search")).subscribe(c=>{let p=Ve();switch(c.type){case"Enter":if(p===i){let l=new Map;for(let f of M(":first-child [href]",s)){let u=f.firstElementChild;l.set(f,parseFloat(u.getAttribute("data-md-score")))}if(l.size){let[[f]]=[...l].sort(([,u],[,d])=>d-u);f.click()}c.claim()}break;case"Escape":case"Tab":it("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof p=="undefined")i.focus();else{let l=[i,...M(":not(details) > [href], summary, details[open] [href]",s)],f=Math.max(0,(Math.max(0,l.indexOf(p))+l.length+(c.type==="ArrowUp"?-1:1))%l.length);l[f].focus()}c.claim();break;default:i!==Ve()&&i.focus()}}),r.pipe(v(({mode:c})=>c==="global")).subscribe(c=>{switch(c.type){case"f":case"s":case"/":i.focus(),i.select(),c.claim();break}});let a=yi(i,{worker$:n});return O(a,Ei(s,{worker$:n,query$:a})).pipe(Ne(...me("search-share",e).map(c=>wi(c,{query$:a})),...me("search-suggest",e).map(c=>Ti(c,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,et}}function Oi(e,{index$:t,location$:r}){return V([t,r.pipe(K(we()),v(o=>!!o.searchParams.get("h")))]).pipe(m(([o,n])=>vi(o.config)(n.searchParams.get("h"))),m(o=>{var s;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let a=i.nextNode();a;a=i.nextNode())if((s=a.parentElement)!=null&&s.offsetHeight){let c=a.textContent,p=o(c);p.length>c.length&&n.set(a,p)}for(let[a,c]of n){let{childNodes:p}=S("span",null,c);a.replaceWith(...Array.from(p))}return{ref:e,nodes:n}}))}function vs(e,{viewport$:t,main$:r}){let o=e.closest(".md-grid"),n=o.offsetTop-o.parentElement.offsetTop;return V([r,t]).pipe(m(([{offset:i,height:s},{offset:{y:a}}])=>(s=s+Math.min(n,Math.max(0,a-i))-n,{height:s,locked:a>=i+n})),Y((i,s)=>i.height===s.height&&i.locked===s.locked))}function co(e,o){var n=o,{header$:t}=n,r=ho(n,["header$"]);let i=F(".md-sidebar__scrollwrap",e),{y:s}=Qe(i);return k(()=>{let a=new w,c=a.pipe(re(),ae(!0)),p=a.pipe($e(0,ge));return p.pipe(te(t)).subscribe({next([{height:l},{height:f}]){i.style.height=`${l-2*s}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),p.pipe(Re()).subscribe(()=>{for(let l of M(".md-nav__link--active[href]",e)){if(!l.clientHeight)continue;let f=l.closest(".md-sidebar__scrollwrap");if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:d}=de(f);f.scrollTo({top:u-d/2})}}}),fe(M("label[tabindex]",e)).pipe(J(l=>h(l,"click").pipe(xe(pe),m(()=>l),W(c)))).subscribe(l=>{let f=F(`[id="${l.htmlFor}"]`);F(`[aria-labelledby="${l.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),Q("content.tooltips")&&fe(M("abbr[title]",e)).pipe(J(l=>Je(l,{viewport$})),W(c)).subscribe(),vs(e,r).pipe(T(l=>a.next(l)),A(()=>a.complete()),m(l=>j({ref:e},l)))})}function Li(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return bt(Ge(`${r}/releases/latest`).pipe(ye(()=>x),m(o=>({version:o.tag_name})),rt({})),Ge(r).pipe(ye(()=>x),m(o=>({stars:o.stargazers_count,forks:o.forks_count})),rt({}))).pipe(m(([o,n])=>j(j({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return Ge(r).pipe(m(o=>({repositories:o.public_repos})),rt({}))}}function Mi(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return Ge(r).pipe(ye(()=>x),m(({star_count:o,forks_count:n})=>({stars:o,forks:n})),rt({}))}function _i(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return Li(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return Mi(r,o)}return x}var gs;function xs(e){return gs||(gs=k(()=>{let t=__md_get("__source",sessionStorage);if(t)return $(t);if(me("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return x}return _i(e.href).pipe(T(o=>__md_set("__source",o,sessionStorage)))}).pipe(ye(()=>x),v(t=>Object.keys(t).length>0),m(t=>({facts:t})),X(1)))}function Ai(e){let t=F(":scope > :last-child",e);return k(()=>{let r=new w;return r.subscribe(({facts:o})=>{t.appendChild(Rn(o)),t.classList.add("md-source__repository--active")}),xs(e).pipe(T(o=>r.next(o)),A(()=>r.complete()),m(o=>j({ref:e},o)))})}function ys(e,{viewport$:t,header$:r}){return Le(document.body).pipe(b(()=>Er(e,{header$:r,viewport$:t})),m(({offset:{y:o}})=>({hidden:o>=10})),oe("hidden"))}function Ci(e,t){return k(()=>{let r=new w;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(Q("navigation.tabs.sticky")?$({hidden:!1}):ys(e,t)).pipe(T(o=>r.next(o)),A(()=>r.complete()),m(o=>j({ref:e},o)))})}function Es(e,{viewport$:t,header$:r}){let o=new Map,n=M(".md-nav__link",e);for(let a of n){let c=decodeURIComponent(a.hash.substring(1)),p=ue(`[id="${c}"]`);typeof p!="undefined"&&o.set(a,p)}let i=r.pipe(oe("height"),m(({height:a})=>{let c=Ce("main"),p=F(":scope > :first-child",c);return a+.8*(p.offsetTop-c.offsetTop)}),le());return Le(document.body).pipe(oe("height"),b(a=>k(()=>{let c=[];return $([...o].reduce((p,[l,f])=>{for(;c.length&&o.get(c[c.length-1]).tagName>=f.tagName;)c.pop();let u=f.offsetTop;for(;!u&&f.parentElement;)f=f.parentElement,u=f.offsetTop;let d=f.offsetParent;for(;d;d=d.offsetParent)u+=d.offsetTop;return p.set([...c=[...c,l]].reverse(),u)},new Map))}).pipe(m(c=>new Map([...c].sort(([,p],[,l])=>p-l))),De(i),b(([c,p])=>t.pipe(Ut(([l,f],{offset:{y:u},size:d})=>{let g=u+d.height>=Math.floor(a.height);for(;f.length;){let[,L]=f[0];if(L-p=u&&!g)f=[l.pop(),...f];else break}return[l,f]},[[],[...c]]),Y((l,f)=>l[0]===f[0]&&l[1]===f[1])))))).pipe(m(([a,c])=>({prev:a.map(([p])=>p),next:c.map(([p])=>p)})),K({prev:[],next:[]}),tt(2,1),m(([a,c])=>a.prev.length{let i=new w,s=i.pipe(re(),ae(!0));if(i.subscribe(({prev:a,next:c})=>{for(let[p]of c)p.classList.remove("md-nav__link--passed"),p.classList.remove("md-nav__link--active");for(let[p,[l]]of a.entries())l.classList.add("md-nav__link--passed"),l.classList.toggle("md-nav__link--active",p===a.length-1)}),Q("toc.follow")){let a=O(t.pipe(Ae(1),m(()=>{})),t.pipe(Ae(250),m(()=>"smooth")));i.pipe(v(({prev:c})=>c.length>0),De(o.pipe(xe(pe))),te(a)).subscribe(([[{prev:c}],p])=>{let[l]=c[c.length-1];if(l.offsetHeight){let f=vr(l);if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:d}=de(f);f.scrollTo({top:u-d/2,behavior:p})}}})}return Q("navigation.tracking")&&t.pipe(W(s),oe("offset"),Ae(250),Pe(1),W(n.pipe(Pe(1))),vt({delay:250}),te(i)).subscribe(([,{prev:a}])=>{let c=we(),p=a[a.length-1];if(p&&p.length){let[l]=p,{hash:f}=new URL(l.href);c.hash!==f&&(c.hash=f,history.replaceState({},"",`${c}`))}else c.hash="",history.replaceState({},"",`${c}`)}),Es(e,{viewport$:t,header$:r}).pipe(T(a=>i.next(a)),A(()=>i.complete()),m(a=>j({ref:e},a)))})}function ws(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(m(({offset:{y:s}})=>s),tt(2,1),m(([s,a])=>s>a&&a>0),Y()),i=r.pipe(m(({active:s})=>s));return V([i,n]).pipe(m(([s,a])=>!(s&&a)),Y(),W(o.pipe(Pe(1))),ae(!0),vt({delay:250}),m(s=>({hidden:s})))}function ki(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new w,s=i.pipe(re(),ae(!0));return i.subscribe({next({hidden:a}){e.hidden=a,a?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(W(s),oe("height")).subscribe(({height:a})=>{e.style.top=`${a+16}px`}),h(e,"click").subscribe(a=>{a.preventDefault(),window.scrollTo({top:0})}),ws(e,{viewport$:t,main$:o,target$:n}).pipe(T(a=>i.next(a)),A(()=>i.complete()),m(a=>j({ref:e},a)))}function $i({document$:e,viewport$:t}){e.pipe(b(()=>M(".md-ellipsis")),J(r=>lt(r).pipe(W(e.pipe(Pe(1))),v(o=>o),m(()=>r),Ee(1))),v(r=>r.offsetWidth{let o=r.innerText,n=r.closest("a")||r;return n.title=o,Je(n,{viewport$:t}).pipe(W(e.pipe(Pe(1))),A(()=>n.removeAttribute("title")))})).subscribe(),e.pipe(b(()=>M(".md-status")),J(r=>Je(r,{viewport$:t}))).subscribe()}function Ri({document$:e,tablet$:t}){e.pipe(b(()=>M(".md-toggle--indeterminate")),T(r=>{r.indeterminate=!0,r.checked=!1}),J(r=>h(r,"change").pipe(Jr(()=>r.classList.contains("md-toggle--indeterminate")),m(()=>r))),te(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function Ts(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function Pi({document$:e}){e.pipe(b(()=>M("[data-md-scrollfix]")),T(t=>t.removeAttribute("data-md-scrollfix")),v(Ts),J(t=>h(t,"touchstart").pipe(m(()=>t)))).subscribe(t=>{let r=t.scrollTop;r===0?t.scrollTop=1:r+t.offsetHeight===t.scrollHeight&&(t.scrollTop=r-1)})}function Ii({viewport$:e,tablet$:t}){V([Be("search"),t]).pipe(m(([r,o])=>r&&!o),b(r=>$(r).pipe(ot(r?400:100))),te(e)).subscribe(([r,{offset:{y:o}}])=>{if(r)document.body.setAttribute("data-md-scrolllock",""),document.body.style.top=`-${o}px`;else{let n=-1*parseInt(document.body.style.top,10);document.body.removeAttribute("data-md-scrolllock"),document.body.style.top="",n&&window.scrollTo(0,n)}})}Object.entries||(Object.entries=function(e){let t=[];for(let r of Object.keys(e))t.push([r,e[r]]);return t});Object.values||(Object.values=function(e){let t=[];for(let r of Object.keys(e))t.push(e[r]);return t});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(e,t){typeof e=="object"?(this.scrollLeft=e.left,this.scrollTop=e.top):(this.scrollLeft=e,this.scrollTop=t)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...e){let t=this.parentNode;if(t){e.length===0&&t.removeChild(this);for(let r=e.length-1;r>=0;r--){let o=e[r];typeof o=="string"?o=document.createTextNode(o):o.parentNode&&o.parentNode.removeChild(o),r?t.insertBefore(this.previousSibling,o):t.replaceChild(o,this)}}}));function Ss(){return location.protocol==="file:"?At(`${new URL("search/search_index.js",Or.base)}`).pipe(m(()=>__index),X(1)):Ge(new URL("search/search_index.json",Or.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var st=on(),Kt=dn(),$t=vn(Kt),po=un(),He=Sn(),Lr=Wt("(min-width: 960px)"),ji=Wt("(min-width: 1220px)"),Ui=gn(),Or=Te(),Wi=document.forms.namedItem("search")?Ss():et,lo=new w;pi({alert$:lo});ci({document$:st});var mo=new w,Di=kt(Or.base);Q("navigation.instant")&&ui({sitemap$:Di,location$:Kt,viewport$:He,progress$:mo}).subscribe(st);var Fi;((Fi=Or.version)==null?void 0:Fi.provider)==="mike"&&xi({document$:st});O(Kt,$t).pipe(ot(125)).subscribe(()=>{it("drawer",!1),it("search",!1)});po.pipe(v(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=ue("link[rel=prev]");typeof t!="undefined"&&at(t);break;case"n":case".":let r=ue("link[rel=next]");typeof r!="undefined"&&at(r);break;case"Enter":let o=Ve();o instanceof HTMLLabelElement&&o.click()}});$i({viewport$:He,document$:st});Ri({document$:st,tablet$:Lr});Pi({document$:st});Ii({viewport$:He,tablet$:Lr});var mt=ti(Ce("header"),{viewport$:He}),qt=st.pipe(m(()=>Ce("main")),b(e=>ni(e,{viewport$:He,header$:mt})),X(1)),Os=O(...me("consent").map(e=>Mn(e,{target$:$t})),...me("dialog").map(e=>Zn(e,{alert$:lo})),...me("header").map(e=>ri(e,{viewport$:He,header$:mt,main$:qt})),...me("palette").map(e=>ii(e)),...me("progress").map(e=>ai(e,{progress$:mo})),...me("search").map(e=>Si(e,{index$:Wi,keyboard$:po})),...me("source").map(e=>Ai(e))),Ls=k(()=>O(...me("announce").map(e=>Ln(e)),...me("content").map(e=>Xn(e,{sitemap$:Di,viewport$:He,target$:$t,print$:Ui})),...me("content").map(e=>Q("search.highlight")?Oi(e,{index$:Wi,location$:Kt}):x),...me("header-title").map(e=>oi(e,{viewport$:He,header$:mt})),...me("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?eo(ji,()=>co(e,{viewport$:He,header$:mt,main$:qt})):eo(Lr,()=>co(e,{viewport$:He,header$:mt,main$:qt}))),...me("tabs").map(e=>Ci(e,{viewport$:He,header$:mt})),...me("toc").map(e=>Hi(e,{viewport$:He,header$:mt,main$:qt,target$:$t})),...me("top").map(e=>ki(e,{viewport$:He,header$:mt,main$:qt,target$:$t})))),Ni=st.pipe(b(()=>Ls),Ne(Os),X(1));Ni.subscribe();window.document$=st;window.location$=Kt;window.target$=$t;window.keyboard$=po;window.viewport$=He;window.tablet$=Lr;window.screen$=ji;window.print$=Ui;window.alert$=lo;window.progress$=mo;window.component$=Ni;})(); diff --git a/1.0.X/assets/javascripts/glightbox.min.js b/1.0.X/assets/javascripts/glightbox.min.js new file mode 100755 index 0000000..614fb18 --- /dev/null +++ b/1.0.X/assets/javascripts/glightbox.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).GLightbox=t()}(this,(function(){"use strict";function e(t){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(t)}function t(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:null,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=e[s]=e[s]||[],l={all:n,evt:null,found:null};return t&&i&&P(n)>0&&o(n,(function(e,n){if(e.eventName==t&&e.fn.toString()==i.toString())return l.found=!0,l.evt=n,!1})),l}function a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=t.onElement,n=t.withCallback,s=t.avoidDuplicate,l=void 0===s||s,a=t.once,h=void 0!==a&&a,d=t.useCapture,c=void 0!==d&&d,u=arguments.length>2?arguments[2]:void 0,g=i||[];function v(e){T(n)&&n.call(u,e,this),h&&v.destroy()}return C(g)&&(g=document.querySelectorAll(g)),v.destroy=function(){o(g,(function(t){var i=r(t,e,v);i.found&&i.all.splice(i.evt,1),t.removeEventListener&&t.removeEventListener(e,v,c)}))},o(g,(function(t){var i=r(t,e,v);(t.addEventListener&&l&&!i.found||!l)&&(t.addEventListener(e,v,c),i.all.push({eventName:e,fn:v}))})),v}function h(e,t){o(t.split(" "),(function(t){return e.classList.add(t)}))}function d(e,t){o(t.split(" "),(function(t){return e.classList.remove(t)}))}function c(e,t){return e.classList.contains(t)}function u(e,t){for(;e!==document.body;){if(!(e=e.parentElement))return!1;if("function"==typeof e.matches?e.matches(t):e.msMatchesSelector(t))return e}}function g(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e||""===t)return!1;if("none"==t)return T(i)&&i(),!1;var n=x(),s=t.split(" ");o(s,(function(t){h(e,"g"+t)})),a(n,{onElement:e,avoidDuplicate:!1,once:!0,withCallback:function(e,t){o(s,(function(e){d(t,"g"+e)})),T(i)&&i()}})}function v(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(""==t)return e.style.webkitTransform="",e.style.MozTransform="",e.style.msTransform="",e.style.OTransform="",e.style.transform="",!1;e.style.webkitTransform=t,e.style.MozTransform=t,e.style.msTransform=t,e.style.OTransform=t,e.style.transform=t}function f(e){e.style.display="block"}function p(e){e.style.display="none"}function m(e){var t=document.createDocumentFragment(),i=document.createElement("div");for(i.innerHTML=e;i.firstChild;)t.appendChild(i.firstChild);return t}function y(){return{width:window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,height:window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight}}function x(){var e,t=document.createElement("fakeelement"),i={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(e in i)if(void 0!==t.style[e])return i[e]}function b(e,t,i,n){if(e())t();else{var s;i||(i=100);var l=setInterval((function(){e()&&(clearInterval(l),s&&clearTimeout(s),t())}),i);n&&(s=setTimeout((function(){clearInterval(l)}),n))}}function S(e,t,i){if(I(e))console.error("Inject assets error");else if(T(t)&&(i=t,t=!1),C(t)&&t in window)T(i)&&i();else{var n;if(-1!==e.indexOf(".css")){if((n=document.querySelectorAll('link[href="'+e+'"]'))&&n.length>0)return void(T(i)&&i());var s=document.getElementsByTagName("head")[0],l=s.querySelectorAll('link[rel="stylesheet"]'),o=document.createElement("link");return o.rel="stylesheet",o.type="text/css",o.href=e,o.media="all",l?s.insertBefore(o,l[0]):s.appendChild(o),void(T(i)&&i())}if((n=document.querySelectorAll('script[src="'+e+'"]'))&&n.length>0){if(T(i)){if(C(t))return b((function(){return void 0!==window[t]}),(function(){i()})),!1;i()}}else{var r=document.createElement("script");r.type="text/javascript",r.src=e,r.onload=function(){if(T(i)){if(C(t))return b((function(){return void 0!==window[t]}),(function(){i()})),!1;i()}},document.body.appendChild(r)}}}function w(){return"navigator"in window&&window.navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(Android)|(PlayBook)|(BB10)|(BlackBerry)|(Opera Mini)|(IEMobile)|(webOS)|(MeeGo)/i)}function T(e){return"function"==typeof e}function C(e){return"string"==typeof e}function k(e){return!(!e||!e.nodeType||1!=e.nodeType)}function E(e){return Array.isArray(e)}function A(e){return e&&e.length&&isFinite(e.length)}function L(t){return"object"===e(t)&&null!=t&&!T(t)&&!E(t)}function I(e){return null==e}function O(e,t){return null!==e&&hasOwnProperty.call(e,t)}function P(e){if(L(e)){if(e.keys)return e.keys().length;var t=0;for(var i in e)O(e,i)&&t++;return t}return e.length}function M(e){return!isNaN(parseFloat(e))&&isFinite(e)}function z(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,t=document.querySelectorAll(".gbtn[data-taborder]:not(.disabled)");if(!t.length)return!1;if(1==t.length)return t[0];"string"==typeof e&&(e=parseInt(e));var i=[];o(t,(function(e){i.push(e.getAttribute("data-taborder"))}));var n=Math.max.apply(Math,i.map((function(e){return parseInt(e)}))),s=e<0?1:e+1;s>n&&(s="1");var l=i.filter((function(e){return e>=parseInt(s)})),r=l.sort()[0];return document.querySelector('.gbtn[data-taborder="'.concat(r,'"]'))}function X(e){if(e.events.hasOwnProperty("keyboard"))return!1;e.events.keyboard=a("keydown",{onElement:window,withCallback:function(t,i){var n=(t=t||window.event).keyCode;if(9==n){var s=document.querySelector(".gbtn.focused");if(!s){var l=!(!document.activeElement||!document.activeElement.nodeName)&&document.activeElement.nodeName.toLocaleLowerCase();if("input"==l||"textarea"==l||"button"==l)return}t.preventDefault();var o=document.querySelectorAll(".gbtn[data-taborder]");if(!o||o.length<=0)return;if(!s){var r=z();return void(r&&(r.focus(),h(r,"focused")))}var a=z(s.getAttribute("data-taborder"));d(s,"focused"),a&&(a.focus(),h(a,"focused"))}39==n&&e.nextSlide(),37==n&&e.prevSlide(),27==n&&e.close()}})}function Y(e){return Math.sqrt(e.x*e.x+e.y*e.y)}function q(e,t){var i=function(e,t){var i=Y(e)*Y(t);if(0===i)return 0;var n=function(e,t){return e.x*t.x+e.y*t.y}(e,t)/i;return n>1&&(n=1),Math.acos(n)}(e,t);return function(e,t){return e.x*t.y-t.x*e.y}(e,t)>0&&(i*=-1),180*i/Math.PI}var N=function(){function e(i){t(this,e),this.handlers=[],this.el=i}return n(e,[{key:"add",value:function(e){this.handlers.push(e)}},{key:"del",value:function(e){e||(this.handlers=[]);for(var t=this.handlers.length;t>=0;t--)this.handlers[t]===e&&this.handlers.splice(t,1)}},{key:"dispatch",value:function(){for(var e=0,t=this.handlers.length;e=0)console.log("ignore drag for this touched element",e.target.nodeName.toLowerCase());else{this.now=Date.now(),this.x1=e.touches[0].pageX,this.y1=e.touches[0].pageY,this.delta=this.now-(this.last||this.now),this.touchStart.dispatch(e,this.element),null!==this.preTapPosition.x&&(this.isDoubleTap=this.delta>0&&this.delta<=250&&Math.abs(this.preTapPosition.x-this.x1)<30&&Math.abs(this.preTapPosition.y-this.y1)<30,this.isDoubleTap&&clearTimeout(this.singleTapTimeout)),this.preTapPosition.x=this.x1,this.preTapPosition.y=this.y1,this.last=this.now;var t=this.preV;if(e.touches.length>1){this._cancelLongTap(),this._cancelSingleTap();var i={x:e.touches[1].pageX-this.x1,y:e.touches[1].pageY-this.y1};t.x=i.x,t.y=i.y,this.pinchStartLen=Y(t),this.multipointStart.dispatch(e,this.element)}this._preventTap=!1,this.longTapTimeout=setTimeout(function(){this.longTap.dispatch(e,this.element),this._preventTap=!0}.bind(this),750)}}}},{key:"move",value:function(e){if(e.touches){var t=this.preV,i=e.touches.length,n=e.touches[0].pageX,s=e.touches[0].pageY;if(this.isDoubleTap=!1,i>1){var l=e.touches[1].pageX,o=e.touches[1].pageY,r={x:e.touches[1].pageX-n,y:e.touches[1].pageY-s};null!==t.x&&(this.pinchStartLen>0&&(e.zoom=Y(r)/this.pinchStartLen,this.pinch.dispatch(e,this.element)),e.angle=q(r,t),this.rotate.dispatch(e,this.element)),t.x=r.x,t.y=r.y,null!==this.x2&&null!==this.sx2?(e.deltaX=(n-this.x2+l-this.sx2)/2,e.deltaY=(s-this.y2+o-this.sy2)/2):(e.deltaX=0,e.deltaY=0),this.twoFingerPressMove.dispatch(e,this.element),this.sx2=l,this.sy2=o}else{if(null!==this.x2){e.deltaX=n-this.x2,e.deltaY=s-this.y2;var a=Math.abs(this.x1-this.x2),h=Math.abs(this.y1-this.y2);(a>10||h>10)&&(this._preventTap=!0)}else e.deltaX=0,e.deltaY=0;this.pressMove.dispatch(e,this.element)}this.touchMove.dispatch(e,this.element),this._cancelLongTap(),this.x2=n,this.y2=s,i>1&&e.preventDefault()}}},{key:"end",value:function(e){if(e.changedTouches){this._cancelLongTap();var t=this;e.touches.length<2&&(this.multipointEnd.dispatch(e,this.element),this.sx2=this.sy2=null),this.x2&&Math.abs(this.x1-this.x2)>30||this.y2&&Math.abs(this.y1-this.y2)>30?(e.direction=this._swipeDirection(this.x1,this.x2,this.y1,this.y2),this.swipeTimeout=setTimeout((function(){t.swipe.dispatch(e,t.element)}),0)):(this.tapTimeout=setTimeout((function(){t._preventTap||t.tap.dispatch(e,t.element),t.isDoubleTap&&(t.doubleTap.dispatch(e,t.element),t.isDoubleTap=!1)}),0),t.isDoubleTap||(t.singleTapTimeout=setTimeout((function(){t.singleTap.dispatch(e,t.element)}),250))),this.touchEnd.dispatch(e,this.element),this.preV.x=0,this.preV.y=0,this.zoom=1,this.pinchStartLen=null,this.x1=this.x2=this.y1=this.y2=null}}},{key:"cancelAll",value:function(){this._preventTap=!0,clearTimeout(this.singleTapTimeout),clearTimeout(this.tapTimeout),clearTimeout(this.longTapTimeout),clearTimeout(this.swipeTimeout)}},{key:"cancel",value:function(e){this.cancelAll(),this.touchCancel.dispatch(e,this.element)}},{key:"_cancelLongTap",value:function(){clearTimeout(this.longTapTimeout)}},{key:"_cancelSingleTap",value:function(){clearTimeout(this.singleTapTimeout)}},{key:"_swipeDirection",value:function(e,t,i,n){return Math.abs(e-t)>=Math.abs(i-n)?e-t>0?"Left":"Right":i-n>0?"Up":"Down"}},{key:"on",value:function(e,t){this[e]&&this[e].add(t)}},{key:"off",value:function(e,t){this[e]&&this[e].del(t)}},{key:"destroy",value:function(){return this.singleTapTimeout&&clearTimeout(this.singleTapTimeout),this.tapTimeout&&clearTimeout(this.tapTimeout),this.longTapTimeout&&clearTimeout(this.longTapTimeout),this.swipeTimeout&&clearTimeout(this.swipeTimeout),this.element.removeEventListener("touchstart",this.start),this.element.removeEventListener("touchmove",this.move),this.element.removeEventListener("touchend",this.end),this.element.removeEventListener("touchcancel",this.cancel),this.rotate.del(),this.touchStart.del(),this.multipointStart.del(),this.multipointEnd.del(),this.pinch.del(),this.swipe.del(),this.tap.del(),this.doubleTap.del(),this.longTap.del(),this.singleTap.del(),this.pressMove.del(),this.twoFingerPressMove.del(),this.touchMove.del(),this.touchEnd.del(),this.touchCancel.del(),this.preV=this.pinchStartLen=this.zoom=this.isDoubleTap=this.delta=this.last=this.now=this.tapTimeout=this.singleTapTimeout=this.longTapTimeout=this.swipeTimeout=this.x1=this.x2=this.y1=this.y2=this.preTapPosition=this.rotate=this.touchStart=this.multipointStart=this.multipointEnd=this.pinch=this.swipe=this.tap=this.doubleTap=this.longTap=this.singleTap=this.pressMove=this.touchMove=this.touchEnd=this.touchCancel=this.twoFingerPressMove=null,window.removeEventListener("scroll",this._cancelAllHandler),null}}]),e}();function W(e){var t=function(){var e,t=document.createElement("fakeelement"),i={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(e in i)if(void 0!==t.style[e])return i[e]}(),i=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,n=c(e,"gslide-media")?e:e.querySelector(".gslide-media"),s=u(n,".ginner-container"),l=e.querySelector(".gslide-description");i>769&&(n=s),h(n,"greset"),v(n,"translate3d(0, 0, 0)"),a(t,{onElement:n,once:!0,withCallback:function(e,t){d(n,"greset")}}),n.style.opacity="",l&&(l.style.opacity="")}function B(e){if(e.events.hasOwnProperty("touch"))return!1;var t,i,n,s=y(),l=s.width,o=s.height,r=!1,a=null,g=null,f=null,p=!1,m=1,x=1,b=!1,S=!1,w=null,T=null,C=null,k=null,E=0,A=0,L=!1,I=!1,O={},P={},M=0,z=0,X=document.getElementById("glightbox-slider"),Y=document.querySelector(".goverlay"),q=new _(X,{touchStart:function(t){if(r=!0,(c(t.targetTouches[0].target,"ginner-container")||u(t.targetTouches[0].target,".gslide-desc")||"a"==t.targetTouches[0].target.nodeName.toLowerCase())&&(r=!1),u(t.targetTouches[0].target,".gslide-inline")&&!c(t.targetTouches[0].target.parentNode,"gslide-inline")&&(r=!1),r){if(P=t.targetTouches[0],O.pageX=t.targetTouches[0].pageX,O.pageY=t.targetTouches[0].pageY,M=t.targetTouches[0].clientX,z=t.targetTouches[0].clientY,a=e.activeSlide,g=a.querySelector(".gslide-media"),n=a.querySelector(".gslide-inline"),f=null,c(g,"gslide-image")&&(f=g.querySelector("img")),(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)>769&&(g=a.querySelector(".ginner-container")),d(Y,"greset"),t.pageX>20&&t.pageXo){var a=O.pageX-P.pageX;if(Math.abs(a)<=13)return!1}p=!0;var h,d=s.targetTouches[0].clientX,c=s.targetTouches[0].clientY,u=M-d,m=z-c;if(Math.abs(u)>Math.abs(m)?(L=!1,I=!0):(I=!1,L=!0),t=P.pageX-O.pageX,E=100*t/l,i=P.pageY-O.pageY,A=100*i/o,L&&f&&(h=1-Math.abs(i)/o,Y.style.opacity=h,e.settings.touchFollowAxis&&(E=0)),I&&(h=1-Math.abs(t)/l,g.style.opacity=h,e.settings.touchFollowAxis&&(A=0)),!f)return v(g,"translate3d(".concat(E,"%, 0, 0)"));v(g,"translate3d(".concat(E,"%, ").concat(A,"%, 0)"))}},touchEnd:function(){if(r){if(p=!1,S||b)return C=w,void(k=T);var t=Math.abs(parseInt(A)),i=Math.abs(parseInt(E));if(!(t>29&&f))return t<29&&i<25?(h(Y,"greset"),Y.style.opacity=1,W(g)):void 0;e.close()}},multipointEnd:function(){setTimeout((function(){b=!1}),50)},multipointStart:function(){b=!0,m=x||1},pinch:function(e){if(!f||p)return!1;b=!0,f.scaleX=f.scaleY=m*e.zoom;var t=m*e.zoom;if(S=!0,t<=1)return S=!1,t=1,k=null,C=null,w=null,T=null,void f.setAttribute("style","");t>4.5&&(t=4.5),f.style.transform="scale3d(".concat(t,", ").concat(t,", 1)"),x=t},pressMove:function(e){if(S&&!b){var t=P.pageX-O.pageX,i=P.pageY-O.pageY;C&&(t+=C),k&&(i+=k),w=t,T=i;var n="translate3d(".concat(t,"px, ").concat(i,"px, 0)");x&&(n+=" scale3d(".concat(x,", ").concat(x,", 1)")),v(f,n)}},swipe:function(t){if(!S)if(b)b=!1;else{if("Left"==t.direction){if(e.index==e.elements.length-1)return W(g);e.nextSlide()}if("Right"==t.direction){if(0==e.index)return W(g);e.prevSlide()}}}});e.events.touch=q}var H=function(){function e(i,n){var s=this,l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;if(t(this,e),this.img=i,this.slide=n,this.onclose=l,this.img.setZoomEvents)return!1;this.active=!1,this.zoomedIn=!1,this.dragging=!1,this.currentX=null,this.currentY=null,this.initialX=null,this.initialY=null,this.xOffset=0,this.yOffset=0,this.img.addEventListener("mousedown",(function(e){return s.dragStart(e)}),!1),this.img.addEventListener("mouseup",(function(e){return s.dragEnd(e)}),!1),this.img.addEventListener("mousemove",(function(e){return s.drag(e)}),!1),this.img.addEventListener("click",(function(e){return s.slide.classList.contains("dragging-nav")?(s.zoomOut(),!1):s.zoomedIn?void(s.zoomedIn&&!s.dragging&&s.zoomOut()):s.zoomIn()}),!1),this.img.setZoomEvents=!0}return n(e,[{key:"zoomIn",value:function(){var e=this.widowWidth();if(!(this.zoomedIn||e<=768)){var t=this.img;if(t.setAttribute("data-style",t.getAttribute("style")),t.style.maxWidth=t.naturalWidth+"px",t.style.maxHeight=t.naturalHeight+"px",t.naturalWidth>e){var i=e/2-t.naturalWidth/2;this.setTranslate(this.img.parentNode,i,0)}this.slide.classList.add("zoomed"),this.zoomedIn=!0}}},{key:"zoomOut",value:function(){this.img.parentNode.setAttribute("style",""),this.img.setAttribute("style",this.img.getAttribute("data-style")),this.slide.classList.remove("zoomed"),this.zoomedIn=!1,this.currentX=null,this.currentY=null,this.initialX=null,this.initialY=null,this.xOffset=0,this.yOffset=0,this.onclose&&"function"==typeof this.onclose&&this.onclose()}},{key:"dragStart",value:function(e){e.preventDefault(),this.zoomedIn?("touchstart"===e.type?(this.initialX=e.touches[0].clientX-this.xOffset,this.initialY=e.touches[0].clientY-this.yOffset):(this.initialX=e.clientX-this.xOffset,this.initialY=e.clientY-this.yOffset),e.target===this.img&&(this.active=!0,this.img.classList.add("dragging"))):this.active=!1}},{key:"dragEnd",value:function(e){var t=this;e.preventDefault(),this.initialX=this.currentX,this.initialY=this.currentY,this.active=!1,setTimeout((function(){t.dragging=!1,t.img.isDragging=!1,t.img.classList.remove("dragging")}),100)}},{key:"drag",value:function(e){this.active&&(e.preventDefault(),"touchmove"===e.type?(this.currentX=e.touches[0].clientX-this.initialX,this.currentY=e.touches[0].clientY-this.initialY):(this.currentX=e.clientX-this.initialX,this.currentY=e.clientY-this.initialY),this.xOffset=this.currentX,this.yOffset=this.currentY,this.img.isDragging=!0,this.dragging=!0,this.setTranslate(this.img,this.currentX,this.currentY))}},{key:"onMove",value:function(e){if(this.zoomedIn){var t=e.clientX-this.img.naturalWidth/2,i=e.clientY-this.img.naturalHeight/2;this.setTranslate(this.img,t,i)}}},{key:"setTranslate",value:function(e,t,i){e.style.transform="translate3d("+t+"px, "+i+"px, 0)"}},{key:"widowWidth",value:function(){return window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth}}]),e}(),V=function(){function e(){var i=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t(this,e);var s=n.dragEl,l=n.toleranceX,o=void 0===l?40:l,r=n.toleranceY,a=void 0===r?65:r,h=n.slide,d=void 0===h?null:h,c=n.instance,u=void 0===c?null:c;this.el=s,this.active=!1,this.dragging=!1,this.currentX=null,this.currentY=null,this.initialX=null,this.initialY=null,this.xOffset=0,this.yOffset=0,this.direction=null,this.lastDirection=null,this.toleranceX=o,this.toleranceY=a,this.toleranceReached=!1,this.dragContainer=this.el,this.slide=d,this.instance=u,this.el.addEventListener("mousedown",(function(e){return i.dragStart(e)}),!1),this.el.addEventListener("mouseup",(function(e){return i.dragEnd(e)}),!1),this.el.addEventListener("mousemove",(function(e){return i.drag(e)}),!1)}return n(e,[{key:"dragStart",value:function(e){if(this.slide.classList.contains("zoomed"))this.active=!1;else{"touchstart"===e.type?(this.initialX=e.touches[0].clientX-this.xOffset,this.initialY=e.touches[0].clientY-this.yOffset):(this.initialX=e.clientX-this.xOffset,this.initialY=e.clientY-this.yOffset);var t=e.target.nodeName.toLowerCase();e.target.classList.contains("nodrag")||u(e.target,".nodrag")||-1!==["input","select","textarea","button","a"].indexOf(t)?this.active=!1:(e.preventDefault(),(e.target===this.el||"img"!==t&&u(e.target,".gslide-inline"))&&(this.active=!0,this.el.classList.add("dragging"),this.dragContainer=u(e.target,".ginner-container")))}}},{key:"dragEnd",value:function(e){var t=this;e&&e.preventDefault(),this.initialX=0,this.initialY=0,this.currentX=null,this.currentY=null,this.initialX=null,this.initialY=null,this.xOffset=0,this.yOffset=0,this.active=!1,this.doSlideChange&&(this.instance.preventOutsideClick=!0,"right"==this.doSlideChange&&this.instance.prevSlide(),"left"==this.doSlideChange&&this.instance.nextSlide()),this.doSlideClose&&this.instance.close(),this.toleranceReached||this.setTranslate(this.dragContainer,0,0,!0),setTimeout((function(){t.instance.preventOutsideClick=!1,t.toleranceReached=!1,t.lastDirection=null,t.dragging=!1,t.el.isDragging=!1,t.el.classList.remove("dragging"),t.slide.classList.remove("dragging-nav"),t.dragContainer.style.transform="",t.dragContainer.style.transition=""}),100)}},{key:"drag",value:function(e){if(this.active){e.preventDefault(),this.slide.classList.add("dragging-nav"),"touchmove"===e.type?(this.currentX=e.touches[0].clientX-this.initialX,this.currentY=e.touches[0].clientY-this.initialY):(this.currentX=e.clientX-this.initialX,this.currentY=e.clientY-this.initialY),this.xOffset=this.currentX,this.yOffset=this.currentY,this.el.isDragging=!0,this.dragging=!0,this.doSlideChange=!1,this.doSlideClose=!1;var t=Math.abs(this.currentX),i=Math.abs(this.currentY);if(t>0&&t>=Math.abs(this.currentY)&&(!this.lastDirection||"x"==this.lastDirection)){this.yOffset=0,this.lastDirection="x",this.setTranslate(this.dragContainer,this.currentX,0);var n=this.shouldChange();if(!this.instance.settings.dragAutoSnap&&n&&(this.doSlideChange=n),this.instance.settings.dragAutoSnap&&n)return this.instance.preventOutsideClick=!0,this.toleranceReached=!0,this.active=!1,this.instance.preventOutsideClick=!0,this.dragEnd(null),"right"==n&&this.instance.prevSlide(),void("left"==n&&this.instance.nextSlide())}if(this.toleranceY>0&&i>0&&i>=t&&(!this.lastDirection||"y"==this.lastDirection)){this.xOffset=0,this.lastDirection="y",this.setTranslate(this.dragContainer,0,this.currentY);var s=this.shouldClose();return!this.instance.settings.dragAutoSnap&&s&&(this.doSlideClose=!0),void(this.instance.settings.dragAutoSnap&&s&&this.instance.close())}}}},{key:"shouldChange",value:function(){var e=!1;if(Math.abs(this.currentX)>=this.toleranceX){var t=this.currentX>0?"right":"left";("left"==t&&this.slide!==this.slide.parentNode.lastChild||"right"==t&&this.slide!==this.slide.parentNode.firstChild)&&(e=t)}return e}},{key:"shouldClose",value:function(){var e=!1;return Math.abs(this.currentY)>=this.toleranceY&&(e=!0),e}},{key:"setTranslate",value:function(e,t,i){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];e.style.transition=n?"all .2s ease":"",e.style.transform="translate3d(".concat(t,"px, ").concat(i,"px, 0)")}}]),e}();function j(e,t,i,n){var s=e.querySelector(".gslide-media"),l=new Image,o="gSlideTitle_"+i,r="gSlideDesc_"+i;l.addEventListener("load",(function(){T(n)&&n()}),!1),l.src=t.href,""!=t.sizes&&""!=t.srcset&&(l.sizes=t.sizes,l.srcset=t.srcset),l.alt="",I(t.alt)||""===t.alt||(l.alt=t.alt),""!==t.title&&l.setAttribute("aria-labelledby",o),""!==t.description&&l.setAttribute("aria-describedby",r),t.hasOwnProperty("_hasCustomWidth")&&t._hasCustomWidth&&(l.style.width=t.width),t.hasOwnProperty("_hasCustomHeight")&&t._hasCustomHeight&&(l.style.height=t.height),s.insertBefore(l,s.firstChild)}function F(e,t,i,n){var s=this,l=e.querySelector(".ginner-container"),o="gvideo"+i,r=e.querySelector(".gslide-media"),a=this.getAllPlayers();h(l,"gvideo-container"),r.insertBefore(m('
'),r.firstChild);var d=e.querySelector(".gvideo-wrapper");S(this.settings.plyr.css,"Plyr");var c=t.href,u=location.protocol.replace(":",""),g="",v="",f=!1;"file"==u&&(u="http"),r.style.maxWidth=t.width,S(this.settings.plyr.js,"Plyr",(function(){if(c.match(/vimeo\.com\/([0-9]*)/)){var l=/vimeo.*\/(\d+)/i.exec(c);g="vimeo",v=l[1]}if(c.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/)||c.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/)||c.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/)){var r=function(e){var t="";t=void 0!==(e=e.replace(/(>|<)/gi,"").split(/(vi\/|v=|\/v\/|youtu\.be\/|\/embed\/)/))[2]?(t=e[2].split(/[^0-9a-z_\-]/i))[0]:e;return t}(c);g="youtube",v=r}if(null!==c.match(/\.(mp4|ogg|webm|mov)$/)){g="local";var u='")}var w=f||m('
'));h(d,"".concat(g,"-video gvideo")),d.appendChild(w),d.setAttribute("data-id",o),d.setAttribute("data-index",i);var C=O(s.settings.plyr,"config")?s.settings.plyr.config:{},k=new Plyr("#"+o,C);k.on("ready",(function(e){var t=e.detail.plyr;a[o]=t,T(n)&&n()})),b((function(){return e.querySelector("iframe")&&"true"==e.querySelector("iframe").dataset.ready}),(function(){s.resize(e)})),k.on("enterfullscreen",R),k.on("exitfullscreen",R)}))}function R(e){var t=u(e.target,".gslide-media");"enterfullscreen"==e.type&&h(t,"fullscreen"),"exitfullscreen"==e.type&&d(t,"fullscreen")}function G(e,t,i,n){var s,l=this,o=e.querySelector(".gslide-media"),r=!(!O(t,"href")||!t.href)&&t.href.split("#").pop().trim(),d=!(!O(t,"content")||!t.content)&&t.content;if(d&&(C(d)&&(s=m('
'.concat(d,"
"))),k(d))){"none"==d.style.display&&(d.style.display="block");var c=document.createElement("div");c.className="ginlined-content",c.appendChild(d),s=c}if(r){var u=document.getElementById(r);if(!u)return!1;var g=u.cloneNode(!0);g.style.height=t.height,g.style.maxWidth=t.width,h(g,"ginlined-content"),s=g}if(!s)return console.error("Unable to append inline slide content",t),!1;o.style.height=t.height,o.style.width=t.width,o.appendChild(s),this.events["inlineclose"+r]=a("click",{onElement:o.querySelectorAll(".gtrigger-close"),withCallback:function(e){e.preventDefault(),l.close()}}),T(n)&&n()}function Z(e,t,i,n){var s=e.querySelector(".gslide-media"),l=function(e){var t=e.url,i=e.allow,n=e.callback,s=e.appendTo,l=document.createElement("iframe");return l.className="vimeo-video gvideo",l.src=t,l.style.width="100%",l.style.height="100%",i&&l.setAttribute("allow",i),l.onload=function(){h(l,"node-ready"),T(n)&&n()},s&&s.appendChild(l),l}({url:t.href,callback:n});s.parentNode.style.maxWidth=t.width,s.parentNode.style.height=t.height,s.appendChild(l)}var $=function(){function e(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t(this,e),this.defaults={href:"",sizes:"",srcset:"",title:"",type:"",description:"",alt:"",descPosition:"bottom",effect:"",width:"",height:"",content:!1,zoomable:!0,draggable:!0},L(i)&&(this.defaults=l(this.defaults,i))}return n(e,[{key:"sourceType",value:function(e){var t=e;if(null!==(e=e.toLowerCase()).match(/\.(jpeg|jpg|jpe|gif|png|apn|webp|avif|svg)/))return"image";if(e.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/)||e.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/)||e.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/))return"video";if(e.match(/vimeo\.com\/([0-9]*)/))return"video";if(null!==e.match(/\.(mp4|ogg|webm|mov)/))return"video";if(null!==e.match(/\.(mp3|wav|wma|aac|ogg)/))return"audio";if(e.indexOf("#")>-1&&""!==t.split("#").pop().trim())return"inline";return e.indexOf("goajax=true")>-1?"ajax":"external"}},{key:"parseConfig",value:function(e,t){var i=this,n=l({descPosition:t.descPosition},this.defaults);if(L(e)&&!k(e)){O(e,"type")||(O(e,"content")&&e.content?e.type="inline":O(e,"href")&&(e.type=this.sourceType(e.href)));var s=l(n,e);return this.setSize(s,t),s}var r="",a=e.getAttribute("data-glightbox"),h=e.nodeName.toLowerCase();if("a"===h&&(r=e.href),"img"===h&&(r=e.src,n.alt=e.alt),n.href=r,o(n,(function(s,l){O(t,l)&&"width"!==l&&(n[l]=t[l]);var o=e.dataset[l];I(o)||(n[l]=i.sanitizeValue(o))})),n.content&&(n.type="inline"),!n.type&&r&&(n.type=this.sourceType(r)),I(a)){if(!n.title&&"a"==h){var d=e.title;I(d)||""===d||(n.title=d)}if(!n.title&&"img"==h){var c=e.alt;I(c)||""===c||(n.title=c)}}else{var u=[];o(n,(function(e,t){u.push(";\\s?"+t)})),u=u.join("\\s?:|"),""!==a.trim()&&o(n,(function(e,t){var s=a,l=new RegExp("s?"+t+"s?:s?(.*?)("+u+"s?:|$)"),o=s.match(l);if(o&&o.length&&o[1]){var r=o[1].trim().replace(/;\s*$/,"");n[t]=i.sanitizeValue(r)}}))}if(n.description&&"."===n.description.substring(0,1)){var g;try{g=document.querySelector(n.description).innerHTML}catch(e){if(!(e instanceof DOMException))throw e}g&&(n.description=g)}if(!n.description){var v=e.querySelector(".glightbox-desc");v&&(n.description=v.innerHTML)}return this.setSize(n,t,e),this.slideConfig=n,n}},{key:"setSize",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n="video"==e.type?this.checkSize(t.videosWidth):this.checkSize(t.width),s=this.checkSize(t.height);return e.width=O(e,"width")&&""!==e.width?this.checkSize(e.width):n,e.height=O(e,"height")&&""!==e.height?this.checkSize(e.height):s,i&&"image"==e.type&&(e._hasCustomWidth=!!i.dataset.width,e._hasCustomHeight=!!i.dataset.height),e}},{key:"checkSize",value:function(e){return M(e)?"".concat(e,"px"):e}},{key:"sanitizeValue",value:function(e){return"true"!==e&&"false"!==e?e:"true"===e}}]),e}(),U=function(){function e(i,n,s){t(this,e),this.element=i,this.instance=n,this.index=s}return n(e,[{key:"setContent",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(c(t,"loaded"))return!1;var n=this.instance.settings,s=this.slideConfig,l=w();T(n.beforeSlideLoad)&&n.beforeSlideLoad({index:this.index,slide:t,player:!1});var o=s.type,r=s.descPosition,a=t.querySelector(".gslide-media"),d=t.querySelector(".gslide-title"),u=t.querySelector(".gslide-desc"),g=t.querySelector(".gdesc-inner"),v=i,f="gSlideTitle_"+this.index,p="gSlideDesc_"+this.index;if(T(n.afterSlideLoad)&&(v=function(){T(i)&&i(),n.afterSlideLoad({index:e.index,slide:t,player:e.instance.getSlidePlayerInstance(e.index)})}),""==s.title&&""==s.description?g&&g.parentNode.parentNode.removeChild(g.parentNode):(d&&""!==s.title?(d.id=f,d.innerHTML=s.title):d.parentNode.removeChild(d),u&&""!==s.description?(u.id=p,l&&n.moreLength>0?(s.smallDescription=this.slideShortDesc(s.description,n.moreLength,n.moreText),u.innerHTML=s.smallDescription,this.descriptionEvents(u,s)):u.innerHTML=s.description):u.parentNode.removeChild(u),h(a.parentNode,"desc-".concat(r)),h(g.parentNode,"description-".concat(r))),h(a,"gslide-".concat(o)),h(t,"loaded"),"video"!==o){if("external"!==o)return"inline"===o?(G.apply(this.instance,[t,s,this.index,v]),void(s.draggable&&new V({dragEl:t.querySelector(".gslide-inline"),toleranceX:n.dragToleranceX,toleranceY:n.dragToleranceY,slide:t,instance:this.instance}))):void("image"!==o?T(v)&&v():j(t,s,this.index,(function(){var i=t.querySelector("img");s.draggable&&new V({dragEl:i,toleranceX:n.dragToleranceX,toleranceY:n.dragToleranceY,slide:t,instance:e.instance}),s.zoomable&&i.naturalWidth>i.offsetWidth&&(h(i,"zoomable"),new H(i,t,(function(){e.instance.resize()}))),T(v)&&v()})));Z.apply(this,[t,s,this.index,v])}else F.apply(this.instance,[t,s,this.index,v])}},{key:"slideShortDesc",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:50,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=document.createElement("div");n.innerHTML=e;var s=n.innerText,l=i;if((e=s.trim()).length<=t)return e;var o=e.substr(0,t-1);return l?(n=null,o+'... '+i+""):o}},{key:"descriptionEvents",value:function(e,t){var i=this,n=e.querySelector(".desc-more");if(!n)return!1;a("click",{onElement:n,withCallback:function(e,n){e.preventDefault();var s=document.body,l=u(n,".gslide-desc");if(!l)return!1;l.innerHTML=t.description,h(s,"gdesc-open");var o=a("click",{onElement:[s,u(l,".gslide-description")],withCallback:function(e,n){"a"!==e.target.nodeName.toLowerCase()&&(d(s,"gdesc-open"),h(s,"gdesc-closed"),l.innerHTML=t.smallDescription,i.descriptionEvents(l,t),setTimeout((function(){d(s,"gdesc-closed")}),400),o.destroy())}})}})}},{key:"create",value:function(){return m(this.instance.settings.slideHTML)}},{key:"getConfig",value:function(){k(this.element)||this.element.hasOwnProperty("draggable")||(this.element.draggable=this.instance.settings.draggable);var e=new $(this.instance.settings.slideExtraAttributes);return this.slideConfig=e.parseConfig(this.element,this.instance.settings),this.slideConfig}}]),e}(),J=w(),K=null!==w()||void 0!==document.createTouch||"ontouchstart"in window||"onmsgesturechange"in window||navigator.msMaxTouchPoints,Q=document.getElementsByTagName("html")[0],ee={selector:".glightbox",elements:null,skin:"clean",theme:"clean",closeButton:!0,startAt:null,autoplayVideos:!0,autofocusVideos:!0,descPosition:"bottom",width:"900px",height:"506px",videosWidth:"960px",beforeSlideChange:null,afterSlideChange:null,beforeSlideLoad:null,afterSlideLoad:null,slideInserted:null,slideRemoved:null,slideExtraAttributes:null,onOpen:null,onClose:null,loop:!1,zoomable:!0,draggable:!0,dragAutoSnap:!1,dragToleranceX:40,dragToleranceY:65,preload:!0,oneSlidePerOpen:!1,touchNavigation:!0,touchFollowAxis:!0,keyboardNavigation:!0,closeOnOutsideClick:!0,plugins:!1,plyr:{css:"https://cdn.plyr.io/3.6.8/plyr.css",js:"https://cdn.plyr.io/3.6.8/plyr.js",config:{ratio:"16:9",fullscreen:{enabled:!0,iosNative:!0},youtube:{noCookie:!0,rel:0,showinfo:0,iv_load_policy:3},vimeo:{byline:!1,portrait:!1,title:!1,transparent:!1}}},openEffect:"zoom",closeEffect:"zoom",slideEffect:"slide",moreText:"See more",moreLength:60,cssEfects:{fade:{in:"fadeIn",out:"fadeOut"},zoom:{in:"zoomIn",out:"zoomOut"},slide:{in:"slideInRight",out:"slideOutLeft"},slideBack:{in:"slideInLeft",out:"slideOutRight"},none:{in:"none",out:"none"}},svg:{close:'',next:' ',prev:''},slideHTML:'
\n
\n
\n
\n
\n
\n
\n

\n
\n
\n
\n
\n
\n
',lightboxHTML:''},te=function(){function e(){var i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t(this,e),this.customOptions=i,this.settings=l(ee,i),this.effectsClasses=this.getAnimationClasses(),this.videoPlayers={},this.apiEvents=[],this.fullElementsList=!1}return n(e,[{key:"init",value:function(){var e=this,t=this.getSelector();t&&(this.baseEvents=a("click",{onElement:t,withCallback:function(t,i){t.preventDefault(),e.open(i)}})),this.elements=this.getElements()}},{key:"open",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(0==this.elements.length)return!1;this.activeSlide=null,this.prevActiveSlideIndex=null,this.prevActiveSlide=null;var i=M(t)?t:this.settings.startAt;if(k(e)){var n=e.getAttribute("data-gallery");n&&(this.fullElementsList=this.elements,this.elements=this.getGalleryElements(this.elements,n)),I(i)&&(i=this.getElementIndex(e))<0&&(i=0)}M(i)||(i=0),this.build(),g(this.overlay,"none"==this.settings.openEffect?"none":this.settings.cssEfects.fade.in);var s=document.body,l=window.innerWidth-document.documentElement.clientWidth;if(l>0){var o=document.createElement("style");o.type="text/css",o.className="gcss-styles",o.innerText=".gscrollbar-fixer {margin-right: ".concat(l,"px}"),document.head.appendChild(o),h(s,"gscrollbar-fixer")}h(s,"glightbox-open"),h(Q,"glightbox-open"),J&&(h(document.body,"glightbox-mobile"),this.settings.slideEffect="slide"),this.showSlide(i,!0),1==this.elements.length?(h(this.prevButton,"glightbox-button-hidden"),h(this.nextButton,"glightbox-button-hidden")):(d(this.prevButton,"glightbox-button-hidden"),d(this.nextButton,"glightbox-button-hidden")),this.lightboxOpen=!0,this.trigger("open"),T(this.settings.onOpen)&&this.settings.onOpen(),K&&this.settings.touchNavigation&&B(this),this.settings.keyboardNavigation&&X(this)}},{key:"openAt",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.open(null,e)}},{key:"showSlide",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];f(this.loader),this.index=parseInt(t);var n=this.slidesContainer.querySelector(".current");n&&d(n,"current"),this.slideAnimateOut();var s=this.slidesContainer.querySelectorAll(".gslide")[t];if(c(s,"loaded"))this.slideAnimateIn(s,i),p(this.loader);else{f(this.loader);var l=this.elements[t],o={index:this.index,slide:s,slideNode:s,slideConfig:l.slideConfig,slideIndex:this.index,trigger:l.node,player:null};this.trigger("slide_before_load",o),l.instance.setContent(s,(function(){p(e.loader),e.resize(),e.slideAnimateIn(s,i),e.trigger("slide_after_load",o)}))}this.slideDescription=s.querySelector(".gslide-description"),this.slideDescriptionContained=this.slideDescription&&c(this.slideDescription.parentNode,"gslide-media"),this.settings.preload&&(this.preloadSlide(t+1),this.preloadSlide(t-1)),this.updateNavigationClasses(),this.activeSlide=s}},{key:"preloadSlide",value:function(e){var t=this;if(e<0||e>this.elements.length-1)return!1;if(I(this.elements[e]))return!1;var i=this.slidesContainer.querySelectorAll(".gslide")[e];if(c(i,"loaded"))return!1;var n=this.elements[e],s=n.type,l={index:e,slide:i,slideNode:i,slideConfig:n.slideConfig,slideIndex:e,trigger:n.node,player:null};this.trigger("slide_before_load",l),"video"==s||"external"==s?setTimeout((function(){n.instance.setContent(i,(function(){t.trigger("slide_after_load",l)}))}),200):n.instance.setContent(i,(function(){t.trigger("slide_after_load",l)}))}},{key:"prevSlide",value:function(){this.goToSlide(this.index-1)}},{key:"nextSlide",value:function(){this.goToSlide(this.index+1)}},{key:"goToSlide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.prevActiveSlide=this.activeSlide,this.prevActiveSlideIndex=this.index,!this.loop()&&(e<0||e>this.elements.length-1))return!1;e<0?e=this.elements.length-1:e>=this.elements.length&&(e=0),this.showSlide(e)}},{key:"insertSlide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:-1;t<0&&(t=this.elements.length);var i=new U(e,this,t),n=i.getConfig(),s=l({},n),o=i.create(),r=this.elements.length-1;s.index=t,s.node=!1,s.instance=i,s.slideConfig=n,this.elements.splice(t,0,s);var a=null,h=null;if(this.slidesContainer){if(t>r)this.slidesContainer.appendChild(o);else{var d=this.slidesContainer.querySelectorAll(".gslide")[t];this.slidesContainer.insertBefore(o,d)}(this.settings.preload&&0==this.index&&0==t||this.index-1==t||this.index+1==t)&&this.preloadSlide(t),0==this.index&&0==t&&(this.index=1),this.updateNavigationClasses(),a=this.slidesContainer.querySelectorAll(".gslide")[t],h=this.getSlidePlayerInstance(t),s.slideNode=a}this.trigger("slide_inserted",{index:t,slide:a,slideNode:a,slideConfig:n,slideIndex:t,trigger:null,player:h}),T(this.settings.slideInserted)&&this.settings.slideInserted({index:t,slide:a,player:h})}},{key:"removeSlide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1;if(e<0||e>this.elements.length-1)return!1;var t=this.slidesContainer&&this.slidesContainer.querySelectorAll(".gslide")[e];t&&(this.getActiveSlideIndex()==e&&(e==this.elements.length-1?this.prevSlide():this.nextSlide()),t.parentNode.removeChild(t)),this.elements.splice(e,1),this.trigger("slide_removed",e),T(this.settings.slideRemoved)&&this.settings.slideRemoved(e)}},{key:"slideAnimateIn",value:function(e,t){var i=this,n=e.querySelector(".gslide-media"),s=e.querySelector(".gslide-description"),l={index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,slideNode:this.prevActiveSlide,slideIndex:this.prevActiveSlide,slideConfig:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].slideConfig,trigger:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].node,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},o={index:this.index,slide:this.activeSlide,slideNode:this.activeSlide,slideConfig:this.elements[this.index].slideConfig,slideIndex:this.index,trigger:this.elements[this.index].node,player:this.getSlidePlayerInstance(this.index)};if(n.offsetWidth>0&&s&&(p(s),s.style.display=""),d(e,this.effectsClasses),t)g(e,this.settings.cssEfects[this.settings.openEffect].in,(function(){i.settings.autoplayVideos&&i.slidePlayerPlay(e),i.trigger("slide_changed",{prev:l,current:o}),T(i.settings.afterSlideChange)&&i.settings.afterSlideChange.apply(i,[l,o])}));else{var r=this.settings.slideEffect,a="none"!==r?this.settings.cssEfects[r].in:r;this.prevActiveSlideIndex>this.index&&"slide"==this.settings.slideEffect&&(a=this.settings.cssEfects.slideBack.in),g(e,a,(function(){i.settings.autoplayVideos&&i.slidePlayerPlay(e),i.trigger("slide_changed",{prev:l,current:o}),T(i.settings.afterSlideChange)&&i.settings.afterSlideChange.apply(i,[l,o])}))}setTimeout((function(){i.resize(e)}),100),h(e,"current")}},{key:"slideAnimateOut",value:function(){if(!this.prevActiveSlide)return!1;var e=this.prevActiveSlide;d(e,this.effectsClasses),h(e,"prev");var t=this.settings.slideEffect,i="none"!==t?this.settings.cssEfects[t].out:t;this.slidePlayerPause(e),this.trigger("slide_before_change",{prev:{index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,slideNode:this.prevActiveSlide,slideIndex:this.prevActiveSlideIndex,slideConfig:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].slideConfig,trigger:I(this.prevActiveSlideIndex)?null:this.elements[this.prevActiveSlideIndex].node,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},current:{index:this.index,slide:this.activeSlide,slideNode:this.activeSlide,slideIndex:this.index,slideConfig:this.elements[this.index].slideConfig,trigger:this.elements[this.index].node,player:this.getSlidePlayerInstance(this.index)}}),T(this.settings.beforeSlideChange)&&this.settings.beforeSlideChange.apply(this,[{index:this.prevActiveSlideIndex,slide:this.prevActiveSlide,player:this.getSlidePlayerInstance(this.prevActiveSlideIndex)},{index:this.index,slide:this.activeSlide,player:this.getSlidePlayerInstance(this.index)}]),this.prevActiveSlideIndex>this.index&&"slide"==this.settings.slideEffect&&(i=this.settings.cssEfects.slideBack.out),g(e,i,(function(){var t=e.querySelector(".ginner-container"),i=e.querySelector(".gslide-media"),n=e.querySelector(".gslide-description");t.style.transform="",i.style.transform="",d(i,"greset"),i.style.opacity="",n&&(n.style.opacity=""),d(e,"prev")}))}},{key:"getAllPlayers",value:function(){return this.videoPlayers}},{key:"getSlidePlayerInstance",value:function(e){var t="gvideo"+e,i=this.getAllPlayers();return!(!O(i,t)||!i[t])&&i[t]}},{key:"stopSlideVideo",value:function(e){if(k(e)){var t=e.querySelector(".gvideo-wrapper");t&&(e=t.getAttribute("data-index"))}console.log("stopSlideVideo is deprecated, use slidePlayerPause");var i=this.getSlidePlayerInstance(e);i&&i.playing&&i.pause()}},{key:"slidePlayerPause",value:function(e){if(k(e)){var t=e.querySelector(".gvideo-wrapper");t&&(e=t.getAttribute("data-index"))}var i=this.getSlidePlayerInstance(e);i&&i.playing&&i.pause()}},{key:"playSlideVideo",value:function(e){if(k(e)){var t=e.querySelector(".gvideo-wrapper");t&&(e=t.getAttribute("data-index"))}console.log("playSlideVideo is deprecated, use slidePlayerPlay");var i=this.getSlidePlayerInstance(e);i&&!i.playing&&i.play()}},{key:"slidePlayerPlay",value:function(e){if(k(e)){var t=e.querySelector(".gvideo-wrapper");t&&(e=t.getAttribute("data-index"))}var i=this.getSlidePlayerInstance(e);i&&!i.playing&&(i.play(),this.settings.autofocusVideos&&i.elements.container.focus())}},{key:"setElements",value:function(e){var t=this;this.settings.elements=!1;var i=[];e&&e.length&&o(e,(function(e,n){var s=new U(e,t,n),o=s.getConfig(),r=l({},o);r.slideConfig=o,r.instance=s,r.index=n,i.push(r)})),this.elements=i,this.lightboxOpen&&(this.slidesContainer.innerHTML="",this.elements.length&&(o(this.elements,(function(){var e=m(t.settings.slideHTML);t.slidesContainer.appendChild(e)})),this.showSlide(0,!0)))}},{key:"getElementIndex",value:function(e){var t=!1;return o(this.elements,(function(i,n){if(O(i,"node")&&i.node==e)return t=n,!0})),t}},{key:"getElements",value:function(){var e=this,t=[];this.elements=this.elements?this.elements:[],!I(this.settings.elements)&&E(this.settings.elements)&&this.settings.elements.length&&o(this.settings.elements,(function(i,n){var s=new U(i,e,n),o=s.getConfig(),r=l({},o);r.node=!1,r.index=n,r.instance=s,r.slideConfig=o,t.push(r)}));var i=!1;return this.getSelector()&&(i=document.querySelectorAll(this.getSelector())),i?(o(i,(function(i,n){var s=new U(i,e,n),o=s.getConfig(),r=l({},o);r.node=i,r.index=n,r.instance=s,r.slideConfig=o,r.gallery=i.getAttribute("data-gallery"),t.push(r)})),t):t}},{key:"getGalleryElements",value:function(e,t){return e.filter((function(e){return e.gallery==t}))}},{key:"getSelector",value:function(){return!this.settings.elements&&(this.settings.selector&&"data-"==this.settings.selector.substring(0,5)?"*[".concat(this.settings.selector,"]"):this.settings.selector)}},{key:"getActiveSlide",value:function(){return this.slidesContainer.querySelectorAll(".gslide")[this.index]}},{key:"getActiveSlideIndex",value:function(){return this.index}},{key:"getAnimationClasses",value:function(){var e=[];for(var t in this.settings.cssEfects)if(this.settings.cssEfects.hasOwnProperty(t)){var i=this.settings.cssEfects[t];e.push("g".concat(i.in)),e.push("g".concat(i.out))}return e.join(" ")}},{key:"build",value:function(){var e=this;if(this.built)return!1;var t=document.body.childNodes,i=[];o(t,(function(e){e.parentNode==document.body&&"#"!==e.nodeName.charAt(0)&&e.hasAttribute&&!e.hasAttribute("aria-hidden")&&(i.push(e),e.setAttribute("aria-hidden","true"))}));var n=O(this.settings.svg,"next")?this.settings.svg.next:"",s=O(this.settings.svg,"prev")?this.settings.svg.prev:"",l=O(this.settings.svg,"close")?this.settings.svg.close:"",r=this.settings.lightboxHTML;r=m(r=(r=(r=r.replace(/{nextSVG}/g,n)).replace(/{prevSVG}/g,s)).replace(/{closeSVG}/g,l)),document.body.appendChild(r);var d=document.getElementById("glightbox-body");this.modal=d;var g=d.querySelector(".gclose");this.prevButton=d.querySelector(".gprev"),this.nextButton=d.querySelector(".gnext"),this.overlay=d.querySelector(".goverlay"),this.loader=d.querySelector(".gloader"),this.slidesContainer=document.getElementById("glightbox-slider"),this.bodyHiddenChildElms=i,this.events={},h(this.modal,"glightbox-"+this.settings.skin),this.settings.closeButton&&g&&(this.events.close=a("click",{onElement:g,withCallback:function(t,i){t.preventDefault(),e.close()}})),g&&!this.settings.closeButton&&g.parentNode.removeChild(g),this.nextButton&&(this.events.next=a("click",{onElement:this.nextButton,withCallback:function(t,i){t.preventDefault(),e.nextSlide()}})),this.prevButton&&(this.events.prev=a("click",{onElement:this.prevButton,withCallback:function(t,i){t.preventDefault(),e.prevSlide()}})),this.settings.closeOnOutsideClick&&(this.events.outClose=a("click",{onElement:d,withCallback:function(t,i){e.preventOutsideClick||c(document.body,"glightbox-mobile")||u(t.target,".ginner-container")||u(t.target,".gbtn")||c(t.target,"gnext")||c(t.target,"gprev")||e.close()}})),o(this.elements,(function(t,i){e.slidesContainer.appendChild(t.instance.create()),t.slideNode=e.slidesContainer.querySelectorAll(".gslide")[i]})),K&&h(document.body,"glightbox-touch"),this.events.resize=a("resize",{onElement:window,withCallback:function(){e.resize()}}),this.built=!0}},{key:"resize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if((e=e||this.activeSlide)&&!c(e,"zoomed")){var t=y(),i=e.querySelector(".gvideo-wrapper"),n=e.querySelector(".gslide-image"),s=this.slideDescription,l=t.width,o=t.height;if(l<=768?h(document.body,"glightbox-mobile"):d(document.body,"glightbox-mobile"),i||n){var r=!1;if(s&&(c(s,"description-bottom")||c(s,"description-top"))&&!c(s,"gabsolute")&&(r=!0),n)if(l<=768)n.querySelector("img");else if(r){var a=s.offsetHeight,u=n.querySelector("img");u.setAttribute("style","max-height: calc(100vh - ".concat(a,"px)")),s.setAttribute("style","max-width: ".concat(u.offsetWidth,"px;"))}if(i){var g=O(this.settings.plyr.config,"ratio")?this.settings.plyr.config.ratio:"";if(!g){var v=i.clientWidth,f=i.clientHeight,p=v/f;g="".concat(v/p,":").concat(f/p)}var m=g.split(":"),x=this.settings.videosWidth,b=this.settings.videosWidth,S=(b=M(x)||-1!==x.indexOf("px")?parseInt(x):-1!==x.indexOf("vw")?l*parseInt(x)/100:-1!==x.indexOf("vh")?o*parseInt(x)/100:-1!==x.indexOf("%")?l*parseInt(x)/100:parseInt(i.clientWidth))/(parseInt(m[0])/parseInt(m[1]));if(S=Math.floor(S),r&&(o-=s.offsetHeight),b>l||S>o||ob){var w=i.offsetWidth,T=i.offsetHeight,C=o/T,k={width:w*C,height:T*C};i.parentNode.setAttribute("style","max-width: ".concat(k.width,"px")),r&&s.setAttribute("style","max-width: ".concat(k.width,"px;"))}else i.parentNode.style.maxWidth="".concat(x),r&&s.setAttribute("style","max-width: ".concat(x,";"))}}}}},{key:"reload",value:function(){this.init()}},{key:"updateNavigationClasses",value:function(){var e=this.loop();d(this.nextButton,"disabled"),d(this.prevButton,"disabled"),0==this.index&&this.elements.length-1==0?(h(this.prevButton,"disabled"),h(this.nextButton,"disabled")):0!==this.index||e?this.index!==this.elements.length-1||e||h(this.nextButton,"disabled"):h(this.prevButton,"disabled")}},{key:"loop",value:function(){var e=O(this.settings,"loopAtEnd")?this.settings.loopAtEnd:null;return e=O(this.settings,"loop")?this.settings.loop:e,e}},{key:"close",value:function(){var e=this;if(!this.lightboxOpen){if(this.events){for(var t in this.events)this.events.hasOwnProperty(t)&&this.events[t].destroy();this.events=null}return!1}if(this.closing)return!1;this.closing=!0,this.slidePlayerPause(this.activeSlide),this.fullElementsList&&(this.elements=this.fullElementsList),this.bodyHiddenChildElms.length&&o(this.bodyHiddenChildElms,(function(e){e.removeAttribute("aria-hidden")})),h(this.modal,"glightbox-closing"),g(this.overlay,"none"==this.settings.openEffect?"none":this.settings.cssEfects.fade.out),g(this.activeSlide,this.settings.cssEfects[this.settings.closeEffect].out,(function(){if(e.activeSlide=null,e.prevActiveSlideIndex=null,e.prevActiveSlide=null,e.built=!1,e.events){for(var t in e.events)e.events.hasOwnProperty(t)&&e.events[t].destroy();e.events=null}var i=document.body;d(Q,"glightbox-open"),d(i,"glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"),e.modal.parentNode.removeChild(e.modal),e.trigger("close"),T(e.settings.onClose)&&e.settings.onClose();var n=document.querySelector(".gcss-styles");n&&n.parentNode.removeChild(n),e.lightboxOpen=!1,e.closing=null}))}},{key:"destroy",value:function(){this.close(),this.clearAllEvents(),this.baseEvents&&this.baseEvents.destroy()}},{key:"on",value:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!e||!T(t))throw new TypeError("Event name and callback must be defined");this.apiEvents.push({evt:e,once:i,callback:t})}},{key:"once",value:function(e,t){this.on(e,t,!0)}},{key:"trigger",value:function(e){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=[];o(this.apiEvents,(function(t,s){var l=t.evt,o=t.once,r=t.callback;l==e&&(r(i),o&&n.push(s))})),n.length&&o(n,(function(e){return t.apiEvents.splice(e,1)}))}},{key:"clearAllEvents",value:function(){this.apiEvents.splice(0,this.apiEvents.length)}},{key:"version",value:function(){return"3.1.1"}}]),e}();return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=new te(e);return t.init(),t}})); diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.ar.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.ar.min.js new file mode 100755 index 0000000..9b06c26 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.ar.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ar=function(){this.pipeline.reset(),this.pipeline.add(e.ar.trimmer,e.ar.stopWordFilter,e.ar.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ar.stemmer))},e.ar.wordCharacters="ء-ٛٱـ",e.ar.trimmer=e.trimmerSupport.generateTrimmer(e.ar.wordCharacters),e.Pipeline.registerFunction(e.ar.trimmer,"trimmer-ar"),e.ar.stemmer=function(){var e=this;return e.result=!1,e.preRemoved=!1,e.sufRemoved=!1,e.pre={pre1:"ف ك ب و س ل ن ا ي ت",pre2:"ال لل",pre3:"بال وال فال تال كال ولل",pre4:"فبال كبال وبال وكال"},e.suf={suf1:"ه ك ت ن ا ي",suf2:"نك نه ها وك يا اه ون ين تن تم نا وا ان كم كن ني نن ما هم هن تك ته ات يه",suf3:"تين كهم نيه نهم ونه وها يهم ونا ونك وني وهم تكم تنا تها تني تهم كما كها ناه نكم هنا تان يها",suf4:"كموه ناها ونني ونهم تكما تموه تكاه كماه ناكم ناهم نيها وننا"},e.patterns=JSON.parse('{"pt43":[{"pt":[{"c":"ا","l":1}]},{"pt":[{"c":"ا,ت,ن,ي","l":0}],"mPt":[{"c":"ف","l":0,"m":1},{"c":"ع","l":1,"m":2},{"c":"ل","l":2,"m":3}]},{"pt":[{"c":"و","l":2}],"mPt":[{"c":"ف","l":0,"m":0},{"c":"ع","l":1,"m":1},{"c":"ل","l":2,"m":3}]},{"pt":[{"c":"ا","l":2}]},{"pt":[{"c":"ي","l":2}],"mPt":[{"c":"ف","l":0,"m":0},{"c":"ع","l":1,"m":1},{"c":"ا","l":2},{"c":"ل","l":3,"m":3}]},{"pt":[{"c":"م","l":0}]}],"pt53":[{"pt":[{"c":"ت","l":0},{"c":"ا","l":2}]},{"pt":[{"c":"ا,ن,ت,ي","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":0},{"c":"ا","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":3},{"c":"ل","l":3,"m":4},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":0},{"c":"ا","l":3}],"mPt":[{"c":"ف","l":0,"m":1},{"c":"ع","l":1,"m":2},{"c":"ل","l":2,"m":4}]},{"pt":[{"c":"ا","l":3},{"c":"ن","l":4}]},{"pt":[{"c":"ت","l":0},{"c":"ي","l":3}]},{"pt":[{"c":"م","l":0},{"c":"و","l":3}]},{"pt":[{"c":"ا","l":1},{"c":"و","l":3}]},{"pt":[{"c":"و","l":1},{"c":"ا","l":2}]},{"pt":[{"c":"م","l":0},{"c":"ا","l":3}]},{"pt":[{"c":"م","l":0},{"c":"ي","l":3}]},{"pt":[{"c":"ا","l":2},{"c":"ن","l":3}]},{"pt":[{"c":"م","l":0},{"c":"ن","l":1}],"mPt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ف","l":2,"m":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"م","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"م","l":0},{"c":"ا","l":2}]},{"pt":[{"c":"م","l":1},{"c":"ا","l":3}]},{"pt":[{"c":"ي,ت,ا,ن","l":0},{"c":"ت","l":1}],"mPt":[{"c":"ف","l":0,"m":2},{"c":"ع","l":1,"m":3},{"c":"ا","l":2},{"c":"ل","l":3,"m":4}]},{"pt":[{"c":"ت,ي,ا,ن","l":0},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ت","l":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":2},{"c":"ي","l":3}]},{"pt":[{"c":"ا,ي,ت,ن","l":0},{"c":"ن","l":1}],"mPt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ف","l":2,"m":2},{"c":"ع","l":3,"m":3},{"c":"ا","l":4},{"c":"ل","l":5,"m":4}]},{"pt":[{"c":"ا","l":3},{"c":"ء","l":4}]}],"pt63":[{"pt":[{"c":"ا","l":0},{"c":"ت","l":2},{"c":"ا","l":4}]},{"pt":[{"c":"ا,ت,ن,ي","l":0},{"c":"س","l":1},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ف","l":3,"m":3},{"c":"ع","l":4,"m":4},{"c":"ا","l":5},{"c":"ل","l":6,"m":5}]},{"pt":[{"c":"ا,ن,ت,ي","l":0},{"c":"و","l":3}]},{"pt":[{"c":"م","l":0},{"c":"س","l":1},{"c":"ت","l":2}],"mPt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ف","l":3,"m":3},{"c":"ع","l":4,"m":4},{"c":"ا","l":5},{"c":"ل","l":6,"m":5}]},{"pt":[{"c":"ي","l":1},{"c":"ي","l":3},{"c":"ا","l":4},{"c":"ء","l":5}]},{"pt":[{"c":"ا","l":0},{"c":"ن","l":1},{"c":"ا","l":4}]}],"pt54":[{"pt":[{"c":"ت","l":0}]},{"pt":[{"c":"ا,ي,ت,ن","l":0}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":2},{"c":"ل","l":3,"m":3},{"c":"ر","l":4,"m":4},{"c":"ا","l":5},{"c":"ر","l":6,"m":4}]},{"pt":[{"c":"م","l":0}],"mPt":[{"c":"ا","l":0},{"c":"ف","l":1,"m":1},{"c":"ع","l":2,"m":2},{"c":"ل","l":3,"m":3},{"c":"ر","l":4,"m":4},{"c":"ا","l":5},{"c":"ر","l":6,"m":4}]},{"pt":[{"c":"ا","l":2}]},{"pt":[{"c":"ا","l":0},{"c":"ن","l":2}]}],"pt64":[{"pt":[{"c":"ا","l":0},{"c":"ا","l":4}]},{"pt":[{"c":"م","l":0},{"c":"ت","l":1}]}],"pt73":[{"pt":[{"c":"ا","l":0},{"c":"س","l":1},{"c":"ت","l":2},{"c":"ا","l":5}]}],"pt75":[{"pt":[{"c":"ا","l":0},{"c":"ا","l":5}]}]}'),e.execArray=["cleanWord","removeDiacritics","cleanAlef","removeStopWords","normalizeHamzaAndAlef","removeStartWaw","removePre432","removeEndTaa","wordCheck"],e.stem=function(){var r=0;for(e.result=!1,e.preRemoved=!1,e.sufRemoved=!1;r=0)return!0},e.normalizeHamzaAndAlef=function(){return e.word=e.word.replace("ؤ","ء"),e.word=e.word.replace("ئ","ء"),e.word=e.word.replace(/([\u0627])\1+/gi,"ا"),!1},e.removeEndTaa=function(){return!(e.word.length>2)||(e.word=e.word.replace(/[\u0627]$/,""),e.word=e.word.replace("ة",""),!1)},e.removeStartWaw=function(){return e.word.length>3&&"و"==e.word[0]&&"و"==e.word[1]&&(e.word=e.word.slice(1)),!1},e.removePre432=function(){var r=e.word;if(e.word.length>=7){var t=new RegExp("^("+e.pre.pre4.split(" ").join("|")+")");e.word=e.word.replace(t,"")}if(e.word==r&&e.word.length>=6){var c=new RegExp("^("+e.pre.pre3.split(" ").join("|")+")");e.word=e.word.replace(c,"")}if(e.word==r&&e.word.length>=5){var l=new RegExp("^("+e.pre.pre2.split(" ").join("|")+")");e.word=e.word.replace(l,"")}return r!=e.word&&(e.preRemoved=!0),!1},e.patternCheck=function(r){for(var t=0;t3){var t=new RegExp("^("+e.pre.pre1.split(" ").join("|")+")");e.word=e.word.replace(t,"")}return r!=e.word&&(e.preRemoved=!0),!1},e.removeSuf1=function(){var r=e.word;if(0==e.sufRemoved&&e.word.length>3){var t=new RegExp("("+e.suf.suf1.split(" ").join("|")+")$");e.word=e.word.replace(t,"")}return r!=e.word&&(e.sufRemoved=!0),!1},e.removeSuf432=function(){var r=e.word;if(e.word.length>=6){var t=new RegExp("("+e.suf.suf4.split(" ").join("|")+")$");e.word=e.word.replace(t,"")}if(e.word==r&&e.word.length>=5){var c=new RegExp("("+e.suf.suf3.split(" ").join("|")+")$");e.word=e.word.replace(c,"")}if(e.word==r&&e.word.length>=4){var l=new RegExp("("+e.suf.suf2.split(" ").join("|")+")$");e.word=e.word.replace(l,"")}return r!=e.word&&(e.sufRemoved=!0),!1},e.wordCheck=function(){for(var r=(e.word,[e.removeSuf432,e.removeSuf1,e.removePre1]),t=0,c=!1;e.word.length>=7&&!e.result&&t=f.limit)return;f.cursor++}for(;!f.out_grouping(w,97,248);){if(f.cursor>=f.limit)return;f.cursor++}d=f.cursor,d=d&&(r=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,e=f.find_among_b(c,32),f.limit_backward=r,e))switch(f.bra=f.cursor,e){case 1:f.slice_del();break;case 2:f.in_grouping_b(p,97,229)&&f.slice_del()}}function t(){var e,r=f.limit-f.cursor;f.cursor>=d&&(e=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,f.find_among_b(l,4)?(f.bra=f.cursor,f.limit_backward=e,f.cursor=f.limit-r,f.cursor>f.limit_backward&&(f.cursor--,f.bra=f.cursor,f.slice_del())):f.limit_backward=e)}function s(){var e,r,i,n=f.limit-f.cursor;if(f.ket=f.cursor,f.eq_s_b(2,"st")&&(f.bra=f.cursor,f.eq_s_b(2,"ig")&&f.slice_del()),f.cursor=f.limit-n,f.cursor>=d&&(r=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,e=f.find_among_b(m,5),f.limit_backward=r,e))switch(f.bra=f.cursor,e){case 1:f.slice_del(),i=f.limit-f.cursor,t(),f.cursor=f.limit-i;break;case 2:f.slice_from("løs")}}function o(){var e;f.cursor>=d&&(e=f.limit_backward,f.limit_backward=d,f.ket=f.cursor,f.out_grouping_b(w,97,248)?(f.bra=f.cursor,u=f.slice_to(u),f.limit_backward=e,f.eq_v_b(u)&&f.slice_del()):f.limit_backward=e)}var a,d,u,c=[new r("hed",-1,1),new r("ethed",0,1),new r("ered",-1,1),new r("e",-1,1),new r("erede",3,1),new r("ende",3,1),new r("erende",5,1),new r("ene",3,1),new r("erne",3,1),new r("ere",3,1),new r("en",-1,1),new r("heden",10,1),new r("eren",10,1),new r("er",-1,1),new r("heder",13,1),new r("erer",13,1),new r("s",-1,2),new r("heds",16,1),new r("es",16,1),new r("endes",18,1),new r("erendes",19,1),new r("enes",18,1),new r("ernes",18,1),new r("eres",18,1),new r("ens",16,1),new r("hedens",24,1),new r("erens",24,1),new r("ers",16,1),new r("ets",16,1),new r("erets",28,1),new r("et",-1,1),new r("eret",30,1)],l=[new r("gd",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1)],m=[new r("ig",-1,1),new r("lig",0,1),new r("elig",1,1),new r("els",-1,1),new r("løst",-1,2)],w=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],p=[239,254,42,3,0,0,0,0,0,0,0,0,0,0,0,0,16],f=new i;this.setCurrent=function(e){f.setCurrent(e)},this.getCurrent=function(){return f.getCurrent()},this.stem=function(){var r=f.cursor;return e(),f.limit_backward=r,f.cursor=f.limit,n(),f.cursor=f.limit,t(),f.cursor=f.limit,s(),f.cursor=f.limit,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.da.stemmer,"stemmer-da"),e.da.stopWordFilter=e.generateStopWordFilter("ad af alle alt anden at blev blive bliver da de dem den denne der deres det dette dig din disse dog du efter eller en end er et for fra ham han hans har havde have hende hendes her hos hun hvad hvis hvor i ikke ind jeg jer jo kunne man mange med meget men mig min mine mit mod ned noget nogle nu når og også om op os over på selv sig sin sine sit skal skulle som sådan thi til ud under var vi vil ville vor være været".split(" ")),e.Pipeline.registerFunction(e.da.stopWordFilter,"stopWordFilter-da")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.de.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.de.min.js new file mode 100755 index 0000000..f3b5c10 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.de.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `German` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.de=function(){this.pipeline.reset(),this.pipeline.add(e.de.trimmer,e.de.stopWordFilter,e.de.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.de.stemmer))},e.de.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.de.trimmer=e.trimmerSupport.generateTrimmer(e.de.wordCharacters),e.Pipeline.registerFunction(e.de.trimmer,"trimmer-de"),e.de.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!v.eq_s(1,e)||(v.ket=v.cursor,!v.in_grouping(p,97,252)))&&(v.slice_from(r),v.cursor=n,!0)}function i(){for(var r,n,i,s,t=v.cursor;;)if(r=v.cursor,v.bra=r,v.eq_s(1,"ß"))v.ket=v.cursor,v.slice_from("ss");else{if(r>=v.limit)break;v.cursor=r+1}for(v.cursor=t;;)for(n=v.cursor;;){if(i=v.cursor,v.in_grouping(p,97,252)){if(s=v.cursor,v.bra=s,e("u","U",i))break;if(v.cursor=s,e("y","Y",i))break}if(i>=v.limit)return void(v.cursor=n);v.cursor=i+1}}function s(){for(;!v.in_grouping(p,97,252);){if(v.cursor>=v.limit)return!0;v.cursor++}for(;!v.out_grouping(p,97,252);){if(v.cursor>=v.limit)return!0;v.cursor++}return!1}function t(){m=v.limit,l=m;var e=v.cursor+3;0<=e&&e<=v.limit&&(d=e,s()||(m=v.cursor,m=v.limit)return;v.cursor++}}}function c(){return m<=v.cursor}function u(){return l<=v.cursor}function a(){var e,r,n,i,s=v.limit-v.cursor;if(v.ket=v.cursor,(e=v.find_among_b(w,7))&&(v.bra=v.cursor,c()))switch(e){case 1:v.slice_del();break;case 2:v.slice_del(),v.ket=v.cursor,v.eq_s_b(1,"s")&&(v.bra=v.cursor,v.eq_s_b(3,"nis")&&v.slice_del());break;case 3:v.in_grouping_b(g,98,116)&&v.slice_del()}if(v.cursor=v.limit-s,v.ket=v.cursor,(e=v.find_among_b(f,4))&&(v.bra=v.cursor,c()))switch(e){case 1:v.slice_del();break;case 2:if(v.in_grouping_b(k,98,116)){var t=v.cursor-3;v.limit_backward<=t&&t<=v.limit&&(v.cursor=t,v.slice_del())}}if(v.cursor=v.limit-s,v.ket=v.cursor,(e=v.find_among_b(_,8))&&(v.bra=v.cursor,u()))switch(e){case 1:v.slice_del(),v.ket=v.cursor,v.eq_s_b(2,"ig")&&(v.bra=v.cursor,r=v.limit-v.cursor,v.eq_s_b(1,"e")||(v.cursor=v.limit-r,u()&&v.slice_del()));break;case 2:n=v.limit-v.cursor,v.eq_s_b(1,"e")||(v.cursor=v.limit-n,v.slice_del());break;case 3:if(v.slice_del(),v.ket=v.cursor,i=v.limit-v.cursor,!v.eq_s_b(2,"er")&&(v.cursor=v.limit-i,!v.eq_s_b(2,"en")))break;v.bra=v.cursor,c()&&v.slice_del();break;case 4:v.slice_del(),v.ket=v.cursor,e=v.find_among_b(b,2),e&&(v.bra=v.cursor,u()&&1==e&&v.slice_del())}}var d,l,m,h=[new r("",-1,6),new r("U",0,2),new r("Y",0,1),new r("ä",0,3),new r("ö",0,4),new r("ü",0,5)],w=[new r("e",-1,2),new r("em",-1,1),new r("en",-1,2),new r("ern",-1,1),new r("er",-1,1),new r("s",-1,3),new r("es",5,2)],f=[new r("en",-1,1),new r("er",-1,1),new r("st",-1,2),new r("est",2,1)],b=[new r("ig",-1,1),new r("lich",-1,1)],_=[new r("end",-1,1),new r("ig",-1,2),new r("ung",-1,1),new r("lich",-1,3),new r("isch",-1,2),new r("ik",-1,2),new r("heit",-1,3),new r("keit",-1,4)],p=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32,8],g=[117,30,5],k=[117,30,4],v=new n;this.setCurrent=function(e){v.setCurrent(e)},this.getCurrent=function(){return v.getCurrent()},this.stem=function(){var e=v.cursor;return i(),v.cursor=e,t(),v.limit_backward=e,v.cursor=v.limit,a(),v.cursor=v.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.de.stemmer,"stemmer-de"),e.de.stopWordFilter=e.generateStopWordFilter("aber alle allem allen aller alles als also am an ander andere anderem anderen anderer anderes anderm andern anderr anders auch auf aus bei bin bis bist da damit dann das dasselbe dazu daß dein deine deinem deinen deiner deines dem demselben den denn denselben der derer derselbe derselben des desselben dessen dich die dies diese dieselbe dieselben diesem diesen dieser dieses dir doch dort du durch ein eine einem einen einer eines einig einige einigem einigen einiger einiges einmal er es etwas euch euer eure eurem euren eurer eures für gegen gewesen hab habe haben hat hatte hatten hier hin hinter ich ihm ihn ihnen ihr ihre ihrem ihren ihrer ihres im in indem ins ist jede jedem jeden jeder jedes jene jenem jenen jener jenes jetzt kann kein keine keinem keinen keiner keines können könnte machen man manche manchem manchen mancher manches mein meine meinem meinen meiner meines mich mir mit muss musste nach nicht nichts noch nun nur ob oder ohne sehr sein seine seinem seinen seiner seines selbst sich sie sind so solche solchem solchen solcher solches soll sollte sondern sonst um und uns unse unsem unsen unser unses unter viel vom von vor war waren warst was weg weil weiter welche welchem welchen welcher welches wenn werde werden wie wieder will wir wird wirst wo wollen wollte während würde würden zu zum zur zwar zwischen über".split(" ")),e.Pipeline.registerFunction(e.de.stopWordFilter,"stopWordFilter-de")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.du.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.du.min.js new file mode 100755 index 0000000..49a0f3f --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.du.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Dutch` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");console.warn('[Lunr Languages] Please use the "nl" instead of the "du". The "nl" code is the standard code for Dutch language, and "du" will be removed in the next major versions.'),e.du=function(){this.pipeline.reset(),this.pipeline.add(e.du.trimmer,e.du.stopWordFilter,e.du.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.du.stemmer))},e.du.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.du.trimmer=e.trimmerSupport.generateTrimmer(e.du.wordCharacters),e.Pipeline.registerFunction(e.du.trimmer,"trimmer-du"),e.du.stemmer=function(){var r=e.stemmerSupport.Among,i=e.stemmerSupport.SnowballProgram,n=new function(){function e(){for(var e,r,i,o=C.cursor;;){if(C.bra=C.cursor,e=C.find_among(b,11))switch(C.ket=C.cursor,e){case 1:C.slice_from("a");continue;case 2:C.slice_from("e");continue;case 3:C.slice_from("i");continue;case 4:C.slice_from("o");continue;case 5:C.slice_from("u");continue;case 6:if(C.cursor>=C.limit)break;C.cursor++;continue}break}for(C.cursor=o,C.bra=o,C.eq_s(1,"y")?(C.ket=C.cursor,C.slice_from("Y")):C.cursor=o;;)if(r=C.cursor,C.in_grouping(q,97,232)){if(i=C.cursor,C.bra=i,C.eq_s(1,"i"))C.ket=C.cursor,C.in_grouping(q,97,232)&&(C.slice_from("I"),C.cursor=r);else if(C.cursor=i,C.eq_s(1,"y"))C.ket=C.cursor,C.slice_from("Y"),C.cursor=r;else if(n(r))break}else if(n(r))break}function n(e){return C.cursor=e,e>=C.limit||(C.cursor++,!1)}function o(){_=C.limit,f=_,t()||(_=C.cursor,_<3&&(_=3),t()||(f=C.cursor))}function t(){for(;!C.in_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}for(;!C.out_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}function s(){for(var e;;)if(C.bra=C.cursor,e=C.find_among(p,3))switch(C.ket=C.cursor,e){case 1:C.slice_from("y");break;case 2:C.slice_from("i");break;case 3:if(C.cursor>=C.limit)return;C.cursor++}}function u(){return _<=C.cursor}function c(){return f<=C.cursor}function a(){var e=C.limit-C.cursor;C.find_among_b(g,3)&&(C.cursor=C.limit-e,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del()))}function l(){var e;w=!1,C.ket=C.cursor,C.eq_s_b(1,"e")&&(C.bra=C.cursor,u()&&(e=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-e,C.slice_del(),w=!0,a())))}function m(){var e;u()&&(e=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-e,C.eq_s_b(3,"gem")||(C.cursor=C.limit-e,C.slice_del(),a())))}function d(){var e,r,i,n,o,t,s=C.limit-C.cursor;if(C.ket=C.cursor,e=C.find_among_b(h,5))switch(C.bra=C.cursor,e){case 1:u()&&C.slice_from("heid");break;case 2:m();break;case 3:u()&&C.out_grouping_b(z,97,232)&&C.slice_del()}if(C.cursor=C.limit-s,l(),C.cursor=C.limit-s,C.ket=C.cursor,C.eq_s_b(4,"heid")&&(C.bra=C.cursor,c()&&(r=C.limit-C.cursor,C.eq_s_b(1,"c")||(C.cursor=C.limit-r,C.slice_del(),C.ket=C.cursor,C.eq_s_b(2,"en")&&(C.bra=C.cursor,m())))),C.cursor=C.limit-s,C.ket=C.cursor,e=C.find_among_b(k,6))switch(C.bra=C.cursor,e){case 1:if(c()){if(C.slice_del(),i=C.limit-C.cursor,C.ket=C.cursor,C.eq_s_b(2,"ig")&&(C.bra=C.cursor,c()&&(n=C.limit-C.cursor,!C.eq_s_b(1,"e")))){C.cursor=C.limit-n,C.slice_del();break}C.cursor=C.limit-i,a()}break;case 2:c()&&(o=C.limit-C.cursor,C.eq_s_b(1,"e")||(C.cursor=C.limit-o,C.slice_del()));break;case 3:c()&&(C.slice_del(),l());break;case 4:c()&&C.slice_del();break;case 5:c()&&w&&C.slice_del()}C.cursor=C.limit-s,C.out_grouping_b(j,73,232)&&(t=C.limit-C.cursor,C.find_among_b(v,4)&&C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-t,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del())))}var f,_,w,b=[new r("",-1,6),new r("á",0,1),new r("ä",0,1),new r("é",0,2),new r("ë",0,2),new r("í",0,3),new r("ï",0,3),new r("ó",0,4),new r("ö",0,4),new r("ú",0,5),new r("ü",0,5)],p=[new r("",-1,3),new r("I",0,2),new r("Y",0,1)],g=[new r("dd",-1,-1),new r("kk",-1,-1),new r("tt",-1,-1)],h=[new r("ene",-1,2),new r("se",-1,3),new r("en",-1,2),new r("heden",2,1),new r("s",-1,3)],k=[new r("end",-1,1),new r("ig",-1,2),new r("ing",-1,1),new r("lijk",-1,3),new r("baar",-1,4),new r("bar",-1,5)],v=[new r("aa",-1,-1),new r("ee",-1,-1),new r("oo",-1,-1),new r("uu",-1,-1)],q=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],j=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],z=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],C=new i;this.setCurrent=function(e){C.setCurrent(e)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var r=C.cursor;return e(),C.cursor=r,o(),C.limit_backward=r,C.cursor=C.limit,d(),C.cursor=C.limit_backward,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.du.stemmer,"stemmer-du"),e.du.stopWordFilter=e.generateStopWordFilter(" aan al alles als altijd andere ben bij daar dan dat de der deze die dit doch doen door dus een eens en er ge geen geweest haar had heb hebben heeft hem het hier hij hoe hun iemand iets ik in is ja je kan kon kunnen maar me meer men met mij mijn moet na naar niet niets nog nu of om omdat onder ons ook op over reeds te tegen toch toen tot u uit uw van veel voor want waren was wat werd wezen wie wil worden wordt zal ze zelf zich zij zijn zo zonder zou".split(" ")),e.Pipeline.registerFunction(e.du.stopWordFilter,"stopWordFilter-du")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.el.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.el.min.js new file mode 100755 index 0000000..ace017b --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.el.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.el=function(){this.pipeline.reset(),void 0===this.searchPipeline&&this.pipeline.add(e.el.trimmer,e.el.normilizer),this.pipeline.add(e.el.stopWordFilter,e.el.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.el.stemmer))},e.el.wordCharacters="A-Za-zΑαΒβΓγΔδΕεΖζΗηΘθΙιΚκΛλΜμΝνΞξΟοΠπΡρΣσςΤτΥυΦφΧχΨψΩωΆάΈέΉήΊίΌόΎύΏώΪΐΫΰΐΰ",e.el.trimmer=e.trimmerSupport.generateTrimmer(e.el.wordCharacters),e.Pipeline.registerFunction(e.el.trimmer,"trimmer-el"),e.el.stemmer=function(){function e(e){return s.test(e)}function t(e){return/[ΑΕΗΙΟΥΩ]$/.test(e)}function r(e){return/[ΑΕΗΙΟΩ]$/.test(e)}function n(n){var s=n;if(n.length<3)return s;if(!e(n))return s;if(i.indexOf(n)>=0)return s;var u=new RegExp("(.*)("+Object.keys(l).join("|")+")$"),o=u.exec(s);return null!==o&&(s=o[1]+l[o[2]]),null!==(o=/^(.+?)(ΑΔΕΣ|ΑΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΚ|ΜΑΜ|ΜΑΝ|ΜΠΑΜΠ|ΠΑΤΕΡ|ΓΙΑΓΙ|ΝΤΑΝΤ|ΚΥΡ|ΘΕΙ|ΠΕΘΕΡ|ΜΟΥΣΑΜ|ΚΑΠΛΑΜ|ΠΑΡ|ΨΑΡ|ΤΖΟΥΡ|ΤΑΜΠΟΥΡ|ΓΑΛΑΤ|ΦΑΦΛΑΤ)$/.test(o[1])||(s+="ΑΔ")),null!==(o=/^(.+?)(ΕΔΕΣ|ΕΔΩΝ)$/.exec(s))&&(s=o[1],/(ΟΠ|ΙΠ|ΕΜΠ|ΥΠ|ΓΗΠ|ΔΑΠ|ΚΡΑΣΠ|ΜΙΛ)$/.test(o[1])&&(s+="ΕΔ")),null!==(o=/^(.+?)(ΟΥΔΕΣ|ΟΥΔΩΝ)$/.exec(s))&&(s=o[1],/(ΑΡΚ|ΚΑΛΙΑΚ|ΠΕΤΑΛ|ΛΙΧ|ΠΛΕΞ|ΣΚ|Σ|ΦΛ|ΦΡ|ΒΕΛ|ΛΟΥΛ|ΧΝ|ΣΠ|ΤΡΑΓ|ΦΕ)$/.test(o[1])&&(s+="ΟΥΔ")),null!==(o=/^(.+?)(ΕΩΣ|ΕΩΝ|ΕΑΣ|ΕΑ)$/.exec(s))&&(s=o[1],/^(Θ|Δ|ΕΛ|ΓΑΛ|Ν|Π|ΙΔ|ΠΑΡ|ΣΤΕΡ|ΟΡΦ|ΑΝΔΡ|ΑΝΤΡ)$/.test(o[1])&&(s+="Ε")),null!==(o=/^(.+?)(ΕΙΟ|ΕΙΟΣ|ΕΙΟΙ|ΕΙΑ|ΕΙΑΣ|ΕΙΕΣ|ΕΙΟΥ|ΕΙΟΥΣ|ΕΙΩΝ)$/.exec(s))&&o[1].length>4&&(s=o[1]),null!==(o=/^(.+?)(ΙΟΥΣ|ΙΑΣ|ΙΕΣ|ΙΟΣ|ΙΟΥ|ΙΟΙ|ΙΩΝ|ΙΟΝ|ΙΑ|ΙΟ)$/.exec(s))&&(s=o[1],(t(s)||s.length<2||/^(ΑΓ|ΑΓΓΕΛ|ΑΓΡ|ΑΕΡ|ΑΘΛ|ΑΚΟΥΣ|ΑΞ|ΑΣ|Β|ΒΙΒΛ|ΒΥΤ|Γ|ΓΙΑΓ|ΓΩΝ|Δ|ΔΑΝ|ΔΗΛ|ΔΗΜ|ΔΟΚΙΜ|ΕΛ|ΖΑΧΑΡ|ΗΛ|ΗΠ|ΙΔ|ΙΣΚ|ΙΣΤ|ΙΟΝ|ΙΩΝ|ΚΙΜΩΛ|ΚΟΛΟΝ|ΚΟΡ|ΚΤΗΡ|ΚΥΡ|ΛΑΓ|ΛΟΓ|ΜΑΓ|ΜΠΑΝ|ΜΠΡ|ΝΑΥΤ|ΝΟΤ|ΟΠΑΛ|ΟΞ|ΟΡ|ΟΣ|ΠΑΝΑΓ|ΠΑΤΡ|ΠΗΛ|ΠΗΝ|ΠΛΑΙΣ|ΠΟΝΤ|ΡΑΔ|ΡΟΔ|ΣΚ|ΣΚΟΡΠ|ΣΟΥΝ|ΣΠΑΝ|ΣΤΑΔ|ΣΥΡ|ΤΗΛ|ΤΙΜ|ΤΟΚ|ΤΟΠ|ΤΡΟΧ|ΦΙΛ|ΦΩΤ|Χ|ΧΙΛ|ΧΡΩΜ|ΧΩΡ)$/.test(o[1]))&&(s+="Ι"),/^(ΠΑΛ)$/.test(o[1])&&(s+="ΑΙ")),null!==(o=/^(.+?)(ΙΚΟΣ|ΙΚΟΝ|ΙΚΕΙΣ|ΙΚΟΙ|ΙΚΕΣ|ΙΚΟΥΣ|ΙΚΗ|ΙΚΗΣ|ΙΚΟ|ΙΚΑ|ΙΚΟΥ|ΙΚΩΝ|ΙΚΩΣ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΑΔ|ΑΛ|ΑΜΑΝ|ΑΜΕΡ|ΑΜΜΟΧΑΛ|ΑΝΗΘ|ΑΝΤΙΔ|ΑΠΛ|ΑΤΤ|ΑΦΡ|ΒΑΣ|ΒΡΩΜ|ΓΕΝ|ΓΕΡ|Δ|ΔΙΚΑΝ|ΔΥΤ|ΕΙΔ|ΕΝΔ|ΕΞΩΔ|ΗΘ|ΘΕΤ|ΚΑΛΛΙΝ|ΚΑΛΠ|ΚΑΤΑΔ|ΚΟΥΖΙΝ|ΚΡ|ΚΩΔ|ΛΟΓ|Μ|ΜΕΡ|ΜΟΝΑΔ|ΜΟΥΛ|ΜΟΥΣ|ΜΠΑΓΙΑΤ|ΜΠΑΝ|ΜΠΟΛ|ΜΠΟΣ|ΜΥΣΤ|Ν|ΝΙΤ|ΞΙΚ|ΟΠΤ|ΠΑΝ|ΠΕΤΣ|ΠΙΚΑΝΤ|ΠΙΤΣ|ΠΛΑΣΤ|ΠΛΙΑΤΣ|ΠΟΝΤ|ΠΟΣΤΕΛΝ|ΠΡΩΤΟΔ|ΣΕΡΤ|ΣΗΜΑΝΤ|ΣΤΑΤ|ΣΥΝΑΔ|ΣΥΝΟΜΗΛ|ΤΕΛ|ΤΕΧΝ|ΤΡΟΠ|ΤΣΑΜ|ΥΠΟΔ|Φ|ΦΙΛΟΝ|ΦΥΛΟΔ|ΦΥΣ|ΧΑΣ)$/.test(o[1])||/(ΦΟΙΝ)$/.test(o[1]))&&(s+="ΙΚ")),"ΑΓΑΜΕ"===s&&(s="ΑΓΑΜ"),null!==(o=/^(.+?)(ΑΓΑΜΕ|ΗΣΑΜΕ|ΟΥΣΑΜΕ|ΗΚΑΜΕ|ΗΘΗΚΑΜΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΑΜΕ)$/.exec(s))&&(s=o[1],/^(ΑΝΑΠ|ΑΠΟΘ|ΑΠΟΚ|ΑΠΟΣΤ|ΒΟΥΒ|ΞΕΘ|ΟΥΛ|ΠΕΘ|ΠΙΚΡ|ΠΟΤ|ΣΙΧ|Χ)$/.test(o[1])&&(s+="ΑΜ")),null!==(o=/^(.+?)(ΑΓΑΝΕ|ΗΣΑΝΕ|ΟΥΣΑΝΕ|ΙΟΝΤΑΝΕ|ΙΟΤΑΝΕ|ΙΟΥΝΤΑΝΕ|ΟΝΤΑΝΕ|ΟΤΑΝΕ|ΟΥΝΤΑΝΕ|ΗΚΑΝΕ|ΗΘΗΚΑΝΕ)$/.exec(s))&&(s=o[1],/^(ΤΡ|ΤΣ)$/.test(o[1])&&(s+="ΑΓΑΝ")),null!==(o=/^(.+?)(ΑΝΕ)$/.exec(s))&&(s=o[1],(r(s)||/^(ΒΕΤΕΡ|ΒΟΥΛΚ|ΒΡΑΧΜ|Γ|ΔΡΑΔΟΥΜ|Θ|ΚΑΛΠΟΥΖ|ΚΑΣΤΕΛ|ΚΟΡΜΟΡ|ΛΑΟΠΛ|ΜΩΑΜΕΘ|Μ|ΜΟΥΣΟΥΛΜΑΝ|ΟΥΛ|Π|ΠΕΛΕΚ|ΠΛ|ΠΟΛΙΣ|ΠΟΡΤΟΛ|ΣΑΡΑΚΑΤΣ|ΣΟΥΛΤ|ΤΣΑΡΛΑΤ|ΟΡΦ|ΤΣΙΓΓ|ΤΣΟΠ|ΦΩΤΟΣΤΕΦ|Χ|ΨΥΧΟΠΛ|ΑΓ|ΟΡΦ|ΓΑΛ|ΓΕΡ|ΔΕΚ|ΔΙΠΛ|ΑΜΕΡΙΚΑΝ|ΟΥΡ|ΠΙΘ|ΠΟΥΡΙΤ|Σ|ΖΩΝΤ|ΙΚ|ΚΑΣΤ|ΚΟΠ|ΛΙΧ|ΛΟΥΘΗΡ|ΜΑΙΝΤ|ΜΕΛ|ΣΙΓ|ΣΠ|ΣΤΕΓ|ΤΡΑΓ|ΤΣΑΓ|Φ|ΕΡ|ΑΔΑΠ|ΑΘΙΓΓ|ΑΜΗΧ|ΑΝΙΚ|ΑΝΟΡΓ|ΑΠΗΓ|ΑΠΙΘ|ΑΤΣΙΓΓ|ΒΑΣ|ΒΑΣΚ|ΒΑΘΥΓΑΛ|ΒΙΟΜΗΧ|ΒΡΑΧΥΚ|ΔΙΑΤ|ΔΙΑΦ|ΕΝΟΡΓ|ΘΥΣ|ΚΑΠΝΟΒΙΟΜΗΧ|ΚΑΤΑΓΑΛ|ΚΛΙΒ|ΚΟΙΛΑΡΦ|ΛΙΒ|ΜΕΓΛΟΒΙΟΜΗΧ|ΜΙΚΡΟΒΙΟΜΗΧ|ΝΤΑΒ|ΞΗΡΟΚΛΙΒ|ΟΛΙΓΟΔΑΜ|ΟΛΟΓΑΛ|ΠΕΝΤΑΡΦ|ΠΕΡΗΦ|ΠΕΡΙΤΡ|ΠΛΑΤ|ΠΟΛΥΔΑΠ|ΠΟΛΥΜΗΧ|ΣΤΕΦ|ΤΑΒ|ΤΕΤ|ΥΠΕΡΗΦ|ΥΠΟΚΟΠ|ΧΑΜΗΛΟΔΑΠ|ΨΗΛΟΤΑΒ)$/.test(o[1]))&&(s+="ΑΝ")),null!==(o=/^(.+?)(ΗΣΕΤΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΕΤΕ)$/.exec(s))&&(s=o[1],(r(s)||/(ΟΔ|ΑΙΡ|ΦΟΡ|ΤΑΘ|ΔΙΑΘ|ΣΧ|ΕΝΔ|ΕΥΡ|ΤΙΘ|ΥΠΕΡΘ|ΡΑΘ|ΕΝΘ|ΡΟΘ|ΣΘ|ΠΥΡ|ΑΙΝ|ΣΥΝΔ|ΣΥΝ|ΣΥΝΘ|ΧΩΡ|ΠΟΝ|ΒΡ|ΚΑΘ|ΕΥΘ|ΕΚΘ|ΝΕΤ|ΡΟΝ|ΑΡΚ|ΒΑΡ|ΒΟΛ|ΩΦΕΛ)$/.test(o[1])||/^(ΑΒΑΡ|ΒΕΝ|ΕΝΑΡ|ΑΒΡ|ΑΔ|ΑΘ|ΑΝ|ΑΠΛ|ΒΑΡΟΝ|ΝΤΡ|ΣΚ|ΚΟΠ|ΜΠΟΡ|ΝΙΦ|ΠΑΓ|ΠΑΡΑΚΑΛ|ΣΕΡΠ|ΣΚΕΛ|ΣΥΡΦ|ΤΟΚ|Υ|Δ|ΕΜ|ΘΑΡΡ|Θ)$/.test(o[1]))&&(s+="ΕΤ")),null!==(o=/^(.+?)(ΟΝΤΑΣ|ΩΝΤΑΣ)$/.exec(s))&&(s=o[1],/^ΑΡΧ$/.test(o[1])&&(s+="ΟΝΤ"),/ΚΡΕ$/.test(o[1])&&(s+="ΩΝΤ")),null!==(o=/^(.+?)(ΟΜΑΣΤΕ|ΙΟΜΑΣΤΕ)$/.exec(s))&&(s=o[1],/^ΟΝ$/.test(o[1])&&(s+="ΟΜΑΣΤ")),null!==(o=/^(.+?)(ΙΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(Π|ΑΠ|ΣΥΜΠ|ΑΣΥΜΠ|ΑΚΑΤΑΠ|ΑΜΕΤΑΜΦ)$/.test(o[1])&&(s+="ΙΕΣΤ")),null!==(o=/^(.+?)(ΕΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΛ|ΑΡ|ΕΚΤΕΛ|Ζ|Μ|Ξ|ΠΑΡΑΚΑΛ|ΠΡΟ|ΝΙΣ)$/.test(o[1])&&(s+="ΕΣΤ")),null!==(o=/^(.+?)(ΗΘΗΚΑ|ΗΘΗΚΕΣ|ΗΘΗΚΕ)$/.exec(s))&&(s=o[1]),null!==(o=/^(.+?)(ΗΚΑ|ΗΚΕΣ|ΗΚΕ)$/.exec(s))&&(s=o[1],(/(ΣΚΩΛ|ΣΚΟΥΛ|ΝΑΡΘ|ΣΦ|ΟΘ|ΠΙΘ)$/.test(o[1])||/^(ΔΙΑΘ|Θ|ΠΑΡΑΚΑΤΑΘ|ΠΡΟΣΘ|ΣΥΝΘ)$/.test(o[1]))&&(s+="ΗΚ")),null!==(o=/^(.+?)(ΟΥΣΑ|ΟΥΣΕΣ|ΟΥΣΕ)$/.exec(s))&&(s=o[1],(t(s)||/^(ΦΑΡΜΑΚ|ΧΑΔ|ΑΓΚ|ΑΝΑΡΡ|ΒΡΟΜ|ΕΚΛΙΠ|ΛΑΜΠΙΔ|ΛΕΧ|Μ|ΠΑΤ|Ρ|Λ|ΜΕΔ|ΜΕΣΑΖ|ΥΠΟΤΕΙΝ|ΑΜ|ΑΙΘ|ΑΝΗΚ|ΔΕΣΠΟΖ|ΕΝΔΙΑΦΕΡ)$/.test(o[1])||/(ΠΟΔΑΡ|ΒΛΕΠ|ΠΑΝΤΑΧ|ΦΡΥΔ|ΜΑΝΤΙΛ|ΜΑΛΛ|ΚΥΜΑΤ|ΛΑΧ|ΛΗΓ|ΦΑΓ|ΟΜ|ΠΡΩΤ)$/.test(o[1]))&&(s+="ΟΥΣ")),null!==(o=/^(.+?)(ΑΓΑ|ΑΓΕΣ|ΑΓΕ)$/.exec(s))&&(s=o[1],(/^(ΑΒΑΣΤ|ΠΟΛΥΦ|ΑΔΗΦ|ΠΑΜΦ|Ρ|ΑΣΠ|ΑΦ|ΑΜΑΛ|ΑΜΑΛΛΙ|ΑΝΥΣΤ|ΑΠΕΡ|ΑΣΠΑΡ|ΑΧΑΡ|ΔΕΡΒΕΝ|ΔΡΟΣΟΠ|ΞΕΦ|ΝΕΟΠ|ΝΟΜΟΤ|ΟΛΟΠ|ΟΜΟΤ|ΠΡΟΣΤ|ΠΡΟΣΩΠΟΠ|ΣΥΜΠ|ΣΥΝΤ|Τ|ΥΠΟΤ|ΧΑΡ|ΑΕΙΠ|ΑΙΜΟΣΤ|ΑΝΥΠ|ΑΠΟΤ|ΑΡΤΙΠ|ΔΙΑΤ|ΕΝ|ΕΠΙΤ|ΚΡΟΚΑΛΟΠ|ΣΙΔΗΡΟΠ|Λ|ΝΑΥ|ΟΥΛΑΜ|ΟΥΡ|Π|ΤΡ|Μ)$/.test(o[1])||/(ΟΦ|ΠΕΛ|ΧΟΡΤ|ΛΛ|ΣΦ|ΡΠ|ΦΡ|ΠΡ|ΛΟΧ|ΣΜΗΝ)$/.test(o[1])&&!/^(ΨΟΦ|ΝΑΥΛΟΧ)$/.test(o[1])||/(ΚΟΛΛ)$/.test(o[1]))&&(s+="ΑΓ")),null!==(o=/^(.+?)(ΗΣΕ|ΗΣΟΥ|ΗΣΑ)$/.exec(s))&&(s=o[1],/^(Ν|ΧΕΡΣΟΝ|ΔΩΔΕΚΑΝ|ΕΡΗΜΟΝ|ΜΕΓΑΛΟΝ|ΕΠΤΑΝ|Ι)$/.test(o[1])&&(s+="ΗΣ")),null!==(o=/^(.+?)(ΗΣΤΕ)$/.exec(s))&&(s=o[1],/^(ΑΣΒ|ΣΒ|ΑΧΡ|ΧΡ|ΑΠΛ|ΑΕΙΜΝ|ΔΥΣΧΡ|ΕΥΧΡ|ΚΟΙΝΟΧΡ|ΠΑΛΙΜΨ)$/.test(o[1])&&(s+="ΗΣΤ")),null!==(o=/^(.+?)(ΟΥΝΕ|ΗΣΟΥΝΕ|ΗΘΟΥΝΕ)$/.exec(s))&&(s=o[1],/^(Ν|Ρ|ΣΠΙ|ΣΤΡΑΒΟΜΟΥΤΣ|ΚΑΚΟΜΟΥΤΣ|ΕΞΩΝ)$/.test(o[1])&&(s+="ΟΥΝ")),null!==(o=/^(.+?)(ΟΥΜΕ|ΗΣΟΥΜΕ|ΗΘΟΥΜΕ)$/.exec(s))&&(s=o[1],/^(ΠΑΡΑΣΟΥΣ|Φ|Χ|ΩΡΙΟΠΛ|ΑΖ|ΑΛΛΟΣΟΥΣ|ΑΣΟΥΣ)$/.test(o[1])&&(s+="ΟΥΜ")),null!=(o=/^(.+?)(ΜΑΤΟΙ|ΜΑΤΟΥΣ|ΜΑΤΟ|ΜΑΤΑ|ΜΑΤΩΣ|ΜΑΤΩΝ|ΜΑΤΟΣ|ΜΑΤΕΣ|ΜΑΤΗ|ΜΑΤΗΣ|ΜΑΤΟΥ)$/.exec(s))&&(s=o[1]+"Μ",/^(ΓΡΑΜ)$/.test(o[1])?s+="Α":/^(ΓΕ|ΣΤΑ)$/.test(o[1])&&(s+="ΑΤ")),null!==(o=/^(.+?)(ΟΥΑ)$/.exec(s))&&(s=o[1]+"ΟΥ"),n.length===s.length&&null!==(o=/^(.+?)(Α|ΑΓΑΤΕ|ΑΓΑΝ|ΑΕΙ|ΑΜΑΙ|ΑΝ|ΑΣ|ΑΣΑΙ|ΑΤΑΙ|ΑΩ|Ε|ΕΙ|ΕΙΣ|ΕΙΤΕ|ΕΣΑΙ|ΕΣ|ΕΤΑΙ|Ι|ΙΕΜΑΙ|ΙΕΜΑΣΤΕ|ΙΕΤΑΙ|ΙΕΣΑΙ|ΙΕΣΑΣΤΕ|ΙΟΜΑΣΤΑΝ|ΙΟΜΟΥΝ|ΙΟΜΟΥΝΑ|ΙΟΝΤΑΝ|ΙΟΝΤΟΥΣΑΝ|ΙΟΣΑΣΤΑΝ|ΙΟΣΑΣΤΕ|ΙΟΣΟΥΝ|ΙΟΣΟΥΝΑ|ΙΟΤΑΝ|ΙΟΥΜΑ|ΙΟΥΜΑΣΤΕ|ΙΟΥΝΤΑΙ|ΙΟΥΝΤΑΝ|Η|ΗΔΕΣ|ΗΔΩΝ|ΗΘΕΙ|ΗΘΕΙΣ|ΗΘΕΙΤΕ|ΗΘΗΚΑΤΕ|ΗΘΗΚΑΝ|ΗΘΟΥΝ|ΗΘΩ|ΗΚΑΤΕ|ΗΚΑΝ|ΗΣ|ΗΣΑΝ|ΗΣΑΤΕ|ΗΣΕΙ|ΗΣΕΣ|ΗΣΟΥΝ|ΗΣΩ|Ο|ΟΙ|ΟΜΑΙ|ΟΜΑΣΤΑΝ|ΟΜΟΥΝ|ΟΜΟΥΝΑ|ΟΝΤΑΙ|ΟΝΤΑΝ|ΟΝΤΟΥΣΑΝ|ΟΣ|ΟΣΑΣΤΑΝ|ΟΣΑΣΤΕ|ΟΣΟΥΝ|ΟΣΟΥΝΑ|ΟΤΑΝ|ΟΥ|ΟΥΜΑΙ|ΟΥΜΑΣΤΕ|ΟΥΝ|ΟΥΝΤΑΙ|ΟΥΝΤΑΝ|ΟΥΣ|ΟΥΣΑΝ|ΟΥΣΑΤΕ|Υ||ΥΑ|ΥΣ|Ω|ΩΝ|ΟΙΣ)$/.exec(s))&&(s=o[1]),null!=(o=/^(.+?)(ΕΣΤΕΡ|ΕΣΤΑΤ|ΟΤΕΡ|ΟΤΑΤ|ΥΤΕΡ|ΥΤΑΤ|ΩΤΕΡ|ΩΤΑΤ)$/.exec(s))&&(/^(ΕΞ|ΕΣ|ΑΝ|ΚΑΤ|Κ|ΠΡ)$/.test(o[1])||(s=o[1]),/^(ΚΑ|Μ|ΕΛΕ|ΛΕ|ΔΕ)$/.test(o[1])&&(s+="ΥΤ")),s}var l={"ΦΑΓΙΑ":"ΦΑ","ΦΑΓΙΟΥ":"ΦΑ","ΦΑΓΙΩΝ":"ΦΑ","ΣΚΑΓΙΑ":"ΣΚΑ","ΣΚΑΓΙΟΥ":"ΣΚΑ","ΣΚΑΓΙΩΝ":"ΣΚΑ","ΣΟΓΙΟΥ":"ΣΟ","ΣΟΓΙΑ":"ΣΟ","ΣΟΓΙΩΝ":"ΣΟ","ΤΑΤΟΓΙΑ":"ΤΑΤΟ","ΤΑΤΟΓΙΟΥ":"ΤΑΤΟ","ΤΑΤΟΓΙΩΝ":"ΤΑΤΟ","ΚΡΕΑΣ":"ΚΡΕ","ΚΡΕΑΤΟΣ":"ΚΡΕ","ΚΡΕΑΤΑ":"ΚΡΕ","ΚΡΕΑΤΩΝ":"ΚΡΕ","ΠΕΡΑΣ":"ΠΕΡ","ΠΕΡΑΤΟΣ":"ΠΕΡ","ΠΕΡΑΤΑ":"ΠΕΡ","ΠΕΡΑΤΩΝ":"ΠΕΡ","ΤΕΡΑΣ":"ΤΕΡ","ΤΕΡΑΤΟΣ":"ΤΕΡ","ΤΕΡΑΤΑ":"ΤΕΡ","ΤΕΡΑΤΩΝ":"ΤΕΡ","ΦΩΣ":"ΦΩ","ΦΩΤΟΣ":"ΦΩ","ΦΩΤΑ":"ΦΩ","ΦΩΤΩΝ":"ΦΩ","ΚΑΘΕΣΤΩΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΟΣ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΑ":"ΚΑΘΕΣΤ","ΚΑΘΕΣΤΩΤΩΝ":"ΚΑΘΕΣΤ","ΓΕΓΟΝΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΟΣ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΑ":"ΓΕΓΟΝ","ΓΕΓΟΝΟΤΩΝ":"ΓΕΓΟΝ","ΕΥΑ":"ΕΥ"},i=["ΑΚΡΙΒΩΣ","ΑΛΑ","ΑΛΛΑ","ΑΛΛΙΩΣ","ΑΛΛΟΤΕ","ΑΜΑ","ΑΝΩ","ΑΝΑ","ΑΝΑΜΕΣΑ","ΑΝΑΜΕΤΑΞΥ","ΑΝΕΥ","ΑΝΤΙ","ΑΝΤΙΠΕΡΑ","ΑΝΤΙΟ","ΑΞΑΦΝΑ","ΑΠΟ","ΑΠΟΨΕ","ΑΡΑ","ΑΡΑΓΕ","ΑΥΡΙΟ","ΑΦΟΙ","ΑΦΟΥ","ΑΦΟΤΟΥ","ΒΡΕ","ΓΕΙΑ","ΓΙΑ","ΓΙΑΤΙ","ΓΡΑΜΜΑ","ΔΕΗ","ΔΕΝ","ΔΗΛΑΔΗ","ΔΙΧΩΣ","ΔΥΟ","ΕΑΝ","ΕΓΩ","ΕΔΩ","ΕΔΑ","ΕΙΘΕ","ΕΙΜΑΙ","ΕΙΜΑΣΤΕ","ΕΙΣΑΙ","ΕΙΣΑΣΤΕ","ΕΙΝΑΙ","ΕΙΣΤΕ","ΕΙΤΕ","ΕΚΕΙ","ΕΚΟ","ΕΛΑ","ΕΜΑΣ","ΕΜΕΙΣ","ΕΝΤΕΛΩΣ","ΕΝΤΟΣ","ΕΝΤΩΜΕΤΑΞΥ","ΕΝΩ","ΕΞΙ","ΕΞΙΣΟΥ","ΕΞΗΣ","ΕΞΩ","ΕΟΚ","ΕΠΑΝΩ","ΕΠΕΙΔΗ","ΕΠΕΙΤΑ","ΕΠΙ","ΕΠΙΣΗΣ","ΕΠΟΜΕΝΩΣ","ΕΠΤΑ","ΕΣΑΣ","ΕΣΕΙΣ","ΕΣΤΩ","ΕΣΥ","ΕΣΩ","ΕΤΣΙ","ΕΥΓΕ","ΕΦΕ","ΕΦΕΞΗΣ","ΕΧΤΕΣ","ΕΩΣ","ΗΔΗ","ΗΜΙ","ΗΠΑ","ΗΤΟΙ","ΘΕΣ","ΙΔΙΩΣ","ΙΔΗ","ΙΚΑ","ΙΣΩΣ","ΚΑΘΕ","ΚΑΘΕΤΙ","ΚΑΘΟΛΟΥ","ΚΑΘΩΣ","ΚΑΙ","ΚΑΝ","ΚΑΠΟΤΕ","ΚΑΠΟΥ","ΚΑΤΑ","ΚΑΤΙ","ΚΑΤΟΠΙΝ","ΚΑΤΩ","ΚΕΙ","ΚΙΧ","ΚΚΕ","ΚΟΛΑΝ","ΚΥΡΙΩΣ","ΚΩΣ","ΜΑΚΑΡΙ","ΜΑΛΙΣΤΑ","ΜΑΛΛΟΝ","ΜΑΙ","ΜΑΟ","ΜΑΟΥΣ","ΜΑΣ","ΜΕΘΑΥΡΙΟ","ΜΕΣ","ΜΕΣΑ","ΜΕΤΑ","ΜΕΤΑΞΥ","ΜΕΧΡΙ","ΜΗΔΕ","ΜΗΝ","ΜΗΠΩΣ","ΜΗΤΕ","ΜΙΑ","ΜΙΑΣ","ΜΙΣ","ΜΜΕ","ΜΟΛΟΝΟΤΙ","ΜΟΥ","ΜΠΑ","ΜΠΑΣ","ΜΠΟΥΦΑΝ","ΜΠΡΟΣ","ΝΑΙ","ΝΕΣ","ΝΤΑ","ΝΤΕ","ΞΑΝΑ","ΟΗΕ","ΟΚΤΩ","ΟΜΩΣ","ΟΝΕ","ΟΠΑ","ΟΠΟΥ","ΟΠΩΣ","ΟΣΟ","ΟΤΑΝ","ΟΤΕ","ΟΤΙ","ΟΥΤΕ","ΟΧΙ","ΠΑΛΙ","ΠΑΝ","ΠΑΝΟ","ΠΑΝΤΟΤΕ","ΠΑΝΤΟΥ","ΠΑΝΤΩΣ","ΠΑΝΩ","ΠΑΡΑ","ΠΕΡΑ","ΠΕΡΙ","ΠΕΡΙΠΟΥ","ΠΙΑ","ΠΙΟ","ΠΙΣΩ","ΠΛΑΙ","ΠΛΕΟΝ","ΠΛΗΝ","ΠΟΤΕ","ΠΟΥ","ΠΡΟ","ΠΡΟΣ","ΠΡΟΧΤΕΣ","ΠΡΟΧΘΕΣ","ΡΟΔΙ","ΠΩΣ","ΣΑΙ","ΣΑΣ","ΣΑΝ","ΣΕΙΣ","ΣΙΑ","ΣΚΙ","ΣΟΙ","ΣΟΥ","ΣΡΙ","ΣΥΝ","ΣΥΝΑΜΑ","ΣΧΕΔΟΝ","ΤΑΔΕ","ΤΑΞΙ","ΤΑΧΑ","ΤΕΙ","ΤΗΝ","ΤΗΣ","ΤΙΠΟΤΑ","ΤΙΠΟΤΕ","ΤΙΣ","ΤΟΝ","ΤΟΤΕ","ΤΟΥ","ΤΟΥΣ","ΤΣΑ","ΤΣΕ","ΤΣΙ","ΤΣΟΥ","ΤΩΝ","ΥΠΟ","ΥΠΟΨΗ","ΥΠΟΨΙΝ","ΥΣΤΕΡΑ","ΦΕΤΟΣ","ΦΙΣ","ΦΠΑ","ΧΑΦ","ΧΘΕΣ","ΧΤΕΣ","ΧΩΡΙΣ","ΩΣ","ΩΣΑΝ","ΩΣΟΤΟΥ","ΩΣΠΟΥ","ΩΣΤΕ","ΩΣΤΟΣΟ"],s=new RegExp("^[ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ]+$");return function(e){return"function"==typeof e.update?e.update(function(e){return n(e.toUpperCase()).toLowerCase()}):n(e.toUpperCase()).toLowerCase()}}(),e.Pipeline.registerFunction(e.el.stemmer,"stemmer-el"),e.el.stopWordFilter=e.generateStopWordFilter("αλλα αν αντι απο αυτα αυτεσ αυτη αυτο αυτοι αυτοσ αυτουσ αυτων για δε δεν εαν ειμαι ειμαστε ειναι εισαι ειστε εκεινα εκεινεσ εκεινη εκεινο εκεινοι εκεινοσ εκεινουσ εκεινων ενω επι η θα ισωσ κ και κατα κι μα με μετα μη μην να ο οι ομωσ οπωσ οσο οτι παρα ποια ποιεσ ποιο ποιοι ποιοσ ποιουσ ποιων που προσ πωσ σε στη στην στο στον τα την τησ το τον τοτε του των ωσ".split(" ")),e.Pipeline.registerFunction(e.el.stopWordFilter,"stopWordFilter-el"),e.el.normilizer=function(){var e={"Ά":"Α","ά":"α","Έ":"Ε","έ":"ε","Ή":"Η","ή":"η","Ί":"Ι","ί":"ι","Ό":"Ο","ο":"ο","Ύ":"Υ","ύ":"υ","Ώ":"Ω","ώ":"ω","Ϊ":"Ι","ϊ":"ι","Ϋ":"Υ","ϋ":"υ","ΐ":"ι","ΰ":"υ"};return function(t){if("function"==typeof t.update)return t.update(function(t){for(var r="",n=0;n=A.limit)return!0;A.cursor++}return!1}return!0}function n(){if(A.in_grouping(x,97,252)){var s=A.cursor;if(e()){if(A.cursor=s,!A.in_grouping(x,97,252))return!0;for(;!A.out_grouping(x,97,252);){if(A.cursor>=A.limit)return!0;A.cursor++}}return!1}return!0}function i(){var s,r=A.cursor;if(n()){if(A.cursor=r,!A.out_grouping(x,97,252))return;if(s=A.cursor,e()){if(A.cursor=s,!A.in_grouping(x,97,252)||A.cursor>=A.limit)return;A.cursor++}}g=A.cursor}function a(){for(;!A.in_grouping(x,97,252);){if(A.cursor>=A.limit)return!1;A.cursor++}for(;!A.out_grouping(x,97,252);){if(A.cursor>=A.limit)return!1;A.cursor++}return!0}function t(){var e=A.cursor;g=A.limit,p=g,v=g,i(),A.cursor=e,a()&&(p=A.cursor,a()&&(v=A.cursor))}function o(){for(var e;;){if(A.bra=A.cursor,e=A.find_among(k,6))switch(A.ket=A.cursor,e){case 1:A.slice_from("a");continue;case 2:A.slice_from("e");continue;case 3:A.slice_from("i");continue;case 4:A.slice_from("o");continue;case 5:A.slice_from("u");continue;case 6:if(A.cursor>=A.limit)break;A.cursor++;continue}break}}function u(){return g<=A.cursor}function w(){return p<=A.cursor}function c(){return v<=A.cursor}function m(){var e;if(A.ket=A.cursor,A.find_among_b(y,13)&&(A.bra=A.cursor,(e=A.find_among_b(q,11))&&u()))switch(e){case 1:A.bra=A.cursor,A.slice_from("iendo");break;case 2:A.bra=A.cursor,A.slice_from("ando");break;case 3:A.bra=A.cursor,A.slice_from("ar");break;case 4:A.bra=A.cursor,A.slice_from("er");break;case 5:A.bra=A.cursor,A.slice_from("ir");break;case 6:A.slice_del();break;case 7:A.eq_s_b(1,"u")&&A.slice_del()}}function l(e,s){if(!c())return!0;A.slice_del(),A.ket=A.cursor;var r=A.find_among_b(e,s);return r&&(A.bra=A.cursor,1==r&&c()&&A.slice_del()),!1}function d(e){return!c()||(A.slice_del(),A.ket=A.cursor,A.eq_s_b(2,e)&&(A.bra=A.cursor,c()&&A.slice_del()),!1)}function b(){var e;if(A.ket=A.cursor,e=A.find_among_b(S,46)){switch(A.bra=A.cursor,e){case 1:if(!c())return!1;A.slice_del();break;case 2:if(d("ic"))return!1;break;case 3:if(!c())return!1;A.slice_from("log");break;case 4:if(!c())return!1;A.slice_from("u");break;case 5:if(!c())return!1;A.slice_from("ente");break;case 6:if(!w())return!1;A.slice_del(),A.ket=A.cursor,e=A.find_among_b(C,4),e&&(A.bra=A.cursor,c()&&(A.slice_del(),1==e&&(A.ket=A.cursor,A.eq_s_b(2,"at")&&(A.bra=A.cursor,c()&&A.slice_del()))));break;case 7:if(l(P,3))return!1;break;case 8:if(l(F,3))return!1;break;case 9:if(d("at"))return!1}return!0}return!1}function f(){var e,s;if(A.cursor>=g&&(s=A.limit_backward,A.limit_backward=g,A.ket=A.cursor,e=A.find_among_b(W,12),A.limit_backward=s,e)){if(A.bra=A.cursor,1==e){if(!A.eq_s_b(1,"u"))return!1;A.slice_del()}return!0}return!1}function _(){var e,s,r,n;if(A.cursor>=g&&(s=A.limit_backward,A.limit_backward=g,A.ket=A.cursor,e=A.find_among_b(L,96),A.limit_backward=s,e))switch(A.bra=A.cursor,e){case 1:r=A.limit-A.cursor,A.eq_s_b(1,"u")?(n=A.limit-A.cursor,A.eq_s_b(1,"g")?A.cursor=A.limit-n:A.cursor=A.limit-r):A.cursor=A.limit-r,A.bra=A.cursor;case 2:A.slice_del()}}function h(){var e,s;if(A.ket=A.cursor,e=A.find_among_b(z,8))switch(A.bra=A.cursor,e){case 1:u()&&A.slice_del();break;case 2:u()&&(A.slice_del(),A.ket=A.cursor,A.eq_s_b(1,"u")&&(A.bra=A.cursor,s=A.limit-A.cursor,A.eq_s_b(1,"g")&&(A.cursor=A.limit-s,u()&&A.slice_del())))}}var v,p,g,k=[new s("",-1,6),new s("á",0,1),new s("é",0,2),new s("í",0,3),new s("ó",0,4),new s("ú",0,5)],y=[new s("la",-1,-1),new s("sela",0,-1),new s("le",-1,-1),new s("me",-1,-1),new s("se",-1,-1),new s("lo",-1,-1),new s("selo",5,-1),new s("las",-1,-1),new s("selas",7,-1),new s("les",-1,-1),new s("los",-1,-1),new s("selos",10,-1),new s("nos",-1,-1)],q=[new s("ando",-1,6),new s("iendo",-1,6),new s("yendo",-1,7),new s("ándo",-1,2),new s("iéndo",-1,1),new s("ar",-1,6),new s("er",-1,6),new s("ir",-1,6),new s("ár",-1,3),new s("ér",-1,4),new s("ír",-1,5)],C=[new s("ic",-1,-1),new s("ad",-1,-1),new s("os",-1,-1),new s("iv",-1,1)],P=[new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,1)],F=[new s("ic",-1,1),new s("abil",-1,1),new s("iv",-1,1)],S=[new s("ica",-1,1),new s("ancia",-1,2),new s("encia",-1,5),new s("adora",-1,2),new s("osa",-1,1),new s("ista",-1,1),new s("iva",-1,9),new s("anza",-1,1),new s("logía",-1,3),new s("idad",-1,8),new s("able",-1,1),new s("ible",-1,1),new s("ante",-1,2),new s("mente",-1,7),new s("amente",13,6),new s("ación",-1,2),new s("ución",-1,4),new s("ico",-1,1),new s("ismo",-1,1),new s("oso",-1,1),new s("amiento",-1,1),new s("imiento",-1,1),new s("ivo",-1,9),new s("ador",-1,2),new s("icas",-1,1),new s("ancias",-1,2),new s("encias",-1,5),new s("adoras",-1,2),new s("osas",-1,1),new s("istas",-1,1),new s("ivas",-1,9),new s("anzas",-1,1),new s("logías",-1,3),new s("idades",-1,8),new s("ables",-1,1),new s("ibles",-1,1),new s("aciones",-1,2),new s("uciones",-1,4),new s("adores",-1,2),new s("antes",-1,2),new s("icos",-1,1),new s("ismos",-1,1),new s("osos",-1,1),new s("amientos",-1,1),new s("imientos",-1,1),new s("ivos",-1,9)],W=[new s("ya",-1,1),new s("ye",-1,1),new s("yan",-1,1),new s("yen",-1,1),new s("yeron",-1,1),new s("yendo",-1,1),new s("yo",-1,1),new s("yas",-1,1),new s("yes",-1,1),new s("yais",-1,1),new s("yamos",-1,1),new s("yó",-1,1)],L=[new s("aba",-1,2),new s("ada",-1,2),new s("ida",-1,2),new s("ara",-1,2),new s("iera",-1,2),new s("ía",-1,2),new s("aría",5,2),new s("ería",5,2),new s("iría",5,2),new s("ad",-1,2),new s("ed",-1,2),new s("id",-1,2),new s("ase",-1,2),new s("iese",-1,2),new s("aste",-1,2),new s("iste",-1,2),new s("an",-1,2),new s("aban",16,2),new s("aran",16,2),new s("ieran",16,2),new s("ían",16,2),new s("arían",20,2),new s("erían",20,2),new s("irían",20,2),new s("en",-1,1),new s("asen",24,2),new s("iesen",24,2),new s("aron",-1,2),new s("ieron",-1,2),new s("arán",-1,2),new s("erán",-1,2),new s("irán",-1,2),new s("ado",-1,2),new s("ido",-1,2),new s("ando",-1,2),new s("iendo",-1,2),new s("ar",-1,2),new s("er",-1,2),new s("ir",-1,2),new s("as",-1,2),new s("abas",39,2),new s("adas",39,2),new s("idas",39,2),new s("aras",39,2),new s("ieras",39,2),new s("ías",39,2),new s("arías",45,2),new s("erías",45,2),new s("irías",45,2),new s("es",-1,1),new s("ases",49,2),new s("ieses",49,2),new s("abais",-1,2),new s("arais",-1,2),new s("ierais",-1,2),new s("íais",-1,2),new s("aríais",55,2),new s("eríais",55,2),new s("iríais",55,2),new s("aseis",-1,2),new s("ieseis",-1,2),new s("asteis",-1,2),new s("isteis",-1,2),new s("áis",-1,2),new s("éis",-1,1),new s("aréis",64,2),new s("eréis",64,2),new s("iréis",64,2),new s("ados",-1,2),new s("idos",-1,2),new s("amos",-1,2),new s("ábamos",70,2),new s("áramos",70,2),new s("iéramos",70,2),new s("íamos",70,2),new s("aríamos",74,2),new s("eríamos",74,2),new s("iríamos",74,2),new s("emos",-1,1),new s("aremos",78,2),new s("eremos",78,2),new s("iremos",78,2),new s("ásemos",78,2),new s("iésemos",78,2),new s("imos",-1,2),new s("arás",-1,2),new s("erás",-1,2),new s("irás",-1,2),new s("ís",-1,2),new s("ará",-1,2),new s("erá",-1,2),new s("irá",-1,2),new s("aré",-1,2),new s("eré",-1,2),new s("iré",-1,2),new s("ió",-1,2)],z=[new s("a",-1,1),new s("e",-1,2),new s("o",-1,1),new s("os",-1,1),new s("á",-1,1),new s("é",-1,2),new s("í",-1,1),new s("ó",-1,1)],x=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,10],A=new r;this.setCurrent=function(e){A.setCurrent(e)},this.getCurrent=function(){return A.getCurrent()},this.stem=function(){var e=A.cursor;return t(),A.limit_backward=e,A.cursor=A.limit,m(),A.cursor=A.limit,b()||(A.cursor=A.limit,f()||(A.cursor=A.limit,_())),A.cursor=A.limit,h(),A.cursor=A.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.es.stemmer,"stemmer-es"),e.es.stopWordFilter=e.generateStopWordFilter("a al algo algunas algunos ante antes como con contra cual cuando de del desde donde durante e el ella ellas ellos en entre era erais eran eras eres es esa esas ese eso esos esta estaba estabais estaban estabas estad estada estadas estado estados estamos estando estar estaremos estará estarán estarás estaré estaréis estaría estaríais estaríamos estarían estarías estas este estemos esto estos estoy estuve estuviera estuvierais estuvieran estuvieras estuvieron estuviese estuvieseis estuviesen estuvieses estuvimos estuviste estuvisteis estuviéramos estuviésemos estuvo está estábamos estáis están estás esté estéis estén estés fue fuera fuerais fueran fueras fueron fuese fueseis fuesen fueses fui fuimos fuiste fuisteis fuéramos fuésemos ha habida habidas habido habidos habiendo habremos habrá habrán habrás habré habréis habría habríais habríamos habrían habrías habéis había habíais habíamos habían habías han has hasta hay haya hayamos hayan hayas hayáis he hemos hube hubiera hubierais hubieran hubieras hubieron hubiese hubieseis hubiesen hubieses hubimos hubiste hubisteis hubiéramos hubiésemos hubo la las le les lo los me mi mis mucho muchos muy más mí mía mías mío míos nada ni no nos nosotras nosotros nuestra nuestras nuestro nuestros o os otra otras otro otros para pero poco por porque que quien quienes qué se sea seamos sean seas seremos será serán serás seré seréis sería seríais seríamos serían serías seáis sido siendo sin sobre sois somos son soy su sus suya suyas suyo suyos sí también tanto te tendremos tendrá tendrán tendrás tendré tendréis tendría tendríais tendríamos tendrían tendrías tened tenemos tenga tengamos tengan tengas tengo tengáis tenida tenidas tenido tenidos teniendo tenéis tenía teníais teníamos tenían tenías ti tiene tienen tienes todo todos tu tus tuve tuviera tuvierais tuvieran tuvieras tuvieron tuviese tuvieseis tuviesen tuvieses tuvimos tuviste tuvisteis tuviéramos tuviésemos tuvo tuya tuyas tuyo tuyos tú un una uno unos vosotras vosotros vuestra vuestras vuestro vuestros y ya yo él éramos".split(" ")),e.Pipeline.registerFunction(e.es.stopWordFilter,"stopWordFilter-es")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.fi.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.fi.min.js new file mode 100755 index 0000000..29f5dfc --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.fi.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Finnish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(i,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():e()(i.lunr)}(this,function(){return function(i){if(void 0===i)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===i.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");i.fi=function(){this.pipeline.reset(),this.pipeline.add(i.fi.trimmer,i.fi.stopWordFilter,i.fi.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(i.fi.stemmer))},i.fi.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",i.fi.trimmer=i.trimmerSupport.generateTrimmer(i.fi.wordCharacters),i.Pipeline.registerFunction(i.fi.trimmer,"trimmer-fi"),i.fi.stemmer=function(){var e=i.stemmerSupport.Among,r=i.stemmerSupport.SnowballProgram,n=new function(){function i(){f=A.limit,d=f,n()||(f=A.cursor,n()||(d=A.cursor))}function n(){for(var i;;){if(i=A.cursor,A.in_grouping(W,97,246))break;if(A.cursor=i,i>=A.limit)return!0;A.cursor++}for(A.cursor=i;!A.out_grouping(W,97,246);){if(A.cursor>=A.limit)return!0;A.cursor++}return!1}function t(){return d<=A.cursor}function s(){var i,e;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(h,10)){switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:if(!A.in_grouping_b(x,97,246))return;break;case 2:if(!t())return}A.slice_del()}else A.limit_backward=e}function o(){var i,e,r;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(v,9))switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:r=A.limit-A.cursor,A.eq_s_b(1,"k")||(A.cursor=A.limit-r,A.slice_del());break;case 2:A.slice_del(),A.ket=A.cursor,A.eq_s_b(3,"kse")&&(A.bra=A.cursor,A.slice_from("ksi"));break;case 3:A.slice_del();break;case 4:A.find_among_b(p,6)&&A.slice_del();break;case 5:A.find_among_b(g,6)&&A.slice_del();break;case 6:A.find_among_b(j,2)&&A.slice_del()}else A.limit_backward=e}function l(){return A.find_among_b(q,7)}function a(){return A.eq_s_b(1,"i")&&A.in_grouping_b(L,97,246)}function u(){var i,e,r;if(A.cursor>=f)if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,i=A.find_among_b(C,30)){switch(A.bra=A.cursor,A.limit_backward=e,i){case 1:if(!A.eq_s_b(1,"a"))return;break;case 2:case 9:if(!A.eq_s_b(1,"e"))return;break;case 3:if(!A.eq_s_b(1,"i"))return;break;case 4:if(!A.eq_s_b(1,"o"))return;break;case 5:if(!A.eq_s_b(1,"ä"))return;break;case 6:if(!A.eq_s_b(1,"ö"))return;break;case 7:if(r=A.limit-A.cursor,!l()&&(A.cursor=A.limit-r,!A.eq_s_b(2,"ie"))){A.cursor=A.limit-r;break}if(A.cursor=A.limit-r,A.cursor<=A.limit_backward){A.cursor=A.limit-r;break}A.cursor--,A.bra=A.cursor;break;case 8:if(!A.in_grouping_b(W,97,246)||!A.out_grouping_b(W,97,246))return}A.slice_del(),k=!0}else A.limit_backward=e}function c(){var i,e,r;if(A.cursor>=d)if(e=A.limit_backward,A.limit_backward=d,A.ket=A.cursor,i=A.find_among_b(P,14)){if(A.bra=A.cursor,A.limit_backward=e,1==i){if(r=A.limit-A.cursor,A.eq_s_b(2,"po"))return;A.cursor=A.limit-r}A.slice_del()}else A.limit_backward=e}function m(){var i;A.cursor>=f&&(i=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,A.find_among_b(F,2)?(A.bra=A.cursor,A.limit_backward=i,A.slice_del()):A.limit_backward=i)}function w(){var i,e,r,n,t,s;if(A.cursor>=f){if(e=A.limit_backward,A.limit_backward=f,A.ket=A.cursor,A.eq_s_b(1,"t")&&(A.bra=A.cursor,r=A.limit-A.cursor,A.in_grouping_b(W,97,246)&&(A.cursor=A.limit-r,A.slice_del(),A.limit_backward=e,n=A.limit-A.cursor,A.cursor>=d&&(A.cursor=d,t=A.limit_backward,A.limit_backward=A.cursor,A.cursor=A.limit-n,A.ket=A.cursor,i=A.find_among_b(S,2))))){if(A.bra=A.cursor,A.limit_backward=t,1==i){if(s=A.limit-A.cursor,A.eq_s_b(2,"po"))return;A.cursor=A.limit-s}return void A.slice_del()}A.limit_backward=e}}function _(){var i,e,r,n;if(A.cursor>=f){for(i=A.limit_backward,A.limit_backward=f,e=A.limit-A.cursor,l()&&(A.cursor=A.limit-e,A.ket=A.cursor,A.cursor>A.limit_backward&&(A.cursor--,A.bra=A.cursor,A.slice_del())),A.cursor=A.limit-e,A.ket=A.cursor,A.in_grouping_b(y,97,228)&&(A.bra=A.cursor,A.out_grouping_b(W,97,246)&&A.slice_del()),A.cursor=A.limit-e,A.ket=A.cursor,A.eq_s_b(1,"j")&&(A.bra=A.cursor,r=A.limit-A.cursor,A.eq_s_b(1,"o")?A.slice_del():(A.cursor=A.limit-r,A.eq_s_b(1,"u")&&A.slice_del())),A.cursor=A.limit-e,A.ket=A.cursor,A.eq_s_b(1,"o")&&(A.bra=A.cursor,A.eq_s_b(1,"j")&&A.slice_del()),A.cursor=A.limit-e,A.limit_backward=i;;){if(n=A.limit-A.cursor,A.out_grouping_b(W,97,246)){A.cursor=A.limit-n;break}if(A.cursor=A.limit-n,A.cursor<=A.limit_backward)return;A.cursor--}A.ket=A.cursor,A.cursor>A.limit_backward&&(A.cursor--,A.bra=A.cursor,b=A.slice_to(),A.eq_v_b(b)&&A.slice_del())}}var k,b,d,f,h=[new e("pa",-1,1),new e("sti",-1,2),new e("kaan",-1,1),new e("han",-1,1),new e("kin",-1,1),new e("hän",-1,1),new e("kään",-1,1),new e("ko",-1,1),new e("pä",-1,1),new e("kö",-1,1)],p=[new e("lla",-1,-1),new e("na",-1,-1),new e("ssa",-1,-1),new e("ta",-1,-1),new e("lta",3,-1),new e("sta",3,-1)],g=[new e("llä",-1,-1),new e("nä",-1,-1),new e("ssä",-1,-1),new e("tä",-1,-1),new e("ltä",3,-1),new e("stä",3,-1)],j=[new e("lle",-1,-1),new e("ine",-1,-1)],v=[new e("nsa",-1,3),new e("mme",-1,3),new e("nne",-1,3),new e("ni",-1,2),new e("si",-1,1),new e("an",-1,4),new e("en",-1,6),new e("än",-1,5),new e("nsä",-1,3)],q=[new e("aa",-1,-1),new e("ee",-1,-1),new e("ii",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1),new e("ää",-1,-1),new e("öö",-1,-1)],C=[new e("a",-1,8),new e("lla",0,-1),new e("na",0,-1),new e("ssa",0,-1),new e("ta",0,-1),new e("lta",4,-1),new e("sta",4,-1),new e("tta",4,9),new e("lle",-1,-1),new e("ine",-1,-1),new e("ksi",-1,-1),new e("n",-1,7),new e("han",11,1),new e("den",11,-1,a),new e("seen",11,-1,l),new e("hen",11,2),new e("tten",11,-1,a),new e("hin",11,3),new e("siin",11,-1,a),new e("hon",11,4),new e("hän",11,5),new e("hön",11,6),new e("ä",-1,8),new e("llä",22,-1),new e("nä",22,-1),new e("ssä",22,-1),new e("tä",22,-1),new e("ltä",26,-1),new e("stä",26,-1),new e("ttä",26,9)],P=[new e("eja",-1,-1),new e("mma",-1,1),new e("imma",1,-1),new e("mpa",-1,1),new e("impa",3,-1),new e("mmi",-1,1),new e("immi",5,-1),new e("mpi",-1,1),new e("impi",7,-1),new e("ejä",-1,-1),new e("mmä",-1,1),new e("immä",10,-1),new e("mpä",-1,1),new e("impä",12,-1)],F=[new e("i",-1,-1),new e("j",-1,-1)],S=[new e("mma",-1,1),new e("imma",0,-1)],y=[17,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8],W=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],L=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],x=[17,97,24,1,0,0,0,0,0,0,0,0,0,0,0,0,8,0,32],A=new r;this.setCurrent=function(i){A.setCurrent(i)},this.getCurrent=function(){return A.getCurrent()},this.stem=function(){var e=A.cursor;return i(),k=!1,A.limit_backward=e,A.cursor=A.limit,s(),A.cursor=A.limit,o(),A.cursor=A.limit,u(),A.cursor=A.limit,c(),A.cursor=A.limit,k?(m(),A.cursor=A.limit):(A.cursor=A.limit,w(),A.cursor=A.limit),_(),!0}};return function(i){return"function"==typeof i.update?i.update(function(i){return n.setCurrent(i),n.stem(),n.getCurrent()}):(n.setCurrent(i),n.stem(),n.getCurrent())}}(),i.Pipeline.registerFunction(i.fi.stemmer,"stemmer-fi"),i.fi.stopWordFilter=i.generateStopWordFilter("ei eivät emme en et ette että he heidän heidät heihin heille heillä heiltä heissä heistä heitä hän häneen hänelle hänellä häneltä hänen hänessä hänestä hänet häntä itse ja johon joiden joihin joiksi joilla joille joilta joina joissa joista joita joka joksi jolla jolle jolta jona jonka jos jossa josta jota jotka kanssa keiden keihin keiksi keille keillä keiltä keinä keissä keistä keitä keneen keneksi kenelle kenellä keneltä kenen kenenä kenessä kenestä kenet ketkä ketkä ketä koska kuin kuka kun me meidän meidät meihin meille meillä meiltä meissä meistä meitä mihin miksi mikä mille millä miltä minkä minkä minua minulla minulle minulta minun minussa minusta minut minuun minä minä missä mistä mitkä mitä mukaan mutta ne niiden niihin niiksi niille niillä niiltä niin niin niinä niissä niistä niitä noiden noihin noiksi noilla noille noilta noin noina noissa noista noita nuo nyt näiden näihin näiksi näille näillä näiltä näinä näissä näistä näitä nämä ole olemme olen olet olette oli olimme olin olisi olisimme olisin olisit olisitte olisivat olit olitte olivat olla olleet ollut on ovat poikki se sekä sen siihen siinä siitä siksi sille sillä sillä siltä sinua sinulla sinulle sinulta sinun sinussa sinusta sinut sinuun sinä sinä sitä tai te teidän teidät teihin teille teillä teiltä teissä teistä teitä tuo tuohon tuoksi tuolla tuolle tuolta tuon tuona tuossa tuosta tuota tähän täksi tälle tällä tältä tämä tämän tänä tässä tästä tätä vaan vai vaikka yli".split(" ")),i.Pipeline.registerFunction(i.fi.stopWordFilter,"stopWordFilter-fi")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.fr.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.fr.min.js new file mode 100755 index 0000000..68cd009 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.fr.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `French` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.fr=function(){this.pipeline.reset(),this.pipeline.add(e.fr.trimmer,e.fr.stopWordFilter,e.fr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.fr.stemmer))},e.fr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.fr.trimmer=e.trimmerSupport.generateTrimmer(e.fr.wordCharacters),e.Pipeline.registerFunction(e.fr.trimmer,"trimmer-fr"),e.fr.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,s){return!(!W.eq_s(1,e)||(W.ket=W.cursor,!W.in_grouping(F,97,251)))&&(W.slice_from(r),W.cursor=s,!0)}function i(e,r,s){return!!W.eq_s(1,e)&&(W.ket=W.cursor,W.slice_from(r),W.cursor=s,!0)}function n(){for(var r,s;;){if(r=W.cursor,W.in_grouping(F,97,251)){if(W.bra=W.cursor,s=W.cursor,e("u","U",r))continue;if(W.cursor=s,e("i","I",r))continue;if(W.cursor=s,i("y","Y",r))continue}if(W.cursor=r,W.bra=r,!e("y","Y",r)){if(W.cursor=r,W.eq_s(1,"q")&&(W.bra=W.cursor,i("u","U",r)))continue;if(W.cursor=r,r>=W.limit)return;W.cursor++}}}function t(){for(;!W.in_grouping(F,97,251);){if(W.cursor>=W.limit)return!0;W.cursor++}for(;!W.out_grouping(F,97,251);){if(W.cursor>=W.limit)return!0;W.cursor++}return!1}function u(){var e=W.cursor;if(q=W.limit,g=q,p=q,W.in_grouping(F,97,251)&&W.in_grouping(F,97,251)&&W.cursor=W.limit){W.cursor=q;break}W.cursor++}while(!W.in_grouping(F,97,251))}q=W.cursor,W.cursor=e,t()||(g=W.cursor,t()||(p=W.cursor))}function o(){for(var e,r;;){if(r=W.cursor,W.bra=r,!(e=W.find_among(h,4)))break;switch(W.ket=W.cursor,e){case 1:W.slice_from("i");break;case 2:W.slice_from("u");break;case 3:W.slice_from("y");break;case 4:if(W.cursor>=W.limit)return;W.cursor++}}}function c(){return q<=W.cursor}function a(){return g<=W.cursor}function l(){return p<=W.cursor}function w(){var e,r;if(W.ket=W.cursor,e=W.find_among_b(C,43)){switch(W.bra=W.cursor,e){case 1:if(!l())return!1;W.slice_del();break;case 2:if(!l())return!1;W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"ic")&&(W.bra=W.cursor,l()?W.slice_del():W.slice_from("iqU"));break;case 3:if(!l())return!1;W.slice_from("log");break;case 4:if(!l())return!1;W.slice_from("u");break;case 5:if(!l())return!1;W.slice_from("ent");break;case 6:if(!c())return!1;if(W.slice_del(),W.ket=W.cursor,e=W.find_among_b(z,6))switch(W.bra=W.cursor,e){case 1:l()&&(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"at")&&(W.bra=W.cursor,l()&&W.slice_del()));break;case 2:l()?W.slice_del():a()&&W.slice_from("eux");break;case 3:l()&&W.slice_del();break;case 4:c()&&W.slice_from("i")}break;case 7:if(!l())return!1;if(W.slice_del(),W.ket=W.cursor,e=W.find_among_b(y,3))switch(W.bra=W.cursor,e){case 1:l()?W.slice_del():W.slice_from("abl");break;case 2:l()?W.slice_del():W.slice_from("iqU");break;case 3:l()&&W.slice_del()}break;case 8:if(!l())return!1;if(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"at")&&(W.bra=W.cursor,l()&&(W.slice_del(),W.ket=W.cursor,W.eq_s_b(2,"ic")))){W.bra=W.cursor,l()?W.slice_del():W.slice_from("iqU");break}break;case 9:W.slice_from("eau");break;case 10:if(!a())return!1;W.slice_from("al");break;case 11:if(l())W.slice_del();else{if(!a())return!1;W.slice_from("eux")}break;case 12:if(!a()||!W.out_grouping_b(F,97,251))return!1;W.slice_del();break;case 13:return c()&&W.slice_from("ant"),!1;case 14:return c()&&W.slice_from("ent"),!1;case 15:return r=W.limit-W.cursor,W.in_grouping_b(F,97,251)&&c()&&(W.cursor=W.limit-r,W.slice_del()),!1}return!0}return!1}function f(){var e,r;if(W.cursor=q){if(s=W.limit_backward,W.limit_backward=q,W.ket=W.cursor,e=W.find_among_b(P,7))switch(W.bra=W.cursor,e){case 1:if(l()){if(i=W.limit-W.cursor,!W.eq_s_b(1,"s")&&(W.cursor=W.limit-i,!W.eq_s_b(1,"t")))break;W.slice_del()}break;case 2:W.slice_from("i");break;case 3:W.slice_del();break;case 4:W.eq_s_b(2,"gu")&&W.slice_del()}W.limit_backward=s}}function b(){var e=W.limit-W.cursor;W.find_among_b(U,5)&&(W.cursor=W.limit-e,W.ket=W.cursor,W.cursor>W.limit_backward&&(W.cursor--,W.bra=W.cursor,W.slice_del()))}function d(){for(var e,r=1;W.out_grouping_b(F,97,251);)r--;if(r<=0){if(W.ket=W.cursor,e=W.limit-W.cursor,!W.eq_s_b(1,"é")&&(W.cursor=W.limit-e,!W.eq_s_b(1,"è")))return;W.bra=W.cursor,W.slice_from("e")}}function k(){if(!w()&&(W.cursor=W.limit,!f()&&(W.cursor=W.limit,!m())))return W.cursor=W.limit,void _();W.cursor=W.limit,W.ket=W.cursor,W.eq_s_b(1,"Y")?(W.bra=W.cursor,W.slice_from("i")):(W.cursor=W.limit,W.eq_s_b(1,"ç")&&(W.bra=W.cursor,W.slice_from("c")))}var p,g,q,v=[new r("col",-1,-1),new r("par",-1,-1),new r("tap",-1,-1)],h=[new r("",-1,4),new r("I",0,1),new r("U",0,2),new r("Y",0,3)],z=[new r("iqU",-1,3),new r("abl",-1,3),new r("Ièr",-1,4),new r("ièr",-1,4),new r("eus",-1,2),new r("iv",-1,1)],y=[new r("ic",-1,2),new r("abil",-1,1),new r("iv",-1,3)],C=[new r("iqUe",-1,1),new r("atrice",-1,2),new r("ance",-1,1),new r("ence",-1,5),new r("logie",-1,3),new r("able",-1,1),new r("isme",-1,1),new r("euse",-1,11),new r("iste",-1,1),new r("ive",-1,8),new r("if",-1,8),new r("usion",-1,4),new r("ation",-1,2),new r("ution",-1,4),new r("ateur",-1,2),new r("iqUes",-1,1),new r("atrices",-1,2),new r("ances",-1,1),new r("ences",-1,5),new r("logies",-1,3),new r("ables",-1,1),new r("ismes",-1,1),new r("euses",-1,11),new r("istes",-1,1),new r("ives",-1,8),new r("ifs",-1,8),new r("usions",-1,4),new r("ations",-1,2),new r("utions",-1,4),new r("ateurs",-1,2),new r("ments",-1,15),new r("ements",30,6),new r("issements",31,12),new r("ités",-1,7),new r("ment",-1,15),new r("ement",34,6),new r("issement",35,12),new r("amment",34,13),new r("emment",34,14),new r("aux",-1,10),new r("eaux",39,9),new r("eux",-1,1),new r("ité",-1,7)],x=[new r("ira",-1,1),new r("ie",-1,1),new r("isse",-1,1),new r("issante",-1,1),new r("i",-1,1),new r("irai",4,1),new r("ir",-1,1),new r("iras",-1,1),new r("ies",-1,1),new r("îmes",-1,1),new r("isses",-1,1),new r("issantes",-1,1),new r("îtes",-1,1),new r("is",-1,1),new r("irais",13,1),new r("issais",13,1),new r("irions",-1,1),new r("issions",-1,1),new r("irons",-1,1),new r("issons",-1,1),new r("issants",-1,1),new r("it",-1,1),new r("irait",21,1),new r("issait",21,1),new r("issant",-1,1),new r("iraIent",-1,1),new r("issaIent",-1,1),new r("irent",-1,1),new r("issent",-1,1),new r("iront",-1,1),new r("ît",-1,1),new r("iriez",-1,1),new r("issiez",-1,1),new r("irez",-1,1),new r("issez",-1,1)],I=[new r("a",-1,3),new r("era",0,2),new r("asse",-1,3),new r("ante",-1,3),new r("ée",-1,2),new r("ai",-1,3),new r("erai",5,2),new r("er",-1,2),new r("as",-1,3),new r("eras",8,2),new r("âmes",-1,3),new r("asses",-1,3),new r("antes",-1,3),new r("âtes",-1,3),new r("ées",-1,2),new r("ais",-1,3),new r("erais",15,2),new r("ions",-1,1),new r("erions",17,2),new r("assions",17,3),new r("erons",-1,2),new r("ants",-1,3),new r("és",-1,2),new r("ait",-1,3),new r("erait",23,2),new r("ant",-1,3),new r("aIent",-1,3),new r("eraIent",26,2),new r("èrent",-1,2),new r("assent",-1,3),new r("eront",-1,2),new r("ât",-1,3),new r("ez",-1,2),new r("iez",32,2),new r("eriez",33,2),new r("assiez",33,3),new r("erez",32,2),new r("é",-1,2)],P=[new r("e",-1,3),new r("Ière",0,2),new r("ière",0,2),new r("ion",-1,1),new r("Ier",-1,2),new r("ier",-1,2),new r("ë",-1,4)],U=[new r("ell",-1,-1),new r("eill",-1,-1),new r("enn",-1,-1),new r("onn",-1,-1),new r("ett",-1,-1)],F=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,128,130,103,8,5],S=[1,65,20,0,0,0,0,0,0,0,0,0,0,0,0,0,128],W=new s;this.setCurrent=function(e){W.setCurrent(e)},this.getCurrent=function(){return W.getCurrent()},this.stem=function(){var e=W.cursor;return n(),W.cursor=e,u(),W.limit_backward=e,W.cursor=W.limit,k(),W.cursor=W.limit,b(),W.cursor=W.limit,d(),W.cursor=W.limit_backward,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.fr.stemmer,"stemmer-fr"),e.fr.stopWordFilter=e.generateStopWordFilter("ai aie aient aies ait as au aura aurai auraient aurais aurait auras aurez auriez aurions aurons auront aux avaient avais avait avec avez aviez avions avons ayant ayez ayons c ce ceci celà ces cet cette d dans de des du elle en es est et eu eue eues eurent eus eusse eussent eusses eussiez eussions eut eux eûmes eût eûtes furent fus fusse fussent fusses fussiez fussions fut fûmes fût fûtes ici il ils j je l la le les leur leurs lui m ma mais me mes moi mon même n ne nos notre nous on ont ou par pas pour qu que quel quelle quelles quels qui s sa sans se sera serai seraient serais serait seras serez seriez serions serons seront ses soi soient sois soit sommes son sont soyez soyons suis sur t ta te tes toi ton tu un une vos votre vous y à étaient étais était étant étiez étions été étée étées étés êtes".split(" ")),e.Pipeline.registerFunction(e.fr.stopWordFilter,"stopWordFilter-fr")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.he.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.he.min.js new file mode 100755 index 0000000..b863d3e --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.he.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.he=function(){this.pipeline.reset(),this.pipeline.add(e.he.trimmer,e.he.stopWordFilter,e.he.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.he.stemmer))},e.he.wordCharacters="֑-״א-תa-zA-Za-zA-Z0-90-9",e.he.trimmer=e.trimmerSupport.generateTrimmer(e.he.wordCharacters),e.Pipeline.registerFunction(e.he.trimmer,"trimmer-he"),e.he.stemmer=function(){var e=this;return e.result=!1,e.preRemoved=!1,e.sufRemoved=!1,e.pre={pre1:"ה ו י ת",pre2:"ב כ ל מ ש כש",pre3:"הב הכ הל המ הש בש לכ",pre4:"וב וכ ול ומ וש",pre5:"מה שה כל",pre6:"מב מכ מל ממ מש",pre7:"בה בו בי בת כה כו כי כת לה לו לי לת",pre8:"ובה ובו ובי ובת וכה וכו וכי וכת ולה ולו ולי ולת"},e.suf={suf1:"ך כ ם ן נ",suf2:"ים ות וך וכ ום ון ונ הם הן יכ יך ינ ים",suf3:"תי תך תכ תם תן תנ",suf4:"ותי ותך ותכ ותם ותן ותנ",suf5:"נו כם כן הם הן",suf6:"ונו וכם וכן והם והן",suf7:"תכם תכן תנו תהם תהן",suf8:"הוא היא הם הן אני אתה את אנו אתם אתן",suf9:"ני נו כי כו כם כן תי תך תכ תם תן",suf10:"י ך כ ם ן נ ת"},e.patterns=JSON.parse('{"hebrewPatterns": [{"pt1": [{"c": "ה", "l": 0}]}, {"pt2": [{"c": "ו", "l": 0}]}, {"pt3": [{"c": "י", "l": 0}]}, {"pt4": [{"c": "ת", "l": 0}]}, {"pt5": [{"c": "מ", "l": 0}]}, {"pt6": [{"c": "ל", "l": 0}]}, {"pt7": [{"c": "ב", "l": 0}]}, {"pt8": [{"c": "כ", "l": 0}]}, {"pt9": [{"c": "ש", "l": 0}]}, {"pt10": [{"c": "כש", "l": 0}]}, {"pt11": [{"c": "בה", "l": 0}]}, {"pt12": [{"c": "וב", "l": 0}]}, {"pt13": [{"c": "וכ", "l": 0}]}, {"pt14": [{"c": "ול", "l": 0}]}, {"pt15": [{"c": "ומ", "l": 0}]}, {"pt16": [{"c": "וש", "l": 0}]}, {"pt17": [{"c": "הב", "l": 0}]}, {"pt18": [{"c": "הכ", "l": 0}]}, {"pt19": [{"c": "הל", "l": 0}]}, {"pt20": [{"c": "המ", "l": 0}]}, {"pt21": [{"c": "הש", "l": 0}]}, {"pt22": [{"c": "מה", "l": 0}]}, {"pt23": [{"c": "שה", "l": 0}]}, {"pt24": [{"c": "כל", "l": 0}]}]}'),e.execArray=["cleanWord","removeDiacritics","removeStopWords","normalizeHebrewCharacters"],e.stem=function(){var r=0;for(e.result=!1,e.preRemoved=!1,e.sufRemoved=!1;r=0)return!0},e.normalizeHebrewCharacters=function(){return e.word=e.word.replace("ך","כ"),e.word=e.word.replace("ם","מ"),e.word=e.word.replace("ן","נ"),e.word=e.word.replace("ף","פ"),e.word=e.word.replace("ץ","צ"),!1},function(r){return"function"==typeof r.update?r.update(function(r){return e.setCurrent(r),e.stem(),e.getCurrent()}):(e.setCurrent(r),e.stem(),e.getCurrent())}}(),e.Pipeline.registerFunction(e.he.stemmer,"stemmer-he"),e.he.stopWordFilter=e.generateStopWordFilter("אבל או אולי אותו אותי אותך אותם אותן אותנו אז אחר אחרות אחרי אחריכן אחרים אחרת אי איזה איך אין איפה אל אלה אלו אם אנחנו אני אף אפשר את אתה אתכם אתכן אתם אתן באיזה באיזו בגלל בין בלבד בעבור בעזרת בכל בכן בלי במידה במקום שבו ברוב בשביל בשעה ש בתוך גם דרך הוא היא היה היי היכן היתה היתי הם הן הנה הסיבה שבגללה הרי ואילו ואת זאת זה זות יהיה יוכל יוכלו יותר מדי יכול יכולה יכולות יכולים יכל יכלה יכלו יש כאן כאשר כולם כולן כזה כי כיצד כך כל כלל כמו כן כפי כש לא לאו לאיזותך לאן לבין לה להיות להם להן לו לזה לזות לי לך לכם לכן למה למעלה למעלה מ למטה למטה מ למעט למקום שבו למרות לנו לעבר לעיכן לפיכך לפני מאד מאחורי מאיזו סיבה מאין מאיפה מבלי מבעד מדוע מה מהיכן מול מחוץ מי מידע מכאן מכל מכן מלבד מן מנין מסוגל מעט מעטים מעל מצד מקום בו מתחת מתי נגד נגר נו עד עז על עלי עליו עליה עליהם עליך עלינו עם עצמה עצמהם עצמהן עצמו עצמי עצמם עצמן עצמנו פה רק שוב של שלה שלהם שלהן שלו שלי שלך שלכה שלכם שלכן שלנו שם תהיה תחת".split(" ")),e.Pipeline.registerFunction(e.he.stopWordFilter,"stopWordFilter-he")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.hi.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.hi.min.js new file mode 100755 index 0000000..7dbc414 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.hi.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hi=function(){this.pipeline.reset(),this.pipeline.add(e.hi.trimmer,e.hi.stopWordFilter,e.hi.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.hi.stemmer))},e.hi.wordCharacters="ऀ-ःऄ-एऐ-टठ-यर-िी-ॏॐ-य़ॠ-९॰-ॿa-zA-Za-zA-Z0-90-9",e.hi.trimmer=e.trimmerSupport.generateTrimmer(e.hi.wordCharacters),e.Pipeline.registerFunction(e.hi.trimmer,"trimmer-hi"),e.hi.stopWordFilter=e.generateStopWordFilter("अत अपना अपनी अपने अभी अंदर आदि आप इत्यादि इन इनका इन्हीं इन्हें इन्हों इस इसका इसकी इसके इसमें इसी इसे उन उनका उनकी उनके उनको उन्हीं उन्हें उन्हों उस उसके उसी उसे एक एवं एस ऐसे और कई कर करता करते करना करने करें कहते कहा का काफ़ी कि कितना किन्हें किन्हों किया किर किस किसी किसे की कुछ कुल के को कोई कौन कौनसा गया घर जब जहाँ जा जितना जिन जिन्हें जिन्हों जिस जिसे जीधर जैसा जैसे जो तक तब तरह तिन तिन्हें तिन्हों तिस तिसे तो था थी थे दबारा दिया दुसरा दूसरे दो द्वारा न नके नहीं ना निहायत नीचे ने पर पहले पूरा पे फिर बनी बही बहुत बाद बाला बिलकुल भी भीतर मगर मानो मे में यदि यह यहाँ यही या यिह ये रखें रहा रहे ऱ्वासा लिए लिये लेकिन व वग़ैरह वर्ग वह वहाँ वहीं वाले वुह वे वो सकता सकते सबसे सभी साथ साबुत साभ सारा से सो संग ही हुआ हुई हुए है हैं हो होता होती होते होना होने".split(" ")),e.hi.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var r=e.wordcut;r.init(),e.hi.tokenizer=function(i){if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(r){return isLunr2?new e.Token(r.toLowerCase()):r.toLowerCase()});var t=i.toString().toLowerCase().replace(/^\s+/,"");return r.cut(t).split("|")},e.Pipeline.registerFunction(e.hi.stemmer,"stemmer-hi"),e.Pipeline.registerFunction(e.hi.stopWordFilter,"stopWordFilter-hi")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.hu.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.hu.min.js new file mode 100755 index 0000000..ed9d909 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.hu.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Hungarian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hu=function(){this.pipeline.reset(),this.pipeline.add(e.hu.trimmer,e.hu.stopWordFilter,e.hu.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.hu.stemmer))},e.hu.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.hu.trimmer=e.trimmerSupport.generateTrimmer(e.hu.wordCharacters),e.Pipeline.registerFunction(e.hu.trimmer,"trimmer-hu"),e.hu.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,i=new function(){function e(){var e,n=L.cursor;if(d=L.limit,L.in_grouping(W,97,252))for(;;){if(e=L.cursor,L.out_grouping(W,97,252))return L.cursor=e,L.find_among(g,8)||(L.cursor=e,e=L.limit)return void(d=e);L.cursor++}if(L.cursor=n,L.out_grouping(W,97,252)){for(;!L.in_grouping(W,97,252);){if(L.cursor>=L.limit)return;L.cursor++}d=L.cursor}}function i(){return d<=L.cursor}function a(){var e;if(L.ket=L.cursor,(e=L.find_among_b(h,2))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("a");break;case 2:L.slice_from("e")}}function t(){var e=L.limit-L.cursor;return!!L.find_among_b(p,23)&&(L.cursor=L.limit-e,!0)}function s(){if(L.cursor>L.limit_backward){L.cursor--,L.ket=L.cursor;var e=L.cursor-1;L.limit_backward<=e&&e<=L.limit&&(L.cursor=e,L.bra=e,L.slice_del())}}function c(){var e;if(L.ket=L.cursor,(e=L.find_among_b(_,2))&&(L.bra=L.cursor,i())){if((1==e||2==e)&&!t())return;L.slice_del(),s()}}function o(){L.ket=L.cursor,L.find_among_b(v,44)&&(L.bra=L.cursor,i()&&(L.slice_del(),a()))}function w(){var e;if(L.ket=L.cursor,(e=L.find_among_b(z,3))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("e");break;case 2:case 3:L.slice_from("a")}}function l(){var e;if(L.ket=L.cursor,(e=L.find_among_b(y,6))&&(L.bra=L.cursor,i()))switch(e){case 1:case 2:L.slice_del();break;case 3:L.slice_from("a");break;case 4:L.slice_from("e")}}function u(){var e;if(L.ket=L.cursor,(e=L.find_among_b(j,2))&&(L.bra=L.cursor,i())){if((1==e||2==e)&&!t())return;L.slice_del(),s()}}function m(){var e;if(L.ket=L.cursor,(e=L.find_among_b(C,7))&&(L.bra=L.cursor,i()))switch(e){case 1:L.slice_from("a");break;case 2:L.slice_from("e");break;case 3:case 4:case 5:case 6:case 7:L.slice_del()}}function k(){var e;if(L.ket=L.cursor,(e=L.find_among_b(P,12))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 7:case 9:L.slice_del();break;case 2:case 5:case 8:L.slice_from("e");break;case 3:case 6:L.slice_from("a")}}function f(){var e;if(L.ket=L.cursor,(e=L.find_among_b(F,31))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 7:case 8:case 9:case 12:case 13:case 16:case 17:case 18:L.slice_del();break;case 2:case 5:case 10:case 14:case 19:L.slice_from("a");break;case 3:case 6:case 11:case 15:case 20:L.slice_from("e")}}function b(){var e;if(L.ket=L.cursor,(e=L.find_among_b(S,42))&&(L.bra=L.cursor,i()))switch(e){case 1:case 4:case 5:case 6:case 9:case 10:case 11:case 14:case 15:case 16:case 17:case 20:case 21:case 24:case 25:case 26:case 29:L.slice_del();break;case 2:case 7:case 12:case 18:case 22:case 27:L.slice_from("a");break;case 3:case 8:case 13:case 19:case 23:case 28:L.slice_from("e")}}var d,g=[new n("cs",-1,-1),new n("dzs",-1,-1),new n("gy",-1,-1),new n("ly",-1,-1),new n("ny",-1,-1),new n("sz",-1,-1),new n("ty",-1,-1),new n("zs",-1,-1)],h=[new n("á",-1,1),new n("é",-1,2)],p=[new n("bb",-1,-1),new n("cc",-1,-1),new n("dd",-1,-1),new n("ff",-1,-1),new n("gg",-1,-1),new n("jj",-1,-1),new n("kk",-1,-1),new n("ll",-1,-1),new n("mm",-1,-1),new n("nn",-1,-1),new n("pp",-1,-1),new n("rr",-1,-1),new n("ccs",-1,-1),new n("ss",-1,-1),new n("zzs",-1,-1),new n("tt",-1,-1),new n("vv",-1,-1),new n("ggy",-1,-1),new n("lly",-1,-1),new n("nny",-1,-1),new n("tty",-1,-1),new n("ssz",-1,-1),new n("zz",-1,-1)],_=[new n("al",-1,1),new n("el",-1,2)],v=[new n("ba",-1,-1),new n("ra",-1,-1),new n("be",-1,-1),new n("re",-1,-1),new n("ig",-1,-1),new n("nak",-1,-1),new n("nek",-1,-1),new n("val",-1,-1),new n("vel",-1,-1),new n("ul",-1,-1),new n("nál",-1,-1),new n("nél",-1,-1),new n("ból",-1,-1),new n("ról",-1,-1),new n("tól",-1,-1),new n("bõl",-1,-1),new n("rõl",-1,-1),new n("tõl",-1,-1),new n("ül",-1,-1),new n("n",-1,-1),new n("an",19,-1),new n("ban",20,-1),new n("en",19,-1),new n("ben",22,-1),new n("képpen",22,-1),new n("on",19,-1),new n("ön",19,-1),new n("képp",-1,-1),new n("kor",-1,-1),new n("t",-1,-1),new n("at",29,-1),new n("et",29,-1),new n("ként",29,-1),new n("anként",32,-1),new n("enként",32,-1),new n("onként",32,-1),new n("ot",29,-1),new n("ért",29,-1),new n("öt",29,-1),new n("hez",-1,-1),new n("hoz",-1,-1),new n("höz",-1,-1),new n("vá",-1,-1),new n("vé",-1,-1)],z=[new n("án",-1,2),new n("én",-1,1),new n("ánként",-1,3)],y=[new n("stul",-1,2),new n("astul",0,1),new n("ástul",0,3),new n("stül",-1,2),new n("estül",3,1),new n("éstül",3,4)],j=[new n("á",-1,1),new n("é",-1,2)],C=[new n("k",-1,7),new n("ak",0,4),new n("ek",0,6),new n("ok",0,5),new n("ák",0,1),new n("ék",0,2),new n("ök",0,3)],P=[new n("éi",-1,7),new n("áéi",0,6),new n("ééi",0,5),new n("é",-1,9),new n("ké",3,4),new n("aké",4,1),new n("eké",4,1),new n("oké",4,1),new n("áké",4,3),new n("éké",4,2),new n("öké",4,1),new n("éé",3,8)],F=[new n("a",-1,18),new n("ja",0,17),new n("d",-1,16),new n("ad",2,13),new n("ed",2,13),new n("od",2,13),new n("ád",2,14),new n("éd",2,15),new n("öd",2,13),new n("e",-1,18),new n("je",9,17),new n("nk",-1,4),new n("unk",11,1),new n("ánk",11,2),new n("énk",11,3),new n("ünk",11,1),new n("uk",-1,8),new n("juk",16,7),new n("ájuk",17,5),new n("ük",-1,8),new n("jük",19,7),new n("éjük",20,6),new n("m",-1,12),new n("am",22,9),new n("em",22,9),new n("om",22,9),new n("ám",22,10),new n("ém",22,11),new n("o",-1,18),new n("á",-1,19),new n("é",-1,20)],S=[new n("id",-1,10),new n("aid",0,9),new n("jaid",1,6),new n("eid",0,9),new n("jeid",3,6),new n("áid",0,7),new n("éid",0,8),new n("i",-1,15),new n("ai",7,14),new n("jai",8,11),new n("ei",7,14),new n("jei",10,11),new n("ái",7,12),new n("éi",7,13),new n("itek",-1,24),new n("eitek",14,21),new n("jeitek",15,20),new n("éitek",14,23),new n("ik",-1,29),new n("aik",18,26),new n("jaik",19,25),new n("eik",18,26),new n("jeik",21,25),new n("áik",18,27),new n("éik",18,28),new n("ink",-1,20),new n("aink",25,17),new n("jaink",26,16),new n("eink",25,17),new n("jeink",28,16),new n("áink",25,18),new n("éink",25,19),new n("aitok",-1,21),new n("jaitok",32,20),new n("áitok",-1,22),new n("im",-1,5),new n("aim",35,4),new n("jaim",36,1),new n("eim",35,4),new n("jeim",38,1),new n("áim",35,2),new n("éim",35,3)],W=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,52,14],L=new r;this.setCurrent=function(e){L.setCurrent(e)},this.getCurrent=function(){return L.getCurrent()},this.stem=function(){var n=L.cursor;return e(),L.limit_backward=n,L.cursor=L.limit,c(),L.cursor=L.limit,o(),L.cursor=L.limit,w(),L.cursor=L.limit,l(),L.cursor=L.limit,u(),L.cursor=L.limit,k(),L.cursor=L.limit,f(),L.cursor=L.limit,b(),L.cursor=L.limit,m(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.hu.stemmer,"stemmer-hu"),e.hu.stopWordFilter=e.generateStopWordFilter("a abban ahhoz ahogy ahol aki akik akkor alatt amely amelyek amelyekben amelyeket amelyet amelynek ami amikor amit amolyan amíg annak arra arról az azok azon azonban azt aztán azután azzal azért be belül benne bár cikk cikkek cikkeket csak de e ebben eddig egy egyes egyetlen egyik egyre egyéb egész ehhez ekkor el ellen elsõ elég elõ elõször elõtt emilyen ennek erre ez ezek ezen ezt ezzel ezért fel felé hanem hiszen hogy hogyan igen ill ill. illetve ilyen ilyenkor ismét ison itt jobban jó jól kell kellett keressünk keresztül ki kívül között közül legalább legyen lehet lehetett lenne lenni lesz lett maga magát majd majd meg mellett mely melyek mert mi mikor milyen minden mindenki mindent mindig mint mintha mit mivel miért most már más másik még míg nagy nagyobb nagyon ne nekem neki nem nincs néha néhány nélkül olyan ott pedig persze rá s saját sem semmi sok sokat sokkal szemben szerint szinte számára talán tehát teljes tovább továbbá több ugyanis utolsó után utána vagy vagyis vagyok valaki valami valamint való van vannak vele vissza viszont volna volt voltak voltam voltunk által általában át én éppen és így õ õk õket össze úgy új újabb újra".split(" ")),e.Pipeline.registerFunction(e.hu.stopWordFilter,"stopWordFilter-hu")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.hy.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.hy.min.js new file mode 100755 index 0000000..b37f792 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.hy.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.hy=function(){this.pipeline.reset(),this.pipeline.add(e.hy.trimmer,e.hy.stopWordFilter)},e.hy.wordCharacters="[A-Za-z԰-֏ff-ﭏ]",e.hy.trimmer=e.trimmerSupport.generateTrimmer(e.hy.wordCharacters),e.Pipeline.registerFunction(e.hy.trimmer,"trimmer-hy"),e.hy.stopWordFilter=e.generateStopWordFilter("դու և եք էիր էիք հետո նաև նրանք որը վրա է որ պիտի են այս մեջ ն իր ու ի այդ որոնք այն կամ էր մի ես համար այլ իսկ էին ենք հետ ին թ էինք մենք նրա նա դուք եմ էի ըստ որպես ում".split(" ")),e.Pipeline.registerFunction(e.hy.stopWordFilter,"stopWordFilter-hy"),e.hy.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}(),e.Pipeline.registerFunction(e.hy.stemmer,"stemmer-hy")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.it.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.it.min.js new file mode 100755 index 0000000..344b6a3 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.it.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Italian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.it=function(){this.pipeline.reset(),this.pipeline.add(e.it.trimmer,e.it.stopWordFilter,e.it.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.it.stemmer))},e.it.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.it.trimmer=e.trimmerSupport.generateTrimmer(e.it.wordCharacters),e.Pipeline.registerFunction(e.it.trimmer,"trimmer-it"),e.it.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(e,r,n){return!(!x.eq_s(1,e)||(x.ket=x.cursor,!x.in_grouping(L,97,249)))&&(x.slice_from(r),x.cursor=n,!0)}function i(){for(var r,n,i,o,t=x.cursor;;){if(x.bra=x.cursor,r=x.find_among(h,7))switch(x.ket=x.cursor,r){case 1:x.slice_from("à");continue;case 2:x.slice_from("è");continue;case 3:x.slice_from("ì");continue;case 4:x.slice_from("ò");continue;case 5:x.slice_from("ù");continue;case 6:x.slice_from("qU");continue;case 7:if(x.cursor>=x.limit)break;x.cursor++;continue}break}for(x.cursor=t;;)for(n=x.cursor;;){if(i=x.cursor,x.in_grouping(L,97,249)){if(x.bra=x.cursor,o=x.cursor,e("u","U",i))break;if(x.cursor=o,e("i","I",i))break}if(x.cursor=i,x.cursor>=x.limit)return void(x.cursor=n);x.cursor++}}function o(e){if(x.cursor=e,!x.in_grouping(L,97,249))return!1;for(;!x.out_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}return!0}function t(){if(x.in_grouping(L,97,249)){var e=x.cursor;if(x.out_grouping(L,97,249)){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return o(e);x.cursor++}return!0}return o(e)}return!1}function s(){var e,r=x.cursor;if(!t()){if(x.cursor=r,!x.out_grouping(L,97,249))return;if(e=x.cursor,x.out_grouping(L,97,249)){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return x.cursor=e,void(x.in_grouping(L,97,249)&&x.cursor=x.limit)return;x.cursor++}k=x.cursor}function a(){for(;!x.in_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}for(;!x.out_grouping(L,97,249);){if(x.cursor>=x.limit)return!1;x.cursor++}return!0}function u(){var e=x.cursor;k=x.limit,p=k,g=k,s(),x.cursor=e,a()&&(p=x.cursor,a()&&(g=x.cursor))}function c(){for(var e;;){if(x.bra=x.cursor,!(e=x.find_among(q,3)))break;switch(x.ket=x.cursor,e){case 1:x.slice_from("i");break;case 2:x.slice_from("u");break;case 3:if(x.cursor>=x.limit)return;x.cursor++}}}function w(){return k<=x.cursor}function l(){return p<=x.cursor}function m(){return g<=x.cursor}function f(){var e;if(x.ket=x.cursor,x.find_among_b(C,37)&&(x.bra=x.cursor,(e=x.find_among_b(z,5))&&w()))switch(e){case 1:x.slice_del();break;case 2:x.slice_from("e")}}function v(){var e;if(x.ket=x.cursor,!(e=x.find_among_b(S,51)))return!1;switch(x.bra=x.cursor,e){case 1:if(!m())return!1;x.slice_del();break;case 2:if(!m())return!1;x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"ic")&&(x.bra=x.cursor,m()&&x.slice_del());break;case 3:if(!m())return!1;x.slice_from("log");break;case 4:if(!m())return!1;x.slice_from("u");break;case 5:if(!m())return!1;x.slice_from("ente");break;case 6:if(!w())return!1;x.slice_del();break;case 7:if(!l())return!1;x.slice_del(),x.ket=x.cursor,e=x.find_among_b(P,4),e&&(x.bra=x.cursor,m()&&(x.slice_del(),1==e&&(x.ket=x.cursor,x.eq_s_b(2,"at")&&(x.bra=x.cursor,m()&&x.slice_del()))));break;case 8:if(!m())return!1;x.slice_del(),x.ket=x.cursor,e=x.find_among_b(F,3),e&&(x.bra=x.cursor,1==e&&m()&&x.slice_del());break;case 9:if(!m())return!1;x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"at")&&(x.bra=x.cursor,m()&&(x.slice_del(),x.ket=x.cursor,x.eq_s_b(2,"ic")&&(x.bra=x.cursor,m()&&x.slice_del())))}return!0}function b(){var e,r;x.cursor>=k&&(r=x.limit_backward,x.limit_backward=k,x.ket=x.cursor,e=x.find_among_b(W,87),e&&(x.bra=x.cursor,1==e&&x.slice_del()),x.limit_backward=r)}function d(){var e=x.limit-x.cursor;if(x.ket=x.cursor,x.in_grouping_b(y,97,242)&&(x.bra=x.cursor,w()&&(x.slice_del(),x.ket=x.cursor,x.eq_s_b(1,"i")&&(x.bra=x.cursor,w()))))return void x.slice_del();x.cursor=x.limit-e}function _(){d(),x.ket=x.cursor,x.eq_s_b(1,"h")&&(x.bra=x.cursor,x.in_grouping_b(U,99,103)&&w()&&x.slice_del())}var g,p,k,h=[new r("",-1,7),new r("qu",0,6),new r("á",0,1),new r("é",0,2),new r("í",0,3),new r("ó",0,4),new r("ú",0,5)],q=[new r("",-1,3),new r("I",0,1),new r("U",0,2)],C=[new r("la",-1,-1),new r("cela",0,-1),new r("gliela",0,-1),new r("mela",0,-1),new r("tela",0,-1),new r("vela",0,-1),new r("le",-1,-1),new r("cele",6,-1),new r("gliele",6,-1),new r("mele",6,-1),new r("tele",6,-1),new r("vele",6,-1),new r("ne",-1,-1),new r("cene",12,-1),new r("gliene",12,-1),new r("mene",12,-1),new r("sene",12,-1),new r("tene",12,-1),new r("vene",12,-1),new r("ci",-1,-1),new r("li",-1,-1),new r("celi",20,-1),new r("glieli",20,-1),new r("meli",20,-1),new r("teli",20,-1),new r("veli",20,-1),new r("gli",20,-1),new r("mi",-1,-1),new r("si",-1,-1),new r("ti",-1,-1),new r("vi",-1,-1),new r("lo",-1,-1),new r("celo",31,-1),new r("glielo",31,-1),new r("melo",31,-1),new r("telo",31,-1),new r("velo",31,-1)],z=[new r("ando",-1,1),new r("endo",-1,1),new r("ar",-1,2),new r("er",-1,2),new r("ir",-1,2)],P=[new r("ic",-1,-1),new r("abil",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],F=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],S=[new r("ica",-1,1),new r("logia",-1,3),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,9),new r("anza",-1,1),new r("enza",-1,5),new r("ice",-1,1),new r("atrice",7,1),new r("iche",-1,1),new r("logie",-1,3),new r("abile",-1,1),new r("ibile",-1,1),new r("usione",-1,4),new r("azione",-1,2),new r("uzione",-1,4),new r("atore",-1,2),new r("ose",-1,1),new r("ante",-1,1),new r("mente",-1,1),new r("amente",19,7),new r("iste",-1,1),new r("ive",-1,9),new r("anze",-1,1),new r("enze",-1,5),new r("ici",-1,1),new r("atrici",25,1),new r("ichi",-1,1),new r("abili",-1,1),new r("ibili",-1,1),new r("ismi",-1,1),new r("usioni",-1,4),new r("azioni",-1,2),new r("uzioni",-1,4),new r("atori",-1,2),new r("osi",-1,1),new r("anti",-1,1),new r("amenti",-1,6),new r("imenti",-1,6),new r("isti",-1,1),new r("ivi",-1,9),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,6),new r("imento",-1,6),new r("ivo",-1,9),new r("ità",-1,8),new r("istà",-1,1),new r("istè",-1,1),new r("istì",-1,1)],W=[new r("isca",-1,1),new r("enda",-1,1),new r("ata",-1,1),new r("ita",-1,1),new r("uta",-1,1),new r("ava",-1,1),new r("eva",-1,1),new r("iva",-1,1),new r("erebbe",-1,1),new r("irebbe",-1,1),new r("isce",-1,1),new r("ende",-1,1),new r("are",-1,1),new r("ere",-1,1),new r("ire",-1,1),new r("asse",-1,1),new r("ate",-1,1),new r("avate",16,1),new r("evate",16,1),new r("ivate",16,1),new r("ete",-1,1),new r("erete",20,1),new r("irete",20,1),new r("ite",-1,1),new r("ereste",-1,1),new r("ireste",-1,1),new r("ute",-1,1),new r("erai",-1,1),new r("irai",-1,1),new r("isci",-1,1),new r("endi",-1,1),new r("erei",-1,1),new r("irei",-1,1),new r("assi",-1,1),new r("ati",-1,1),new r("iti",-1,1),new r("eresti",-1,1),new r("iresti",-1,1),new r("uti",-1,1),new r("avi",-1,1),new r("evi",-1,1),new r("ivi",-1,1),new r("isco",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("Yamo",-1,1),new r("iamo",-1,1),new r("avamo",-1,1),new r("evamo",-1,1),new r("ivamo",-1,1),new r("eremo",-1,1),new r("iremo",-1,1),new r("assimo",-1,1),new r("ammo",-1,1),new r("emmo",-1,1),new r("eremmo",54,1),new r("iremmo",54,1),new r("immo",-1,1),new r("ano",-1,1),new r("iscano",58,1),new r("avano",58,1),new r("evano",58,1),new r("ivano",58,1),new r("eranno",-1,1),new r("iranno",-1,1),new r("ono",-1,1),new r("iscono",65,1),new r("arono",65,1),new r("erono",65,1),new r("irono",65,1),new r("erebbero",-1,1),new r("irebbero",-1,1),new r("assero",-1,1),new r("essero",-1,1),new r("issero",-1,1),new r("ato",-1,1),new r("ito",-1,1),new r("uto",-1,1),new r("avo",-1,1),new r("evo",-1,1),new r("ivo",-1,1),new r("ar",-1,1),new r("ir",-1,1),new r("erà",-1,1),new r("irà",-1,1),new r("erò",-1,1),new r("irò",-1,1)],L=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2,1],y=[17,65,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,8,2],U=[17],x=new n;this.setCurrent=function(e){x.setCurrent(e)},this.getCurrent=function(){return x.getCurrent()},this.stem=function(){var e=x.cursor;return i(),x.cursor=e,u(),x.limit_backward=e,x.cursor=x.limit,f(),x.cursor=x.limit,v()||(x.cursor=x.limit,b()),x.cursor=x.limit,_(),x.cursor=x.limit_backward,c(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.it.stemmer,"stemmer-it"),e.it.stopWordFilter=e.generateStopWordFilter("a abbia abbiamo abbiano abbiate ad agl agli ai al all alla alle allo anche avemmo avendo avesse avessero avessi avessimo aveste avesti avete aveva avevamo avevano avevate avevi avevo avrai avranno avrebbe avrebbero avrei avremmo avremo avreste avresti avrete avrà avrò avuta avute avuti avuto c che chi ci coi col come con contro cui da dagl dagli dai dal dall dalla dalle dallo degl degli dei del dell della delle dello di dov dove e ebbe ebbero ebbi ed era erano eravamo eravate eri ero essendo faccia facciamo facciano facciate faccio facemmo facendo facesse facessero facessi facessimo faceste facesti faceva facevamo facevano facevate facevi facevo fai fanno farai faranno farebbe farebbero farei faremmo faremo fareste faresti farete farà farò fece fecero feci fosse fossero fossi fossimo foste fosti fu fui fummo furono gli ha hai hanno ho i il in io l la le lei li lo loro lui ma mi mia mie miei mio ne negl negli nei nel nell nella nelle nello noi non nostra nostre nostri nostro o per perché più quale quanta quante quanti quanto quella quelle quelli quello questa queste questi questo sarai saranno sarebbe sarebbero sarei saremmo saremo sareste saresti sarete sarà sarò se sei si sia siamo siano siate siete sono sta stai stando stanno starai staranno starebbe starebbero starei staremmo staremo stareste staresti starete starà starò stava stavamo stavano stavate stavi stavo stemmo stesse stessero stessi stessimo steste stesti stette stettero stetti stia stiamo stiano stiate sto su sua sue sugl sugli sui sul sull sulla sulle sullo suo suoi ti tra tu tua tue tuo tuoi tutti tutto un una uno vi voi vostra vostre vostri vostro è".split(" ")),e.Pipeline.registerFunction(e.it.stopWordFilter,"stopWordFilter-it")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.ja.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.ja.min.js new file mode 100755 index 0000000..5f254eb --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.ja.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var r="2"==e.version[0];e.ja=function(){this.pipeline.reset(),this.pipeline.add(e.ja.trimmer,e.ja.stopWordFilter,e.ja.stemmer),r?this.tokenizer=e.ja.tokenizer:(e.tokenizer&&(e.tokenizer=e.ja.tokenizer),this.tokenizerFn&&(this.tokenizerFn=e.ja.tokenizer))};var t=new e.TinySegmenter;e.ja.tokenizer=function(i){var n,o,s,p,a,u,m,l,c,f;if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(t){return r?new e.Token(t.toLowerCase()):t.toLowerCase()});for(o=i.toString().toLowerCase().replace(/^\s+/,""),n=o.length-1;n>=0;n--)if(/\S/.test(o.charAt(n))){o=o.substring(0,n+1);break}for(a=[],s=o.length,c=0,l=0;c<=s;c++)if(u=o.charAt(c),m=c-l,u.match(/\s/)||c==s){if(m>0)for(p=t.segment(o.slice(l,c)).filter(function(e){return!!e}),f=l,n=0;n=C.limit)break;C.cursor++;continue}break}for(C.cursor=o,C.bra=o,C.eq_s(1,"y")?(C.ket=C.cursor,C.slice_from("Y")):C.cursor=o;;)if(e=C.cursor,C.in_grouping(q,97,232)){if(i=C.cursor,C.bra=i,C.eq_s(1,"i"))C.ket=C.cursor,C.in_grouping(q,97,232)&&(C.slice_from("I"),C.cursor=e);else if(C.cursor=i,C.eq_s(1,"y"))C.ket=C.cursor,C.slice_from("Y"),C.cursor=e;else if(n(e))break}else if(n(e))break}function n(r){return C.cursor=r,r>=C.limit||(C.cursor++,!1)}function o(){_=C.limit,d=_,t()||(_=C.cursor,_<3&&(_=3),t()||(d=C.cursor))}function t(){for(;!C.in_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}for(;!C.out_grouping(q,97,232);){if(C.cursor>=C.limit)return!0;C.cursor++}return!1}function s(){for(var r;;)if(C.bra=C.cursor,r=C.find_among(p,3))switch(C.ket=C.cursor,r){case 1:C.slice_from("y");break;case 2:C.slice_from("i");break;case 3:if(C.cursor>=C.limit)return;C.cursor++}}function u(){return _<=C.cursor}function c(){return d<=C.cursor}function a(){var r=C.limit-C.cursor;C.find_among_b(g,3)&&(C.cursor=C.limit-r,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del()))}function l(){var r;w=!1,C.ket=C.cursor,C.eq_s_b(1,"e")&&(C.bra=C.cursor,u()&&(r=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-r,C.slice_del(),w=!0,a())))}function m(){var r;u()&&(r=C.limit-C.cursor,C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-r,C.eq_s_b(3,"gem")||(C.cursor=C.limit-r,C.slice_del(),a())))}function f(){var r,e,i,n,o,t,s=C.limit-C.cursor;if(C.ket=C.cursor,r=C.find_among_b(h,5))switch(C.bra=C.cursor,r){case 1:u()&&C.slice_from("heid");break;case 2:m();break;case 3:u()&&C.out_grouping_b(j,97,232)&&C.slice_del()}if(C.cursor=C.limit-s,l(),C.cursor=C.limit-s,C.ket=C.cursor,C.eq_s_b(4,"heid")&&(C.bra=C.cursor,c()&&(e=C.limit-C.cursor,C.eq_s_b(1,"c")||(C.cursor=C.limit-e,C.slice_del(),C.ket=C.cursor,C.eq_s_b(2,"en")&&(C.bra=C.cursor,m())))),C.cursor=C.limit-s,C.ket=C.cursor,r=C.find_among_b(k,6))switch(C.bra=C.cursor,r){case 1:if(c()){if(C.slice_del(),i=C.limit-C.cursor,C.ket=C.cursor,C.eq_s_b(2,"ig")&&(C.bra=C.cursor,c()&&(n=C.limit-C.cursor,!C.eq_s_b(1,"e")))){C.cursor=C.limit-n,C.slice_del();break}C.cursor=C.limit-i,a()}break;case 2:c()&&(o=C.limit-C.cursor,C.eq_s_b(1,"e")||(C.cursor=C.limit-o,C.slice_del()));break;case 3:c()&&(C.slice_del(),l());break;case 4:c()&&C.slice_del();break;case 5:c()&&w&&C.slice_del()}C.cursor=C.limit-s,C.out_grouping_b(z,73,232)&&(t=C.limit-C.cursor,C.find_among_b(v,4)&&C.out_grouping_b(q,97,232)&&(C.cursor=C.limit-t,C.ket=C.cursor,C.cursor>C.limit_backward&&(C.cursor--,C.bra=C.cursor,C.slice_del())))}var d,_,w,b=[new e("",-1,6),new e("á",0,1),new e("ä",0,1),new e("é",0,2),new e("ë",0,2),new e("í",0,3),new e("ï",0,3),new e("ó",0,4),new e("ö",0,4),new e("ú",0,5),new e("ü",0,5)],p=[new e("",-1,3),new e("I",0,2),new e("Y",0,1)],g=[new e("dd",-1,-1),new e("kk",-1,-1),new e("tt",-1,-1)],h=[new e("ene",-1,2),new e("se",-1,3),new e("en",-1,2),new e("heden",2,1),new e("s",-1,3)],k=[new e("end",-1,1),new e("ig",-1,2),new e("ing",-1,1),new e("lijk",-1,3),new e("baar",-1,4),new e("bar",-1,5)],v=[new e("aa",-1,-1),new e("ee",-1,-1),new e("oo",-1,-1),new e("uu",-1,-1)],q=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],z=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],j=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],C=new i;this.setCurrent=function(r){C.setCurrent(r)},this.getCurrent=function(){return C.getCurrent()},this.stem=function(){var e=C.cursor;return r(),C.cursor=e,o(),C.limit_backward=e,C.cursor=C.limit,f(),C.cursor=C.limit_backward,s(),!0}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.nl.stemmer,"stemmer-nl"),r.nl.stopWordFilter=r.generateStopWordFilter(" aan al alles als altijd andere ben bij daar dan dat de der deze die dit doch doen door dus een eens en er ge geen geweest haar had heb hebben heeft hem het hier hij hoe hun iemand iets ik in is ja je kan kon kunnen maar me meer men met mij mijn moet na naar niet niets nog nu of om omdat onder ons ook op over reeds te tegen toch toen tot u uit uw van veel voor want waren was wat werd wezen wie wil worden wordt zal ze zelf zich zij zijn zo zonder zou".split(" ")),r.Pipeline.registerFunction(r.nl.stopWordFilter,"stopWordFilter-nl")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.no.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.no.min.js new file mode 100755 index 0000000..92bc7e4 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.no.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Norwegian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.no=function(){this.pipeline.reset(),this.pipeline.add(e.no.trimmer,e.no.stopWordFilter,e.no.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.no.stemmer))},e.no.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.no.trimmer=e.trimmerSupport.generateTrimmer(e.no.wordCharacters),e.Pipeline.registerFunction(e.no.trimmer,"trimmer-no"),e.no.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,i=new function(){function e(){var e,r=w.cursor+3;if(a=w.limit,0<=r||r<=w.limit){for(s=r;;){if(e=w.cursor,w.in_grouping(d,97,248)){w.cursor=e;break}if(e>=w.limit)return;w.cursor=e+1}for(;!w.out_grouping(d,97,248);){if(w.cursor>=w.limit)return;w.cursor++}a=w.cursor,a=a&&(r=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,e=w.find_among_b(m,29),w.limit_backward=r,e))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:n=w.limit-w.cursor,w.in_grouping_b(c,98,122)?w.slice_del():(w.cursor=w.limit-n,w.eq_s_b(1,"k")&&w.out_grouping_b(d,97,248)&&w.slice_del());break;case 3:w.slice_from("er")}}function t(){var e,r=w.limit-w.cursor;w.cursor>=a&&(e=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,w.find_among_b(u,2)?(w.bra=w.cursor,w.limit_backward=e,w.cursor=w.limit-r,w.cursor>w.limit_backward&&(w.cursor--,w.bra=w.cursor,w.slice_del())):w.limit_backward=e)}function o(){var e,r;w.cursor>=a&&(r=w.limit_backward,w.limit_backward=a,w.ket=w.cursor,e=w.find_among_b(l,11),e?(w.bra=w.cursor,w.limit_backward=r,1==e&&w.slice_del()):w.limit_backward=r)}var s,a,m=[new r("a",-1,1),new r("e",-1,1),new r("ede",1,1),new r("ande",1,1),new r("ende",1,1),new r("ane",1,1),new r("ene",1,1),new r("hetene",6,1),new r("erte",1,3),new r("en",-1,1),new r("heten",9,1),new r("ar",-1,1),new r("er",-1,1),new r("heter",12,1),new r("s",-1,2),new r("as",14,1),new r("es",14,1),new r("edes",16,1),new r("endes",16,1),new r("enes",16,1),new r("hetenes",19,1),new r("ens",14,1),new r("hetens",21,1),new r("ers",14,1),new r("ets",14,1),new r("et",-1,1),new r("het",25,1),new r("ert",-1,3),new r("ast",-1,1)],u=[new r("dt",-1,-1),new r("vt",-1,-1)],l=[new r("leg",-1,1),new r("eleg",0,1),new r("ig",-1,1),new r("eig",2,1),new r("lig",2,1),new r("elig",4,1),new r("els",-1,1),new r("lov",-1,1),new r("elov",7,1),new r("slov",7,1),new r("hetslov",9,1)],d=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,48,0,128],c=[119,125,149,1],w=new n;this.setCurrent=function(e){w.setCurrent(e)},this.getCurrent=function(){return w.getCurrent()},this.stem=function(){var r=w.cursor;return e(),w.limit_backward=r,w.cursor=w.limit,i(),w.cursor=w.limit,t(),w.cursor=w.limit,o(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return i.setCurrent(e),i.stem(),i.getCurrent()}):(i.setCurrent(e),i.stem(),i.getCurrent())}}(),e.Pipeline.registerFunction(e.no.stemmer,"stemmer-no"),e.no.stopWordFilter=e.generateStopWordFilter("alle at av bare begge ble blei bli blir blitt både båe da de deg dei deim deira deires dem den denne der dere deres det dette di din disse ditt du dykk dykkar då eg ein eit eitt eller elles en enn er et ett etter for fordi fra før ha hadde han hans har hennar henne hennes her hjå ho hoe honom hoss hossen hun hva hvem hver hvilke hvilken hvis hvor hvordan hvorfor i ikke ikkje ikkje ingen ingi inkje inn inni ja jeg kan kom korleis korso kun kunne kva kvar kvarhelst kven kvi kvifor man mange me med medan meg meget mellom men mi min mine mitt mot mykje ned no noe noen noka noko nokon nokor nokre nå når og også om opp oss over på samme seg selv si si sia sidan siden sin sine sitt sjøl skal skulle slik so som som somme somt så sånn til um upp ut uten var vart varte ved vere verte vi vil ville vore vors vort vår være være vært å".split(" ")),e.Pipeline.registerFunction(e.no.stopWordFilter,"stopWordFilter-no")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.pt.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.pt.min.js new file mode 100755 index 0000000..6c16996 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.pt.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Portuguese` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.pt=function(){this.pipeline.reset(),this.pipeline.add(e.pt.trimmer,e.pt.stopWordFilter,e.pt.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.pt.stemmer))},e.pt.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.pt.trimmer=e.trimmerSupport.generateTrimmer(e.pt.wordCharacters),e.Pipeline.registerFunction(e.pt.trimmer,"trimmer-pt"),e.pt.stemmer=function(){var r=e.stemmerSupport.Among,s=e.stemmerSupport.SnowballProgram,n=new function(){function e(){for(var e;;){if(z.bra=z.cursor,e=z.find_among(k,3))switch(z.ket=z.cursor,e){case 1:z.slice_from("a~");continue;case 2:z.slice_from("o~");continue;case 3:if(z.cursor>=z.limit)break;z.cursor++;continue}break}}function n(){if(z.out_grouping(y,97,250)){for(;!z.in_grouping(y,97,250);){if(z.cursor>=z.limit)return!0;z.cursor++}return!1}return!0}function i(){if(z.in_grouping(y,97,250))for(;!z.out_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}return g=z.cursor,!0}function o(){var e,r,s=z.cursor;if(z.in_grouping(y,97,250))if(e=z.cursor,n()){if(z.cursor=e,i())return}else g=z.cursor;if(z.cursor=s,z.out_grouping(y,97,250)){if(r=z.cursor,n()){if(z.cursor=r,!z.in_grouping(y,97,250)||z.cursor>=z.limit)return;z.cursor++}g=z.cursor}}function t(){for(;!z.in_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}for(;!z.out_grouping(y,97,250);){if(z.cursor>=z.limit)return!1;z.cursor++}return!0}function a(){var e=z.cursor;g=z.limit,b=g,h=g,o(),z.cursor=e,t()&&(b=z.cursor,t()&&(h=z.cursor))}function u(){for(var e;;){if(z.bra=z.cursor,e=z.find_among(q,3))switch(z.ket=z.cursor,e){case 1:z.slice_from("ã");continue;case 2:z.slice_from("õ");continue;case 3:if(z.cursor>=z.limit)break;z.cursor++;continue}break}}function w(){return g<=z.cursor}function m(){return b<=z.cursor}function c(){return h<=z.cursor}function l(){var e;if(z.ket=z.cursor,!(e=z.find_among_b(F,45)))return!1;switch(z.bra=z.cursor,e){case 1:if(!c())return!1;z.slice_del();break;case 2:if(!c())return!1;z.slice_from("log");break;case 3:if(!c())return!1;z.slice_from("u");break;case 4:if(!c())return!1;z.slice_from("ente");break;case 5:if(!m())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(j,4),e&&(z.bra=z.cursor,c()&&(z.slice_del(),1==e&&(z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,c()&&z.slice_del()))));break;case 6:if(!c())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(C,3),e&&(z.bra=z.cursor,1==e&&c()&&z.slice_del());break;case 7:if(!c())return!1;z.slice_del(),z.ket=z.cursor,e=z.find_among_b(P,3),e&&(z.bra=z.cursor,1==e&&c()&&z.slice_del());break;case 8:if(!c())return!1;z.slice_del(),z.ket=z.cursor,z.eq_s_b(2,"at")&&(z.bra=z.cursor,c()&&z.slice_del());break;case 9:if(!w()||!z.eq_s_b(1,"e"))return!1;z.slice_from("ir")}return!0}function f(){var e,r;if(z.cursor>=g){if(r=z.limit_backward,z.limit_backward=g,z.ket=z.cursor,e=z.find_among_b(S,120))return z.bra=z.cursor,1==e&&z.slice_del(),z.limit_backward=r,!0;z.limit_backward=r}return!1}function d(){var e;z.ket=z.cursor,(e=z.find_among_b(W,7))&&(z.bra=z.cursor,1==e&&w()&&z.slice_del())}function v(e,r){if(z.eq_s_b(1,e)){z.bra=z.cursor;var s=z.limit-z.cursor;if(z.eq_s_b(1,r))return z.cursor=z.limit-s,w()&&z.slice_del(),!1}return!0}function p(){var e;if(z.ket=z.cursor,e=z.find_among_b(L,4))switch(z.bra=z.cursor,e){case 1:w()&&(z.slice_del(),z.ket=z.cursor,z.limit-z.cursor,v("u","g")&&v("i","c"));break;case 2:z.slice_from("c")}}function _(){if(!l()&&(z.cursor=z.limit,!f()))return z.cursor=z.limit,void d();z.cursor=z.limit,z.ket=z.cursor,z.eq_s_b(1,"i")&&(z.bra=z.cursor,z.eq_s_b(1,"c")&&(z.cursor=z.limit,w()&&z.slice_del()))}var h,b,g,k=[new r("",-1,3),new r("ã",0,1),new r("õ",0,2)],q=[new r("",-1,3),new r("a~",0,1),new r("o~",0,2)],j=[new r("ic",-1,-1),new r("ad",-1,-1),new r("os",-1,-1),new r("iv",-1,1)],C=[new r("ante",-1,1),new r("avel",-1,1),new r("ível",-1,1)],P=[new r("ic",-1,1),new r("abil",-1,1),new r("iv",-1,1)],F=[new r("ica",-1,1),new r("ância",-1,1),new r("ência",-1,4),new r("ira",-1,9),new r("adora",-1,1),new r("osa",-1,1),new r("ista",-1,1),new r("iva",-1,8),new r("eza",-1,1),new r("logía",-1,2),new r("idade",-1,7),new r("ante",-1,1),new r("mente",-1,6),new r("amente",12,5),new r("ável",-1,1),new r("ível",-1,1),new r("ución",-1,3),new r("ico",-1,1),new r("ismo",-1,1),new r("oso",-1,1),new r("amento",-1,1),new r("imento",-1,1),new r("ivo",-1,8),new r("aça~o",-1,1),new r("ador",-1,1),new r("icas",-1,1),new r("ências",-1,4),new r("iras",-1,9),new r("adoras",-1,1),new r("osas",-1,1),new r("istas",-1,1),new r("ivas",-1,8),new r("ezas",-1,1),new r("logías",-1,2),new r("idades",-1,7),new r("uciones",-1,3),new r("adores",-1,1),new r("antes",-1,1),new r("aço~es",-1,1),new r("icos",-1,1),new r("ismos",-1,1),new r("osos",-1,1),new r("amentos",-1,1),new r("imentos",-1,1),new r("ivos",-1,8)],S=[new r("ada",-1,1),new r("ida",-1,1),new r("ia",-1,1),new r("aria",2,1),new r("eria",2,1),new r("iria",2,1),new r("ara",-1,1),new r("era",-1,1),new r("ira",-1,1),new r("ava",-1,1),new r("asse",-1,1),new r("esse",-1,1),new r("isse",-1,1),new r("aste",-1,1),new r("este",-1,1),new r("iste",-1,1),new r("ei",-1,1),new r("arei",16,1),new r("erei",16,1),new r("irei",16,1),new r("am",-1,1),new r("iam",20,1),new r("ariam",21,1),new r("eriam",21,1),new r("iriam",21,1),new r("aram",20,1),new r("eram",20,1),new r("iram",20,1),new r("avam",20,1),new r("em",-1,1),new r("arem",29,1),new r("erem",29,1),new r("irem",29,1),new r("assem",29,1),new r("essem",29,1),new r("issem",29,1),new r("ado",-1,1),new r("ido",-1,1),new r("ando",-1,1),new r("endo",-1,1),new r("indo",-1,1),new r("ara~o",-1,1),new r("era~o",-1,1),new r("ira~o",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("ir",-1,1),new r("as",-1,1),new r("adas",47,1),new r("idas",47,1),new r("ias",47,1),new r("arias",50,1),new r("erias",50,1),new r("irias",50,1),new r("aras",47,1),new r("eras",47,1),new r("iras",47,1),new r("avas",47,1),new r("es",-1,1),new r("ardes",58,1),new r("erdes",58,1),new r("irdes",58,1),new r("ares",58,1),new r("eres",58,1),new r("ires",58,1),new r("asses",58,1),new r("esses",58,1),new r("isses",58,1),new r("astes",58,1),new r("estes",58,1),new r("istes",58,1),new r("is",-1,1),new r("ais",71,1),new r("eis",71,1),new r("areis",73,1),new r("ereis",73,1),new r("ireis",73,1),new r("áreis",73,1),new r("éreis",73,1),new r("íreis",73,1),new r("ásseis",73,1),new r("ésseis",73,1),new r("ísseis",73,1),new r("áveis",73,1),new r("íeis",73,1),new r("aríeis",84,1),new r("eríeis",84,1),new r("iríeis",84,1),new r("ados",-1,1),new r("idos",-1,1),new r("amos",-1,1),new r("áramos",90,1),new r("éramos",90,1),new r("íramos",90,1),new r("ávamos",90,1),new r("íamos",90,1),new r("aríamos",95,1),new r("eríamos",95,1),new r("iríamos",95,1),new r("emos",-1,1),new r("aremos",99,1),new r("eremos",99,1),new r("iremos",99,1),new r("ássemos",99,1),new r("êssemos",99,1),new r("íssemos",99,1),new r("imos",-1,1),new r("armos",-1,1),new r("ermos",-1,1),new r("irmos",-1,1),new r("ámos",-1,1),new r("arás",-1,1),new r("erás",-1,1),new r("irás",-1,1),new r("eu",-1,1),new r("iu",-1,1),new r("ou",-1,1),new r("ará",-1,1),new r("erá",-1,1),new r("irá",-1,1)],W=[new r("a",-1,1),new r("i",-1,1),new r("o",-1,1),new r("os",-1,1),new r("á",-1,1),new r("í",-1,1),new r("ó",-1,1)],L=[new r("e",-1,1),new r("ç",-1,2),new r("é",-1,1),new r("ê",-1,1)],y=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,3,19,12,2],z=new s;this.setCurrent=function(e){z.setCurrent(e)},this.getCurrent=function(){return z.getCurrent()},this.stem=function(){var r=z.cursor;return e(),z.cursor=r,a(),z.limit_backward=r,z.cursor=z.limit,_(),z.cursor=z.limit,p(),z.cursor=z.limit_backward,u(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.pt.stemmer,"stemmer-pt"),e.pt.stopWordFilter=e.generateStopWordFilter("a ao aos aquela aquelas aquele aqueles aquilo as até com como da das de dela delas dele deles depois do dos e ela elas ele eles em entre era eram essa essas esse esses esta estamos estas estava estavam este esteja estejam estejamos estes esteve estive estivemos estiver estivera estiveram estiverem estivermos estivesse estivessem estivéramos estivéssemos estou está estávamos estão eu foi fomos for fora foram forem formos fosse fossem fui fôramos fôssemos haja hajam hajamos havemos hei houve houvemos houver houvera houveram houverei houverem houveremos houveria houveriam houvermos houverá houverão houveríamos houvesse houvessem houvéramos houvéssemos há hão isso isto já lhe lhes mais mas me mesmo meu meus minha minhas muito na nas nem no nos nossa nossas nosso nossos num numa não nós o os ou para pela pelas pelo pelos por qual quando que quem se seja sejam sejamos sem serei seremos seria seriam será serão seríamos seu seus somos sou sua suas são só também te tem temos tenha tenham tenhamos tenho terei teremos teria teriam terá terão teríamos teu teus teve tinha tinham tive tivemos tiver tivera tiveram tiverem tivermos tivesse tivessem tivéramos tivéssemos tu tua tuas tém tínhamos um uma você vocês vos à às éramos".split(" ")),e.Pipeline.registerFunction(e.pt.stopWordFilter,"stopWordFilter-pt")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.ro.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.ro.min.js new file mode 100755 index 0000000..7277140 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.ro.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Romanian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ro=function(){this.pipeline.reset(),this.pipeline.add(e.ro.trimmer,e.ro.stopWordFilter,e.ro.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ro.stemmer))},e.ro.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.ro.trimmer=e.trimmerSupport.generateTrimmer(e.ro.wordCharacters),e.Pipeline.registerFunction(e.ro.trimmer,"trimmer-ro"),e.ro.stemmer=function(){var i=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,n=new function(){function e(e,i){L.eq_s(1,e)&&(L.ket=L.cursor,L.in_grouping(W,97,259)&&L.slice_from(i))}function n(){for(var i,r;;){if(i=L.cursor,L.in_grouping(W,97,259)&&(r=L.cursor,L.bra=r,e("u","U"),L.cursor=r,e("i","I")),L.cursor=i,L.cursor>=L.limit)break;L.cursor++}}function t(){if(L.out_grouping(W,97,259)){for(;!L.in_grouping(W,97,259);){if(L.cursor>=L.limit)return!0;L.cursor++}return!1}return!0}function a(){if(L.in_grouping(W,97,259))for(;!L.out_grouping(W,97,259);){if(L.cursor>=L.limit)return!0;L.cursor++}return!1}function o(){var e,i,r=L.cursor;if(L.in_grouping(W,97,259)){if(e=L.cursor,!t())return void(h=L.cursor);if(L.cursor=e,!a())return void(h=L.cursor)}L.cursor=r,L.out_grouping(W,97,259)&&(i=L.cursor,t()&&(L.cursor=i,L.in_grouping(W,97,259)&&L.cursor=L.limit)return!1;L.cursor++}for(;!L.out_grouping(W,97,259);){if(L.cursor>=L.limit)return!1;L.cursor++}return!0}function c(){var e=L.cursor;h=L.limit,k=h,g=h,o(),L.cursor=e,u()&&(k=L.cursor,u()&&(g=L.cursor))}function s(){for(var e;;){if(L.bra=L.cursor,e=L.find_among(z,3))switch(L.ket=L.cursor,e){case 1:L.slice_from("i");continue;case 2:L.slice_from("u");continue;case 3:if(L.cursor>=L.limit)break;L.cursor++;continue}break}}function w(){return h<=L.cursor}function m(){return k<=L.cursor}function l(){return g<=L.cursor}function f(){var e,i;if(L.ket=L.cursor,(e=L.find_among_b(C,16))&&(L.bra=L.cursor,m()))switch(e){case 1:L.slice_del();break;case 2:L.slice_from("a");break;case 3:L.slice_from("e");break;case 4:L.slice_from("i");break;case 5:i=L.limit-L.cursor,L.eq_s_b(2,"ab")||(L.cursor=L.limit-i,L.slice_from("i"));break;case 6:L.slice_from("at");break;case 7:L.slice_from("aţi")}}function p(){var e,i=L.limit-L.cursor;if(L.ket=L.cursor,(e=L.find_among_b(P,46))&&(L.bra=L.cursor,m())){switch(e){case 1:L.slice_from("abil");break;case 2:L.slice_from("ibil");break;case 3:L.slice_from("iv");break;case 4:L.slice_from("ic");break;case 5:L.slice_from("at");break;case 6:L.slice_from("it")}return _=!0,L.cursor=L.limit-i,!0}return!1}function d(){var e,i;for(_=!1;;)if(i=L.limit-L.cursor,!p()){L.cursor=L.limit-i;break}if(L.ket=L.cursor,(e=L.find_among_b(F,62))&&(L.bra=L.cursor,l())){switch(e){case 1:L.slice_del();break;case 2:L.eq_s_b(1,"ţ")&&(L.bra=L.cursor,L.slice_from("t"));break;case 3:L.slice_from("ist")}_=!0}}function b(){var e,i,r;if(L.cursor>=h){if(i=L.limit_backward,L.limit_backward=h,L.ket=L.cursor,e=L.find_among_b(q,94))switch(L.bra=L.cursor,e){case 1:if(r=L.limit-L.cursor,!L.out_grouping_b(W,97,259)&&(L.cursor=L.limit-r,!L.eq_s_b(1,"u")))break;case 2:L.slice_del()}L.limit_backward=i}}function v(){var e;L.ket=L.cursor,(e=L.find_among_b(S,5))&&(L.bra=L.cursor,w()&&1==e&&L.slice_del())}var _,g,k,h,z=[new i("",-1,3),new i("I",0,1),new i("U",0,2)],C=[new i("ea",-1,3),new i("aţia",-1,7),new i("aua",-1,2),new i("iua",-1,4),new i("aţie",-1,7),new i("ele",-1,3),new i("ile",-1,5),new i("iile",6,4),new i("iei",-1,4),new i("atei",-1,6),new i("ii",-1,4),new i("ului",-1,1),new i("ul",-1,1),new i("elor",-1,3),new i("ilor",-1,4),new i("iilor",14,4)],P=[new i("icala",-1,4),new i("iciva",-1,4),new i("ativa",-1,5),new i("itiva",-1,6),new i("icale",-1,4),new i("aţiune",-1,5),new i("iţiune",-1,6),new i("atoare",-1,5),new i("itoare",-1,6),new i("ătoare",-1,5),new i("icitate",-1,4),new i("abilitate",-1,1),new i("ibilitate",-1,2),new i("ivitate",-1,3),new i("icive",-1,4),new i("ative",-1,5),new i("itive",-1,6),new i("icali",-1,4),new i("atori",-1,5),new i("icatori",18,4),new i("itori",-1,6),new i("ători",-1,5),new i("icitati",-1,4),new i("abilitati",-1,1),new i("ivitati",-1,3),new i("icivi",-1,4),new i("ativi",-1,5),new i("itivi",-1,6),new i("icităi",-1,4),new i("abilităi",-1,1),new i("ivităi",-1,3),new i("icităţi",-1,4),new i("abilităţi",-1,1),new i("ivităţi",-1,3),new i("ical",-1,4),new i("ator",-1,5),new i("icator",35,4),new i("itor",-1,6),new i("ător",-1,5),new i("iciv",-1,4),new i("ativ",-1,5),new i("itiv",-1,6),new i("icală",-1,4),new i("icivă",-1,4),new i("ativă",-1,5),new i("itivă",-1,6)],F=[new i("ica",-1,1),new i("abila",-1,1),new i("ibila",-1,1),new i("oasa",-1,1),new i("ata",-1,1),new i("ita",-1,1),new i("anta",-1,1),new i("ista",-1,3),new i("uta",-1,1),new i("iva",-1,1),new i("ic",-1,1),new i("ice",-1,1),new i("abile",-1,1),new i("ibile",-1,1),new i("isme",-1,3),new i("iune",-1,2),new i("oase",-1,1),new i("ate",-1,1),new i("itate",17,1),new i("ite",-1,1),new i("ante",-1,1),new i("iste",-1,3),new i("ute",-1,1),new i("ive",-1,1),new i("ici",-1,1),new i("abili",-1,1),new i("ibili",-1,1),new i("iuni",-1,2),new i("atori",-1,1),new i("osi",-1,1),new i("ati",-1,1),new i("itati",30,1),new i("iti",-1,1),new i("anti",-1,1),new i("isti",-1,3),new i("uti",-1,1),new i("işti",-1,3),new i("ivi",-1,1),new i("ităi",-1,1),new i("oşi",-1,1),new i("ităţi",-1,1),new i("abil",-1,1),new i("ibil",-1,1),new i("ism",-1,3),new i("ator",-1,1),new i("os",-1,1),new i("at",-1,1),new i("it",-1,1),new i("ant",-1,1),new i("ist",-1,3),new i("ut",-1,1),new i("iv",-1,1),new i("ică",-1,1),new i("abilă",-1,1),new i("ibilă",-1,1),new i("oasă",-1,1),new i("ată",-1,1),new i("ită",-1,1),new i("antă",-1,1),new i("istă",-1,3),new i("ută",-1,1),new i("ivă",-1,1)],q=[new i("ea",-1,1),new i("ia",-1,1),new i("esc",-1,1),new i("ăsc",-1,1),new i("ind",-1,1),new i("ând",-1,1),new i("are",-1,1),new i("ere",-1,1),new i("ire",-1,1),new i("âre",-1,1),new i("se",-1,2),new i("ase",10,1),new i("sese",10,2),new i("ise",10,1),new i("use",10,1),new i("âse",10,1),new i("eşte",-1,1),new i("ăşte",-1,1),new i("eze",-1,1),new i("ai",-1,1),new i("eai",19,1),new i("iai",19,1),new i("sei",-1,2),new i("eşti",-1,1),new i("ăşti",-1,1),new i("ui",-1,1),new i("ezi",-1,1),new i("âi",-1,1),new i("aşi",-1,1),new i("seşi",-1,2),new i("aseşi",29,1),new i("seseşi",29,2),new i("iseşi",29,1),new i("useşi",29,1),new i("âseşi",29,1),new i("işi",-1,1),new i("uşi",-1,1),new i("âşi",-1,1),new i("aţi",-1,2),new i("eaţi",38,1),new i("iaţi",38,1),new i("eţi",-1,2),new i("iţi",-1,2),new i("âţi",-1,2),new i("arăţi",-1,1),new i("serăţi",-1,2),new i("aserăţi",45,1),new i("seserăţi",45,2),new i("iserăţi",45,1),new i("userăţi",45,1),new i("âserăţi",45,1),new i("irăţi",-1,1),new i("urăţi",-1,1),new i("ârăţi",-1,1),new i("am",-1,1),new i("eam",54,1),new i("iam",54,1),new i("em",-1,2),new i("asem",57,1),new i("sesem",57,2),new i("isem",57,1),new i("usem",57,1),new i("âsem",57,1),new i("im",-1,2),new i("âm",-1,2),new i("ăm",-1,2),new i("arăm",65,1),new i("serăm",65,2),new i("aserăm",67,1),new i("seserăm",67,2),new i("iserăm",67,1),new i("userăm",67,1),new i("âserăm",67,1),new i("irăm",65,1),new i("urăm",65,1),new i("ârăm",65,1),new i("au",-1,1),new i("eau",76,1),new i("iau",76,1),new i("indu",-1,1),new i("ându",-1,1),new i("ez",-1,1),new i("ească",-1,1),new i("ară",-1,1),new i("seră",-1,2),new i("aseră",84,1),new i("seseră",84,2),new i("iseră",84,1),new i("useră",84,1),new i("âseră",84,1),new i("iră",-1,1),new i("ură",-1,1),new i("âră",-1,1),new i("ează",-1,1)],S=[new i("a",-1,1),new i("e",-1,1),new i("ie",1,1),new i("i",-1,1),new i("ă",-1,1)],W=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,2,32,0,0,4],L=new r;this.setCurrent=function(e){L.setCurrent(e)},this.getCurrent=function(){return L.getCurrent()},this.stem=function(){var e=L.cursor;return n(),L.cursor=e,c(),L.limit_backward=e,L.cursor=L.limit,f(),L.cursor=L.limit,d(),L.cursor=L.limit,_||(L.cursor=L.limit,b(),L.cursor=L.limit),v(),L.cursor=L.limit_backward,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return n.setCurrent(e),n.stem(),n.getCurrent()}):(n.setCurrent(e),n.stem(),n.getCurrent())}}(),e.Pipeline.registerFunction(e.ro.stemmer,"stemmer-ro"),e.ro.stopWordFilter=e.generateStopWordFilter("acea aceasta această aceea acei aceia acel acela acele acelea acest acesta aceste acestea aceşti aceştia acolo acord acum ai aia aibă aici al ale alea altceva altcineva am ar are asemenea asta astea astăzi asupra au avea avem aveţi azi aş aşadar aţi bine bucur bună ca care caut ce cel ceva chiar cinci cine cineva contra cu cum cumva curând curînd când cât câte câtva câţi cînd cît cîte cîtva cîţi că căci cărei căror cărui către da dacă dar datorită dată dau de deci deja deoarece departe deşi din dinaintea dintr- dintre doi doilea două drept după dă ea ei el ele eram este eu eşti face fata fi fie fiecare fii fim fiu fiţi frumos fără graţie halbă iar ieri la le li lor lui lângă lîngă mai mea mei mele mereu meu mi mie mine mult multă mulţi mulţumesc mâine mîine mă ne nevoie nici nicăieri nimeni nimeri nimic nişte noastre noastră noi noroc nostru nouă noştri nu opt ori oricare orice oricine oricum oricând oricât oricînd oricît oriunde patra patru patrulea pe pentru peste pic poate pot prea prima primul prin puţin puţina puţină până pînă rog sa sale sau se spate spre sub sunt suntem sunteţi sută sînt sîntem sînteţi să săi său ta tale te timp tine toate toată tot totuşi toţi trei treia treilea tu tăi tău un una unde undeva unei uneia unele uneori unii unor unora unu unui unuia unul vi voastre voastră voi vostru vouă voştri vreme vreo vreun vă zece zero zi zice îi îl îmi împotriva în înainte înaintea încotro încât încît între întrucât întrucît îţi ăla ălea ăsta ăstea ăştia şapte şase şi ştiu ţi ţie".split(" ")),e.Pipeline.registerFunction(e.ro.stopWordFilter,"stopWordFilter-ro")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.ru.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.ru.min.js new file mode 100755 index 0000000..186cc48 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.ru.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Russian` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,n){"function"==typeof define&&define.amd?define(n):"object"==typeof exports?module.exports=n():n()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ru=function(){this.pipeline.reset(),this.pipeline.add(e.ru.trimmer,e.ru.stopWordFilter,e.ru.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ru.stemmer))},e.ru.wordCharacters="Ѐ-҄҇-ԯᴫᵸⷠ-ⷿꙀ-ꚟ︮︯",e.ru.trimmer=e.trimmerSupport.generateTrimmer(e.ru.wordCharacters),e.Pipeline.registerFunction(e.ru.trimmer,"trimmer-ru"),e.ru.stemmer=function(){var n=e.stemmerSupport.Among,r=e.stemmerSupport.SnowballProgram,t=new function(){function e(){for(;!W.in_grouping(S,1072,1103);){if(W.cursor>=W.limit)return!1;W.cursor++}return!0}function t(){for(;!W.out_grouping(S,1072,1103);){if(W.cursor>=W.limit)return!1;W.cursor++}return!0}function w(){b=W.limit,_=b,e()&&(b=W.cursor,t()&&e()&&t()&&(_=W.cursor))}function i(){return _<=W.cursor}function u(e,n){var r,t;if(W.ket=W.cursor,r=W.find_among_b(e,n)){switch(W.bra=W.cursor,r){case 1:if(t=W.limit-W.cursor,!W.eq_s_b(1,"а")&&(W.cursor=W.limit-t,!W.eq_s_b(1,"я")))return!1;case 2:W.slice_del()}return!0}return!1}function o(){return u(h,9)}function s(e,n){var r;return W.ket=W.cursor,!!(r=W.find_among_b(e,n))&&(W.bra=W.cursor,1==r&&W.slice_del(),!0)}function c(){return s(g,26)}function m(){return!!c()&&(u(C,8),!0)}function f(){return s(k,2)}function l(){return u(P,46)}function a(){s(v,36)}function p(){var e;W.ket=W.cursor,(e=W.find_among_b(F,2))&&(W.bra=W.cursor,i()&&1==e&&W.slice_del())}function d(){var e;if(W.ket=W.cursor,e=W.find_among_b(q,4))switch(W.bra=W.cursor,e){case 1:if(W.slice_del(),W.ket=W.cursor,!W.eq_s_b(1,"н"))break;W.bra=W.cursor;case 2:if(!W.eq_s_b(1,"н"))break;case 3:W.slice_del()}}var _,b,h=[new n("в",-1,1),new n("ив",0,2),new n("ыв",0,2),new n("вши",-1,1),new n("ивши",3,2),new n("ывши",3,2),new n("вшись",-1,1),new n("ившись",6,2),new n("ывшись",6,2)],g=[new n("ее",-1,1),new n("ие",-1,1),new n("ое",-1,1),new n("ые",-1,1),new n("ими",-1,1),new n("ыми",-1,1),new n("ей",-1,1),new n("ий",-1,1),new n("ой",-1,1),new n("ый",-1,1),new n("ем",-1,1),new n("им",-1,1),new n("ом",-1,1),new n("ым",-1,1),new n("его",-1,1),new n("ого",-1,1),new n("ему",-1,1),new n("ому",-1,1),new n("их",-1,1),new n("ых",-1,1),new n("ею",-1,1),new n("ою",-1,1),new n("ую",-1,1),new n("юю",-1,1),new n("ая",-1,1),new n("яя",-1,1)],C=[new n("ем",-1,1),new n("нн",-1,1),new n("вш",-1,1),new n("ивш",2,2),new n("ывш",2,2),new n("щ",-1,1),new n("ющ",5,1),new n("ующ",6,2)],k=[new n("сь",-1,1),new n("ся",-1,1)],P=[new n("ла",-1,1),new n("ила",0,2),new n("ыла",0,2),new n("на",-1,1),new n("ена",3,2),new n("ете",-1,1),new n("ите",-1,2),new n("йте",-1,1),new n("ейте",7,2),new n("уйте",7,2),new n("ли",-1,1),new n("или",10,2),new n("ыли",10,2),new n("й",-1,1),new n("ей",13,2),new n("уй",13,2),new n("л",-1,1),new n("ил",16,2),new n("ыл",16,2),new n("ем",-1,1),new n("им",-1,2),new n("ым",-1,2),new n("н",-1,1),new n("ен",22,2),new n("ло",-1,1),new n("ило",24,2),new n("ыло",24,2),new n("но",-1,1),new n("ено",27,2),new n("нно",27,1),new n("ет",-1,1),new n("ует",30,2),new n("ит",-1,2),new n("ыт",-1,2),new n("ют",-1,1),new n("уют",34,2),new n("ят",-1,2),new n("ны",-1,1),new n("ены",37,2),new n("ть",-1,1),new n("ить",39,2),new n("ыть",39,2),new n("ешь",-1,1),new n("ишь",-1,2),new n("ю",-1,2),new n("ую",44,2)],v=[new n("а",-1,1),new n("ев",-1,1),new n("ов",-1,1),new n("е",-1,1),new n("ие",3,1),new n("ье",3,1),new n("и",-1,1),new n("еи",6,1),new n("ии",6,1),new n("ами",6,1),new n("ями",6,1),new n("иями",10,1),new n("й",-1,1),new n("ей",12,1),new n("ией",13,1),new n("ий",12,1),new n("ой",12,1),new n("ам",-1,1),new n("ем",-1,1),new n("ием",18,1),new n("ом",-1,1),new n("ям",-1,1),new n("иям",21,1),new n("о",-1,1),new n("у",-1,1),new n("ах",-1,1),new n("ях",-1,1),new n("иях",26,1),new n("ы",-1,1),new n("ь",-1,1),new n("ю",-1,1),new n("ию",30,1),new n("ью",30,1),new n("я",-1,1),new n("ия",33,1),new n("ья",33,1)],F=[new n("ост",-1,1),new n("ость",-1,1)],q=[new n("ейше",-1,1),new n("н",-1,2),new n("ейш",-1,1),new n("ь",-1,3)],S=[33,65,8,232],W=new r;this.setCurrent=function(e){W.setCurrent(e)},this.getCurrent=function(){return W.getCurrent()},this.stem=function(){return w(),W.cursor=W.limit,!(W.cursor=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor++,!0}return!1},in_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e<=s&&e>=i&&(e-=i,t[e>>3]&1<<(7&e)))return this.cursor--,!0}return!1},out_grouping:function(t,i,s){if(this.cursors||e>3]&1<<(7&e)))return this.cursor++,!0}return!1},out_grouping_b:function(t,i,s){if(this.cursor>this.limit_backward){var e=r.charCodeAt(this.cursor-1);if(e>s||e>3]&1<<(7&e)))return this.cursor--,!0}return!1},eq_s:function(t,i){if(this.limit-this.cursor>1),f=0,l=o0||e==s||c)break;c=!0}}for(;;){var _=t[s];if(o>=_.s_size){if(this.cursor=n+_.s_size,!_.method)return _.result;var b=_.method();if(this.cursor=n+_.s_size,b)return _.result}if((s=_.substring_i)<0)return 0}},find_among_b:function(t,i){for(var s=0,e=i,n=this.cursor,u=this.limit_backward,o=0,h=0,c=!1;;){for(var a=s+(e-s>>1),f=0,l=o=0;m--){if(n-l==u){f=-1;break}if(f=r.charCodeAt(n-1-l)-_.s[m])break;l++}if(f<0?(e=a,h=l):(s=a,o=l),e-s<=1){if(s>0||e==s||c)break;c=!0}}for(;;){var _=t[s];if(o>=_.s_size){if(this.cursor=n-_.s_size,!_.method)return _.result;var b=_.method();if(this.cursor=n-_.s_size,b)return _.result}if((s=_.substring_i)<0)return 0}},replace_s:function(t,i,s){var e=s.length-(i-t),n=r.substring(0,t),u=r.substring(i);return r=n+s+u,this.limit+=e,this.cursor>=i?this.cursor+=e:this.cursor>t&&(this.cursor=t),e},slice_check:function(){if(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>r.length)throw"faulty slice operation"},slice_from:function(r){this.slice_check(),this.replace_s(this.bra,this.ket,r)},slice_del:function(){this.slice_from("")},insert:function(r,t,i){var s=this.replace_s(r,t,i);r<=this.bra&&(this.bra+=s),r<=this.ket&&(this.ket+=s)},slice_to:function(){return this.slice_check(),r.substring(this.bra,this.ket)},eq_v_b:function(r){return this.eq_s_b(r.length,r)}}}},r.trimmerSupport={generateTrimmer:function(r){var t=new RegExp("^[^"+r+"]+"),i=new RegExp("[^"+r+"]+$");return function(r){return"function"==typeof r.update?r.update(function(r){return r.replace(t,"").replace(i,"")}):r.replace(t,"").replace(i,"")}}}}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.sv.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.sv.min.js new file mode 100755 index 0000000..3e5eb64 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.sv.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Swedish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.sv=function(){this.pipeline.reset(),this.pipeline.add(e.sv.trimmer,e.sv.stopWordFilter,e.sv.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.sv.stemmer))},e.sv.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",e.sv.trimmer=e.trimmerSupport.generateTrimmer(e.sv.wordCharacters),e.Pipeline.registerFunction(e.sv.trimmer,"trimmer-sv"),e.sv.stemmer=function(){var r=e.stemmerSupport.Among,n=e.stemmerSupport.SnowballProgram,t=new function(){function e(){var e,r=w.cursor+3;if(o=w.limit,0<=r||r<=w.limit){for(a=r;;){if(e=w.cursor,w.in_grouping(l,97,246)){w.cursor=e;break}if(w.cursor=e,w.cursor>=w.limit)return;w.cursor++}for(;!w.out_grouping(l,97,246);){if(w.cursor>=w.limit)return;w.cursor++}o=w.cursor,o=o&&(w.limit_backward=o,w.cursor=w.limit,w.ket=w.cursor,e=w.find_among_b(u,37),w.limit_backward=r,e))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:w.in_grouping_b(d,98,121)&&w.slice_del()}}function i(){var e=w.limit_backward;w.cursor>=o&&(w.limit_backward=o,w.cursor=w.limit,w.find_among_b(c,7)&&(w.cursor=w.limit,w.ket=w.cursor,w.cursor>w.limit_backward&&(w.bra=--w.cursor,w.slice_del())),w.limit_backward=e)}function s(){var e,r;if(w.cursor>=o){if(r=w.limit_backward,w.limit_backward=o,w.cursor=w.limit,w.ket=w.cursor,e=w.find_among_b(m,5))switch(w.bra=w.cursor,e){case 1:w.slice_del();break;case 2:w.slice_from("lös");break;case 3:w.slice_from("full")}w.limit_backward=r}}var a,o,u=[new r("a",-1,1),new r("arna",0,1),new r("erna",0,1),new r("heterna",2,1),new r("orna",0,1),new r("ad",-1,1),new r("e",-1,1),new r("ade",6,1),new r("ande",6,1),new r("arne",6,1),new r("are",6,1),new r("aste",6,1),new r("en",-1,1),new r("anden",12,1),new r("aren",12,1),new r("heten",12,1),new r("ern",-1,1),new r("ar",-1,1),new r("er",-1,1),new r("heter",18,1),new r("or",-1,1),new r("s",-1,2),new r("as",21,1),new r("arnas",22,1),new r("ernas",22,1),new r("ornas",22,1),new r("es",21,1),new r("ades",26,1),new r("andes",26,1),new r("ens",21,1),new r("arens",29,1),new r("hetens",29,1),new r("erns",21,1),new r("at",-1,1),new r("andet",-1,1),new r("het",-1,1),new r("ast",-1,1)],c=[new r("dd",-1,-1),new r("gd",-1,-1),new r("nn",-1,-1),new r("dt",-1,-1),new r("gt",-1,-1),new r("kt",-1,-1),new r("tt",-1,-1)],m=[new r("ig",-1,1),new r("lig",0,1),new r("els",-1,1),new r("fullt",-1,3),new r("löst",-1,2)],l=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,24,0,32],d=[119,127,149],w=new n;this.setCurrent=function(e){w.setCurrent(e)},this.getCurrent=function(){return w.getCurrent()},this.stem=function(){var r=w.cursor;return e(),w.limit_backward=r,w.cursor=w.limit,t(),w.cursor=w.limit,i(),w.cursor=w.limit,s(),!0}};return function(e){return"function"==typeof e.update?e.update(function(e){return t.setCurrent(e),t.stem(),t.getCurrent()}):(t.setCurrent(e),t.stem(),t.getCurrent())}}(),e.Pipeline.registerFunction(e.sv.stemmer,"stemmer-sv"),e.sv.stopWordFilter=e.generateStopWordFilter("alla allt att av blev bli blir blivit de dem den denna deras dess dessa det detta dig din dina ditt du där då efter ej eller en er era ert ett från för ha hade han hans har henne hennes hon honom hur här i icke ingen inom inte jag ju kan kunde man med mellan men mig min mina mitt mot mycket ni nu när någon något några och om oss på samma sedan sig sin sina sitta själv skulle som så sådan sådana sådant till under upp ut utan vad var vara varför varit varje vars vart vem vi vid vilka vilkas vilken vilket vår våra vårt än är åt över".split(" ")),e.Pipeline.registerFunction(e.sv.stopWordFilter,"stopWordFilter-sv")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.ta.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.ta.min.js new file mode 100755 index 0000000..a644bed --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.ta.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.ta=function(){this.pipeline.reset(),this.pipeline.add(e.ta.trimmer,e.ta.stopWordFilter,e.ta.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.ta.stemmer))},e.ta.wordCharacters="஀-உஊ-ஏஐ-ஙச-ட஠-னப-யர-ஹ஺-ிீ-௉ொ-௏ௐ-௙௚-௟௠-௩௪-௯௰-௹௺-௿a-zA-Za-zA-Z0-90-9",e.ta.trimmer=e.trimmerSupport.generateTrimmer(e.ta.wordCharacters),e.Pipeline.registerFunction(e.ta.trimmer,"trimmer-ta"),e.ta.stopWordFilter=e.generateStopWordFilter("அங்கு அங்கே அது அதை அந்த அவர் அவர்கள் அவள் அவன் அவை ஆக ஆகவே ஆகையால் ஆதலால் ஆதலினால் ஆனாலும் ஆனால் இங்கு இங்கே இது இதை இந்த இப்படி இவர் இவர்கள் இவள் இவன் இவை இவ்வளவு உனக்கு உனது உன் உன்னால் எங்கு எங்கே எது எதை எந்த எப்படி எவர் எவர்கள் எவள் எவன் எவை எவ்வளவு எனக்கு எனது எனவே என் என்ன என்னால் ஏது ஏன் தனது தன்னால் தானே தான் நாங்கள் நாம் நான் நீ நீங்கள்".split(" ")),e.ta.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var t=e.wordcut;t.init(),e.ta.tokenizer=function(r){if(!arguments.length||null==r||void 0==r)return[];if(Array.isArray(r))return r.map(function(t){return isLunr2?new e.Token(t.toLowerCase()):t.toLowerCase()});var i=r.toString().toLowerCase().replace(/^\s+/,"");return t.cut(i).split("|")},e.Pipeline.registerFunction(e.ta.stemmer,"stemmer-ta"),e.Pipeline.registerFunction(e.ta.stopWordFilter,"stopWordFilter-ta")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.te.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.te.min.js new file mode 100755 index 0000000..9fa7a93 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.te.min.js @@ -0,0 +1 @@ +!function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():t()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.te=function(){this.pipeline.reset(),this.pipeline.add(e.te.trimmer,e.te.stopWordFilter,e.te.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(e.te.stemmer))},e.te.wordCharacters="ఀ-ఄఅ-ఔక-హా-ౌౕ-ౖౘ-ౚౠ-ౡౢ-ౣ౦-౯౸-౿఼ఽ్ౝ౷౤౥",e.te.trimmer=e.trimmerSupport.generateTrimmer(e.te.wordCharacters),e.Pipeline.registerFunction(e.te.trimmer,"trimmer-te"),e.te.stopWordFilter=e.generateStopWordFilter("అందరూ అందుబాటులో అడగండి అడగడం అడ్డంగా అనుగుణంగా అనుమతించు అనుమతిస్తుంది అయితే ఇప్పటికే ఉన్నారు ఎక్కడైనా ఎప్పుడు ఎవరైనా ఎవరో ఏ ఏదైనా ఏమైనప్పటికి ఒక ఒకరు కనిపిస్తాయి కాదు కూడా గా గురించి చుట్టూ చేయగలిగింది తగిన తర్వాత దాదాపు దూరంగా నిజంగా పై ప్రకారం ప్రక్కన మధ్య మరియు మరొక మళ్ళీ మాత్రమే మెచ్చుకో వద్ద వెంట వేరుగా వ్యతిరేకంగా సంబంధం".split(" ")),e.te.stemmer=function(){return function(e){return"function"==typeof e.update?e.update(function(e){return e}):e}}();var t=e.wordcut;t.init(),e.te.tokenizer=function(r){if(!arguments.length||null==r||void 0==r)return[];if(Array.isArray(r))return r.map(function(t){return isLunr2?new e.Token(t.toLowerCase()):t.toLowerCase()});var i=r.toString().toLowerCase().replace(/^\s+/,"");return t.cut(i).split("|")},e.Pipeline.registerFunction(e.te.stemmer,"stemmer-te"),e.Pipeline.registerFunction(e.te.stopWordFilter,"stopWordFilter-te")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.th.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.th.min.js new file mode 100755 index 0000000..dee3aac --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.th.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var r="2"==e.version[0];e.th=function(){this.pipeline.reset(),this.pipeline.add(e.th.trimmer),r?this.tokenizer=e.th.tokenizer:(e.tokenizer&&(e.tokenizer=e.th.tokenizer),this.tokenizerFn&&(this.tokenizerFn=e.th.tokenizer))},e.th.wordCharacters="[฀-๿]",e.th.trimmer=e.trimmerSupport.generateTrimmer(e.th.wordCharacters),e.Pipeline.registerFunction(e.th.trimmer,"trimmer-th");var t=e.wordcut;t.init(),e.th.tokenizer=function(i){if(!arguments.length||null==i||void 0==i)return[];if(Array.isArray(i))return i.map(function(t){return r?new e.Token(t):t});var n=i.toString().replace(/^\s+/,"");return t.cut(n).split("|")}}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.tr.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.tr.min.js new file mode 100755 index 0000000..563f6ec --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.tr.min.js @@ -0,0 +1,18 @@ +/*! + * Lunr languages, `Turkish` language + * https://github.com/MihaiValentin/lunr-languages + * + * Copyright 2014, Mihai Valentin + * http://www.mozilla.org/MPL/ + */ +/*! + * based on + * Snowball JavaScript Library v0.3 + * http://code.google.com/p/urim/ + * http://snowball.tartarus.org/ + * + * Copyright 2010, Oleg Mazko + * http://www.mozilla.org/MPL/ + */ + +!function(r,i){"function"==typeof define&&define.amd?define(i):"object"==typeof exports?module.exports=i():i()(r.lunr)}(this,function(){return function(r){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");r.tr=function(){this.pipeline.reset(),this.pipeline.add(r.tr.trimmer,r.tr.stopWordFilter,r.tr.stemmer),this.searchPipeline&&(this.searchPipeline.reset(),this.searchPipeline.add(r.tr.stemmer))},r.tr.wordCharacters="A-Za-zªºÀ-ÖØ-öø-ʸˠ-ˤᴀ-ᴥᴬ-ᵜᵢ-ᵥᵫ-ᵷᵹ-ᶾḀ-ỿⁱⁿₐ-ₜKÅℲⅎⅠ-ↈⱠ-ⱿꜢ-ꞇꞋ-ꞭꞰ-ꞷꟷ-ꟿꬰ-ꭚꭜ-ꭤff-stA-Za-z",r.tr.trimmer=r.trimmerSupport.generateTrimmer(r.tr.wordCharacters),r.Pipeline.registerFunction(r.tr.trimmer,"trimmer-tr"),r.tr.stemmer=function(){var i=r.stemmerSupport.Among,e=r.stemmerSupport.SnowballProgram,n=new function(){function r(r,i,e){for(;;){var n=Dr.limit-Dr.cursor;if(Dr.in_grouping_b(r,i,e)){Dr.cursor=Dr.limit-n;break}if(Dr.cursor=Dr.limit-n,Dr.cursor<=Dr.limit_backward)return!1;Dr.cursor--}return!0}function n(){var i,e;i=Dr.limit-Dr.cursor,r(Wr,97,305);for(var n=0;nDr.limit_backward&&(Dr.cursor--,e=Dr.limit-Dr.cursor,i()))?(Dr.cursor=Dr.limit-e,!0):(Dr.cursor=Dr.limit-n,r()?(Dr.cursor=Dr.limit-n,!1):(Dr.cursor=Dr.limit-n,!(Dr.cursor<=Dr.limit_backward)&&(Dr.cursor--,!!i()&&(Dr.cursor=Dr.limit-n,!0))))}function u(r){return t(r,function(){return Dr.in_grouping_b(Wr,97,305)})}function o(){return u(function(){return Dr.eq_s_b(1,"n")})}function s(){return u(function(){return Dr.eq_s_b(1,"s")})}function c(){return u(function(){return Dr.eq_s_b(1,"y")})}function l(){return t(function(){return Dr.in_grouping_b(Lr,105,305)},function(){return Dr.out_grouping_b(Wr,97,305)})}function a(){return Dr.find_among_b(ur,10)&&l()}function m(){return n()&&Dr.in_grouping_b(Lr,105,305)&&s()}function d(){return Dr.find_among_b(or,2)}function f(){return n()&&Dr.in_grouping_b(Lr,105,305)&&c()}function b(){return n()&&Dr.find_among_b(sr,4)}function w(){return n()&&Dr.find_among_b(cr,4)&&o()}function _(){return n()&&Dr.find_among_b(lr,2)&&c()}function k(){return n()&&Dr.find_among_b(ar,2)}function p(){return n()&&Dr.find_among_b(mr,4)}function g(){return n()&&Dr.find_among_b(dr,2)}function y(){return n()&&Dr.find_among_b(fr,4)}function z(){return n()&&Dr.find_among_b(br,2)}function v(){return n()&&Dr.find_among_b(wr,2)&&c()}function h(){return Dr.eq_s_b(2,"ki")}function q(){return n()&&Dr.find_among_b(_r,2)&&o()}function C(){return n()&&Dr.find_among_b(kr,4)&&c()}function P(){return n()&&Dr.find_among_b(pr,4)}function F(){return n()&&Dr.find_among_b(gr,4)&&c()}function S(){return Dr.find_among_b(yr,4)}function W(){return n()&&Dr.find_among_b(zr,2)}function L(){return n()&&Dr.find_among_b(vr,4)}function x(){return n()&&Dr.find_among_b(hr,8)}function A(){return Dr.find_among_b(qr,2)}function E(){return n()&&Dr.find_among_b(Cr,32)&&c()}function j(){return Dr.find_among_b(Pr,8)&&c()}function T(){return n()&&Dr.find_among_b(Fr,4)&&c()}function Z(){return Dr.eq_s_b(3,"ken")&&c()}function B(){var r=Dr.limit-Dr.cursor;return!(T()||(Dr.cursor=Dr.limit-r,E()||(Dr.cursor=Dr.limit-r,j()||(Dr.cursor=Dr.limit-r,Z()))))}function D(){if(A()){var r=Dr.limit-Dr.cursor;if(S()||(Dr.cursor=Dr.limit-r,W()||(Dr.cursor=Dr.limit-r,C()||(Dr.cursor=Dr.limit-r,P()||(Dr.cursor=Dr.limit-r,F()||(Dr.cursor=Dr.limit-r))))),T())return!1}return!0}function G(){if(W()){Dr.bra=Dr.cursor,Dr.slice_del();var r=Dr.limit-Dr.cursor;return Dr.ket=Dr.cursor,x()||(Dr.cursor=Dr.limit-r,E()||(Dr.cursor=Dr.limit-r,j()||(Dr.cursor=Dr.limit-r,T()||(Dr.cursor=Dr.limit-r)))),nr=!1,!1}return!0}function H(){if(!L())return!0;var r=Dr.limit-Dr.cursor;return!E()&&(Dr.cursor=Dr.limit-r,!j())}function I(){var r,i=Dr.limit-Dr.cursor;return!(S()||(Dr.cursor=Dr.limit-i,F()||(Dr.cursor=Dr.limit-i,P()||(Dr.cursor=Dr.limit-i,C()))))||(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,T()||(Dr.cursor=Dr.limit-r),!1)}function J(){var r,i=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,nr=!0,B()&&(Dr.cursor=Dr.limit-i,D()&&(Dr.cursor=Dr.limit-i,G()&&(Dr.cursor=Dr.limit-i,H()&&(Dr.cursor=Dr.limit-i,I()))))){if(Dr.cursor=Dr.limit-i,!x())return;Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,r=Dr.limit-Dr.cursor,S()||(Dr.cursor=Dr.limit-r,W()||(Dr.cursor=Dr.limit-r,C()||(Dr.cursor=Dr.limit-r,P()||(Dr.cursor=Dr.limit-r,F()||(Dr.cursor=Dr.limit-r))))),T()||(Dr.cursor=Dr.limit-r)}Dr.bra=Dr.cursor,Dr.slice_del()}function K(){var r,i,e,n;if(Dr.ket=Dr.cursor,h()){if(r=Dr.limit-Dr.cursor,p())return Dr.bra=Dr.cursor,Dr.slice_del(),i=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,W()?(Dr.bra=Dr.cursor,Dr.slice_del(),K()):(Dr.cursor=Dr.limit-i,a()&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()))),!0;if(Dr.cursor=Dr.limit-r,w()){if(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,e=Dr.limit-Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else{if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,!a()&&(Dr.cursor=Dr.limit-e,!m()&&(Dr.cursor=Dr.limit-e,!K())))return!0;Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())}return!0}if(Dr.cursor=Dr.limit-r,g()){if(n=Dr.limit-Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else if(Dr.cursor=Dr.limit-n,m())Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K());else if(Dr.cursor=Dr.limit-n,!K())return!1;return!0}}return!1}function M(r){if(Dr.ket=Dr.cursor,!g()&&(Dr.cursor=Dr.limit-r,!k()))return!1;var i=Dr.limit-Dr.cursor;if(d())Dr.bra=Dr.cursor,Dr.slice_del();else if(Dr.cursor=Dr.limit-i,m())Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K());else if(Dr.cursor=Dr.limit-i,!K())return!1;return!0}function N(r){if(Dr.ket=Dr.cursor,!z()&&(Dr.cursor=Dr.limit-r,!b()))return!1;var i=Dr.limit-Dr.cursor;return!(!m()&&(Dr.cursor=Dr.limit-i,!d()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()),!0)}function O(){var r,i=Dr.limit-Dr.cursor;return Dr.ket=Dr.cursor,!(!w()&&(Dr.cursor=Dr.limit-i,!v()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,!(!W()||(Dr.bra=Dr.cursor,Dr.slice_del(),!K()))||(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!(a()||(Dr.cursor=Dr.limit-r,m()||(Dr.cursor=Dr.limit-r,K())))||(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()),!0)))}function Q(){var r,i,e=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,!p()&&(Dr.cursor=Dr.limit-e,!f()&&(Dr.cursor=Dr.limit-e,!_())))return!1;if(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,r=Dr.limit-Dr.cursor,a())Dr.bra=Dr.cursor,Dr.slice_del(),i=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,W()||(Dr.cursor=Dr.limit-i);else if(Dr.cursor=Dr.limit-r,!W())return!0;return Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,K(),!0}function R(){var r,i,e=Dr.limit-Dr.cursor;if(Dr.ket=Dr.cursor,W())return Dr.bra=Dr.cursor,Dr.slice_del(),void K();if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,q())if(Dr.bra=Dr.cursor,Dr.slice_del(),r=Dr.limit-Dr.cursor,Dr.ket=Dr.cursor,d())Dr.bra=Dr.cursor,Dr.slice_del();else{if(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!a()&&(Dr.cursor=Dr.limit-r,!m())){if(Dr.cursor=Dr.limit-r,Dr.ket=Dr.cursor,!W())return;if(Dr.bra=Dr.cursor,Dr.slice_del(),!K())return}Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())}else if(Dr.cursor=Dr.limit-e,!M(e)&&(Dr.cursor=Dr.limit-e,!N(e))){if(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,y())return Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,i=Dr.limit-Dr.cursor,void(a()?(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K())):(Dr.cursor=Dr.limit-i,W()?(Dr.bra=Dr.cursor,Dr.slice_del(),K()):(Dr.cursor=Dr.limit-i,K())));if(Dr.cursor=Dr.limit-e,!O()){if(Dr.cursor=Dr.limit-e,d())return Dr.bra=Dr.cursor,void Dr.slice_del();Dr.cursor=Dr.limit-e,K()||(Dr.cursor=Dr.limit-e,Q()||(Dr.cursor=Dr.limit-e,Dr.ket=Dr.cursor,(a()||(Dr.cursor=Dr.limit-e,m()))&&(Dr.bra=Dr.cursor,Dr.slice_del(),Dr.ket=Dr.cursor,W()&&(Dr.bra=Dr.cursor,Dr.slice_del(),K()))))}}}function U(){var r;if(Dr.ket=Dr.cursor,r=Dr.find_among_b(Sr,4))switch(Dr.bra=Dr.cursor,r){case 1:Dr.slice_from("p");break;case 2:Dr.slice_from("ç");break;case 3:Dr.slice_from("t");break;case 4:Dr.slice_from("k")}}function V(){for(;;){var r=Dr.limit-Dr.cursor;if(Dr.in_grouping_b(Wr,97,305)){Dr.cursor=Dr.limit-r;break}if(Dr.cursor=Dr.limit-r,Dr.cursor<=Dr.limit_backward)return!1;Dr.cursor--}return!0}function X(r,i,e){if(Dr.cursor=Dr.limit-r,V()){var n=Dr.limit-Dr.cursor;if(!Dr.eq_s_b(1,i)&&(Dr.cursor=Dr.limit-n,!Dr.eq_s_b(1,e)))return!0;Dr.cursor=Dr.limit-r;var t=Dr.cursor;return Dr.insert(Dr.cursor,Dr.cursor,e),Dr.cursor=t,!1}return!0}function Y(){var r=Dr.limit-Dr.cursor;(Dr.eq_s_b(1,"d")||(Dr.cursor=Dr.limit-r,Dr.eq_s_b(1,"g")))&&X(r,"a","ı")&&X(r,"e","i")&&X(r,"o","u")&&X(r,"ö","ü")}function $(){for(var r,i=Dr.cursor,e=2;;){for(r=Dr.cursor;!Dr.in_grouping(Wr,97,305);){if(Dr.cursor>=Dr.limit)return Dr.cursor=r,!(e>0)&&(Dr.cursor=i,!0);Dr.cursor++}e--}}function rr(r,i,e){for(;!Dr.eq_s(i,e);){if(Dr.cursor>=Dr.limit)return!0;Dr.cursor++}return(tr=i)!=Dr.limit||(Dr.cursor=r,!1)}function ir(){var r=Dr.cursor;return!rr(r,2,"ad")||(Dr.cursor=r,!rr(r,5,"soyad"))}function er(){var r=Dr.cursor;return!ir()&&(Dr.limit_backward=r,Dr.cursor=Dr.limit,Y(),Dr.cursor=Dr.limit,U(),!0)}var nr,tr,ur=[new i("m",-1,-1),new i("n",-1,-1),new i("miz",-1,-1),new i("niz",-1,-1),new i("muz",-1,-1),new i("nuz",-1,-1),new i("müz",-1,-1),new i("nüz",-1,-1),new i("mız",-1,-1),new i("nız",-1,-1)],or=[new i("leri",-1,-1),new i("ları",-1,-1)],sr=[new i("ni",-1,-1),new i("nu",-1,-1),new i("nü",-1,-1),new i("nı",-1,-1)],cr=[new i("in",-1,-1),new i("un",-1,-1),new i("ün",-1,-1),new i("ın",-1,-1)],lr=[new i("a",-1,-1),new i("e",-1,-1)],ar=[new i("na",-1,-1),new i("ne",-1,-1)],mr=[new i("da",-1,-1),new i("ta",-1,-1),new i("de",-1,-1),new i("te",-1,-1)],dr=[new i("nda",-1,-1),new i("nde",-1,-1)],fr=[new i("dan",-1,-1),new i("tan",-1,-1),new i("den",-1,-1),new i("ten",-1,-1)],br=[new i("ndan",-1,-1),new i("nden",-1,-1)],wr=[new i("la",-1,-1),new i("le",-1,-1)],_r=[new i("ca",-1,-1),new i("ce",-1,-1)],kr=[new i("im",-1,-1),new i("um",-1,-1),new i("üm",-1,-1),new i("ım",-1,-1)],pr=[new i("sin",-1,-1),new i("sun",-1,-1),new i("sün",-1,-1),new i("sın",-1,-1)],gr=[new i("iz",-1,-1),new i("uz",-1,-1),new i("üz",-1,-1),new i("ız",-1,-1)],yr=[new i("siniz",-1,-1),new i("sunuz",-1,-1),new i("sünüz",-1,-1),new i("sınız",-1,-1)],zr=[new i("lar",-1,-1),new i("ler",-1,-1)],vr=[new i("niz",-1,-1),new i("nuz",-1,-1),new i("nüz",-1,-1),new i("nız",-1,-1)],hr=[new i("dir",-1,-1),new i("tir",-1,-1),new i("dur",-1,-1),new i("tur",-1,-1),new i("dür",-1,-1),new i("tür",-1,-1),new i("dır",-1,-1),new i("tır",-1,-1)],qr=[new i("casına",-1,-1),new i("cesine",-1,-1)],Cr=[new i("di",-1,-1),new i("ti",-1,-1),new i("dik",-1,-1),new i("tik",-1,-1),new i("duk",-1,-1),new i("tuk",-1,-1),new i("dük",-1,-1),new i("tük",-1,-1),new i("dık",-1,-1),new i("tık",-1,-1),new i("dim",-1,-1),new i("tim",-1,-1),new i("dum",-1,-1),new i("tum",-1,-1),new i("düm",-1,-1),new i("tüm",-1,-1),new i("dım",-1,-1),new i("tım",-1,-1),new i("din",-1,-1),new i("tin",-1,-1),new i("dun",-1,-1),new i("tun",-1,-1),new i("dün",-1,-1),new i("tün",-1,-1),new i("dın",-1,-1),new i("tın",-1,-1),new i("du",-1,-1),new i("tu",-1,-1),new i("dü",-1,-1),new i("tü",-1,-1),new i("dı",-1,-1),new i("tı",-1,-1)],Pr=[new i("sa",-1,-1),new i("se",-1,-1),new i("sak",-1,-1),new i("sek",-1,-1),new i("sam",-1,-1),new i("sem",-1,-1),new i("san",-1,-1),new i("sen",-1,-1)],Fr=[new i("miş",-1,-1),new i("muş",-1,-1),new i("müş",-1,-1),new i("mış",-1,-1)],Sr=[new i("b",-1,1),new i("c",-1,2),new i("d",-1,3),new i("ğ",-1,4)],Wr=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,8,0,0,0,0,0,0,1],Lr=[1,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,1],xr=[1,64,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],Ar=[17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,130],Er=[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1],jr=[17],Tr=[65],Zr=[65],Br=[["a",xr,97,305],["e",Ar,101,252],["ı",Er,97,305],["i",jr,101,105],["o",Tr,111,117],["ö",Zr,246,252],["u",Tr,111,117]],Dr=new e;this.setCurrent=function(r){Dr.setCurrent(r)},this.getCurrent=function(){return Dr.getCurrent()},this.stem=function(){return!!($()&&(Dr.limit_backward=Dr.cursor,Dr.cursor=Dr.limit,J(),Dr.cursor=Dr.limit,nr&&(R(),Dr.cursor=Dr.limit_backward,er())))}};return function(r){return"function"==typeof r.update?r.update(function(r){return n.setCurrent(r),n.stem(),n.getCurrent()}):(n.setCurrent(r),n.stem(),n.getCurrent())}}(),r.Pipeline.registerFunction(r.tr.stemmer,"stemmer-tr"),r.tr.stopWordFilter=r.generateStopWordFilter("acaba altmış altı ama ancak arada aslında ayrıca bana bazı belki ben benden beni benim beri beş bile bin bir biri birkaç birkez birçok birşey birşeyi biz bizden bize bizi bizim bu buna bunda bundan bunlar bunları bunların bunu bunun burada böyle böylece da daha dahi de defa değil diye diğer doksan dokuz dolayı dolayısıyla dört edecek eden ederek edilecek ediliyor edilmesi ediyor elli en etmesi etti ettiği ettiğini eğer gibi göre halen hangi hatta hem henüz hep hepsi her herhangi herkesin hiç hiçbir iki ile ilgili ise itibaren itibariyle için işte kadar karşın katrilyon kendi kendilerine kendini kendisi kendisine kendisini kez ki kim kimden kime kimi kimse kırk milyar milyon mu mü mı nasıl ne neden nedenle nerde nerede nereye niye niçin o olan olarak oldu olduklarını olduğu olduğunu olmadı olmadığı olmak olması olmayan olmaz olsa olsun olup olur olursa oluyor on ona ondan onlar onlardan onları onların onu onun otuz oysa pek rağmen sadece sanki sekiz seksen sen senden seni senin siz sizden sizi sizin tarafından trilyon tüm var vardı ve veya ya yani yapacak yapmak yaptı yaptıkları yaptığı yaptığını yapılan yapılması yapıyor yedi yerine yetmiş yine yirmi yoksa yüz zaten çok çünkü öyle üzere üç şey şeyden şeyi şeyler şu şuna şunda şundan şunları şunu şöyle".split(" ")),r.Pipeline.registerFunction(r.tr.stopWordFilter,"stopWordFilter-tr")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.vi.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.vi.min.js new file mode 100755 index 0000000..22aed28 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.vi.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r():r()(e.lunr)}(this,function(){return function(e){if(void 0===e)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===e.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");e.vi=function(){this.pipeline.reset(),this.pipeline.add(e.vi.stopWordFilter,e.vi.trimmer)},e.vi.wordCharacters="[A-Za-ẓ̀͐́͑̉̃̓ÂâÊêÔôĂ-ăĐ-đƠ-ơƯ-ư]",e.vi.trimmer=e.trimmerSupport.generateTrimmer(e.vi.wordCharacters),e.Pipeline.registerFunction(e.vi.trimmer,"trimmer-vi"),e.vi.stopWordFilter=e.generateStopWordFilter("là cái nhưng mà".split(" "))}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/min/lunr.zh.min.js b/1.0.X/assets/javascripts/lunr/min/lunr.zh.min.js new file mode 100755 index 0000000..fda66e9 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/min/lunr.zh.min.js @@ -0,0 +1 @@ +!function(e,r){"function"==typeof define&&define.amd?define(r):"object"==typeof exports?module.exports=r(require("@node-rs/jieba")):r()(e.lunr)}(this,function(e){return function(r,t){if(void 0===r)throw new Error("Lunr is not present. Please include / require Lunr before this script.");if(void 0===r.stemmerSupport)throw new Error("Lunr stemmer support is not present. Please include / require Lunr stemmer support before this script.");var i="2"==r.version[0];r.zh=function(){this.pipeline.reset(),this.pipeline.add(r.zh.trimmer,r.zh.stopWordFilter,r.zh.stemmer),i?this.tokenizer=r.zh.tokenizer:(r.tokenizer&&(r.tokenizer=r.zh.tokenizer),this.tokenizerFn&&(this.tokenizerFn=r.zh.tokenizer))},r.zh.tokenizer=function(n){if(!arguments.length||null==n||void 0==n)return[];if(Array.isArray(n))return n.map(function(e){return i?new r.Token(e.toLowerCase()):e.toLowerCase()});t&&e.load(t);var o=n.toString().trim().toLowerCase(),s=[];e.cut(o,!0).forEach(function(e){s=s.concat(e.split(" "))}),s=s.filter(function(e){return!!e});var u=0;return s.map(function(e,t){if(i){var n=o.indexOf(e,u),s={};return s.position=[n,e.length],s.index=t,u=n,new r.Token(e,s)}return e})},r.zh.wordCharacters="\\w一-龥",r.zh.trimmer=r.trimmerSupport.generateTrimmer(r.zh.wordCharacters),r.Pipeline.registerFunction(r.zh.trimmer,"trimmer-zh"),r.zh.stemmer=function(){return function(e){return e}}(),r.Pipeline.registerFunction(r.zh.stemmer,"stemmer-zh"),r.zh.stopWordFilter=r.generateStopWordFilter("的 一 不 在 人 有 是 为 為 以 于 於 上 他 而 后 後 之 来 來 及 了 因 下 可 到 由 这 這 与 與 也 此 但 并 並 个 個 其 已 无 無 小 我 们 們 起 最 再 今 去 好 只 又 或 很 亦 某 把 那 你 乃 它 吧 被 比 别 趁 当 當 从 從 得 打 凡 儿 兒 尔 爾 该 該 各 给 給 跟 和 何 还 還 即 几 幾 既 看 据 據 距 靠 啦 另 么 麽 每 嘛 拿 哪 您 凭 憑 且 却 卻 让 讓 仍 啥 如 若 使 谁 誰 虽 雖 随 隨 同 所 她 哇 嗡 往 些 向 沿 哟 喲 用 咱 则 則 怎 曾 至 致 着 著 诸 諸 自".split(" ")),r.Pipeline.registerFunction(r.zh.stopWordFilter,"stopWordFilter-zh")}}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/tinyseg.js b/1.0.X/assets/javascripts/lunr/tinyseg.js new file mode 100755 index 0000000..167fa6d --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/tinyseg.js @@ -0,0 +1,206 @@ +/** + * export the module via AMD, CommonJS or as a browser global + * Export code from https://github.com/umdjs/umd/blob/master/returnExports.js + */ +;(function (root, factory) { + if (typeof define === 'function' && define.amd) { + // AMD. Register as an anonymous module. + define(factory) + } else if (typeof exports === 'object') { + /** + * Node. Does not work with strict CommonJS, but + * only CommonJS-like environments that support module.exports, + * like Node. + */ + module.exports = factory() + } else { + // Browser globals (root is window) + factory()(root.lunr); + } +}(this, function () { + /** + * Just return a value to define the module export. + * This example returns an object, but the module + * can return a function as the exported value. + */ + + return function(lunr) { + // TinySegmenter 0.1 -- Super compact Japanese tokenizer in Javascript + // (c) 2008 Taku Kudo + // TinySegmenter is freely distributable under the terms of a new BSD licence. + // For details, see http://chasen.org/~taku/software/TinySegmenter/LICENCE.txt + + function TinySegmenter() { + var patterns = { + "[一二三四五六七八九十百千万億兆]":"M", + "[一-龠々〆ヵヶ]":"H", + "[ぁ-ん]":"I", + "[ァ-ヴーア-ン゙ー]":"K", + "[a-zA-Za-zA-Z]":"A", + "[0-90-9]":"N" + } + this.chartype_ = []; + for (var i in patterns) { + var regexp = new RegExp(i); + this.chartype_.push([regexp, patterns[i]]); + } + + this.BIAS__ = -332 + this.BC1__ = {"HH":6,"II":2461,"KH":406,"OH":-1378}; + this.BC2__ = {"AA":-3267,"AI":2744,"AN":-878,"HH":-4070,"HM":-1711,"HN":4012,"HO":3761,"IA":1327,"IH":-1184,"II":-1332,"IK":1721,"IO":5492,"KI":3831,"KK":-8741,"MH":-3132,"MK":3334,"OO":-2920}; + this.BC3__ = {"HH":996,"HI":626,"HK":-721,"HN":-1307,"HO":-836,"IH":-301,"KK":2762,"MK":1079,"MM":4034,"OA":-1652,"OH":266}; + this.BP1__ = {"BB":295,"OB":304,"OO":-125,"UB":352}; + this.BP2__ = {"BO":60,"OO":-1762}; + this.BQ1__ = {"BHH":1150,"BHM":1521,"BII":-1158,"BIM":886,"BMH":1208,"BNH":449,"BOH":-91,"BOO":-2597,"OHI":451,"OIH":-296,"OKA":1851,"OKH":-1020,"OKK":904,"OOO":2965}; + this.BQ2__ = {"BHH":118,"BHI":-1159,"BHM":466,"BIH":-919,"BKK":-1720,"BKO":864,"OHH":-1139,"OHM":-181,"OIH":153,"UHI":-1146}; + this.BQ3__ = {"BHH":-792,"BHI":2664,"BII":-299,"BKI":419,"BMH":937,"BMM":8335,"BNN":998,"BOH":775,"OHH":2174,"OHM":439,"OII":280,"OKH":1798,"OKI":-793,"OKO":-2242,"OMH":-2402,"OOO":11699}; + this.BQ4__ = {"BHH":-3895,"BIH":3761,"BII":-4654,"BIK":1348,"BKK":-1806,"BMI":-3385,"BOO":-12396,"OAH":926,"OHH":266,"OHK":-2036,"ONN":-973}; + this.BW1__ = {",と":660,",同":727,"B1あ":1404,"B1同":542,"、と":660,"、同":727,"」と":1682,"あっ":1505,"いう":1743,"いっ":-2055,"いる":672,"うし":-4817,"うん":665,"から":3472,"がら":600,"こう":-790,"こと":2083,"こん":-1262,"さら":-4143,"さん":4573,"した":2641,"して":1104,"すで":-3399,"そこ":1977,"それ":-871,"たち":1122,"ため":601,"った":3463,"つい":-802,"てい":805,"てき":1249,"でき":1127,"です":3445,"では":844,"とい":-4915,"とみ":1922,"どこ":3887,"ない":5713,"なっ":3015,"など":7379,"なん":-1113,"にし":2468,"には":1498,"にも":1671,"に対":-912,"の一":-501,"の中":741,"ませ":2448,"まで":1711,"まま":2600,"まる":-2155,"やむ":-1947,"よっ":-2565,"れた":2369,"れで":-913,"をし":1860,"を見":731,"亡く":-1886,"京都":2558,"取り":-2784,"大き":-2604,"大阪":1497,"平方":-2314,"引き":-1336,"日本":-195,"本当":-2423,"毎日":-2113,"目指":-724,"B1あ":1404,"B1同":542,"」と":1682}; + this.BW2__ = {"..":-11822,"11":-669,"――":-5730,"−−":-13175,"いう":-1609,"うか":2490,"かし":-1350,"かも":-602,"から":-7194,"かれ":4612,"がい":853,"がら":-3198,"きた":1941,"くな":-1597,"こと":-8392,"この":-4193,"させ":4533,"され":13168,"さん":-3977,"しい":-1819,"しか":-545,"した":5078,"して":972,"しな":939,"その":-3744,"たい":-1253,"たた":-662,"ただ":-3857,"たち":-786,"たと":1224,"たは":-939,"った":4589,"って":1647,"っと":-2094,"てい":6144,"てき":3640,"てく":2551,"ては":-3110,"ても":-3065,"でい":2666,"でき":-1528,"でし":-3828,"です":-4761,"でも":-4203,"とい":1890,"とこ":-1746,"とと":-2279,"との":720,"とみ":5168,"とも":-3941,"ない":-2488,"なが":-1313,"など":-6509,"なの":2614,"なん":3099,"にお":-1615,"にし":2748,"にな":2454,"によ":-7236,"に対":-14943,"に従":-4688,"に関":-11388,"のか":2093,"ので":-7059,"のに":-6041,"のの":-6125,"はい":1073,"はが":-1033,"はず":-2532,"ばれ":1813,"まし":-1316,"まで":-6621,"まれ":5409,"めて":-3153,"もい":2230,"もの":-10713,"らか":-944,"らし":-1611,"らに":-1897,"りし":651,"りま":1620,"れた":4270,"れて":849,"れば":4114,"ろう":6067,"われ":7901,"を通":-11877,"んだ":728,"んな":-4115,"一人":602,"一方":-1375,"一日":970,"一部":-1051,"上が":-4479,"会社":-1116,"出て":2163,"分の":-7758,"同党":970,"同日":-913,"大阪":-2471,"委員":-1250,"少な":-1050,"年度":-8669,"年間":-1626,"府県":-2363,"手権":-1982,"新聞":-4066,"日新":-722,"日本":-7068,"日米":3372,"曜日":-601,"朝鮮":-2355,"本人":-2697,"東京":-1543,"然と":-1384,"社会":-1276,"立て":-990,"第に":-1612,"米国":-4268,"11":-669}; + this.BW3__ = {"あた":-2194,"あり":719,"ある":3846,"い.":-1185,"い。":-1185,"いい":5308,"いえ":2079,"いく":3029,"いた":2056,"いっ":1883,"いる":5600,"いわ":1527,"うち":1117,"うと":4798,"えと":1454,"か.":2857,"か。":2857,"かけ":-743,"かっ":-4098,"かに":-669,"から":6520,"かり":-2670,"が,":1816,"が、":1816,"がき":-4855,"がけ":-1127,"がっ":-913,"がら":-4977,"がり":-2064,"きた":1645,"けど":1374,"こと":7397,"この":1542,"ころ":-2757,"さい":-714,"さを":976,"し,":1557,"し、":1557,"しい":-3714,"した":3562,"して":1449,"しな":2608,"しま":1200,"す.":-1310,"す。":-1310,"する":6521,"ず,":3426,"ず、":3426,"ずに":841,"そう":428,"た.":8875,"た。":8875,"たい":-594,"たの":812,"たり":-1183,"たる":-853,"だ.":4098,"だ。":4098,"だっ":1004,"った":-4748,"って":300,"てい":6240,"てお":855,"ても":302,"です":1437,"でに":-1482,"では":2295,"とう":-1387,"とし":2266,"との":541,"とも":-3543,"どう":4664,"ない":1796,"なく":-903,"など":2135,"に,":-1021,"に、":-1021,"にし":1771,"にな":1906,"には":2644,"の,":-724,"の、":-724,"の子":-1000,"は,":1337,"は、":1337,"べき":2181,"まし":1113,"ます":6943,"まっ":-1549,"まで":6154,"まれ":-793,"らし":1479,"られ":6820,"るる":3818,"れ,":854,"れ、":854,"れた":1850,"れて":1375,"れば":-3246,"れる":1091,"われ":-605,"んだ":606,"んで":798,"カ月":990,"会議":860,"入り":1232,"大会":2217,"始め":1681,"市":965,"新聞":-5055,"日,":974,"日、":974,"社会":2024,"カ月":990}; + this.TC1__ = {"AAA":1093,"HHH":1029,"HHM":580,"HII":998,"HOH":-390,"HOM":-331,"IHI":1169,"IOH":-142,"IOI":-1015,"IOM":467,"MMH":187,"OOI":-1832}; + this.TC2__ = {"HHO":2088,"HII":-1023,"HMM":-1154,"IHI":-1965,"KKH":703,"OII":-2649}; + this.TC3__ = {"AAA":-294,"HHH":346,"HHI":-341,"HII":-1088,"HIK":731,"HOH":-1486,"IHH":128,"IHI":-3041,"IHO":-1935,"IIH":-825,"IIM":-1035,"IOI":-542,"KHH":-1216,"KKA":491,"KKH":-1217,"KOK":-1009,"MHH":-2694,"MHM":-457,"MHO":123,"MMH":-471,"NNH":-1689,"NNO":662,"OHO":-3393}; + this.TC4__ = {"HHH":-203,"HHI":1344,"HHK":365,"HHM":-122,"HHN":182,"HHO":669,"HIH":804,"HII":679,"HOH":446,"IHH":695,"IHO":-2324,"IIH":321,"III":1497,"IIO":656,"IOO":54,"KAK":4845,"KKA":3386,"KKK":3065,"MHH":-405,"MHI":201,"MMH":-241,"MMM":661,"MOM":841}; + this.TQ1__ = {"BHHH":-227,"BHHI":316,"BHIH":-132,"BIHH":60,"BIII":1595,"BNHH":-744,"BOHH":225,"BOOO":-908,"OAKK":482,"OHHH":281,"OHIH":249,"OIHI":200,"OIIH":-68}; + this.TQ2__ = {"BIHH":-1401,"BIII":-1033,"BKAK":-543,"BOOO":-5591}; + this.TQ3__ = {"BHHH":478,"BHHM":-1073,"BHIH":222,"BHII":-504,"BIIH":-116,"BIII":-105,"BMHI":-863,"BMHM":-464,"BOMH":620,"OHHH":346,"OHHI":1729,"OHII":997,"OHMH":481,"OIHH":623,"OIIH":1344,"OKAK":2792,"OKHH":587,"OKKA":679,"OOHH":110,"OOII":-685}; + this.TQ4__ = {"BHHH":-721,"BHHM":-3604,"BHII":-966,"BIIH":-607,"BIII":-2181,"OAAA":-2763,"OAKK":180,"OHHH":-294,"OHHI":2446,"OHHO":480,"OHIH":-1573,"OIHH":1935,"OIHI":-493,"OIIH":626,"OIII":-4007,"OKAK":-8156}; + this.TW1__ = {"につい":-4681,"東京都":2026}; + this.TW2__ = {"ある程":-2049,"いった":-1256,"ころが":-2434,"しょう":3873,"その後":-4430,"だって":-1049,"ていた":1833,"として":-4657,"ともに":-4517,"もので":1882,"一気に":-792,"初めて":-1512,"同時に":-8097,"大きな":-1255,"対して":-2721,"社会党":-3216}; + this.TW3__ = {"いただ":-1734,"してい":1314,"として":-4314,"につい":-5483,"にとっ":-5989,"に当た":-6247,"ので,":-727,"ので、":-727,"のもの":-600,"れから":-3752,"十二月":-2287}; + this.TW4__ = {"いう.":8576,"いう。":8576,"からな":-2348,"してい":2958,"たが,":1516,"たが、":1516,"ている":1538,"という":1349,"ました":5543,"ません":1097,"ようと":-4258,"よると":5865}; + this.UC1__ = {"A":484,"K":93,"M":645,"O":-505}; + this.UC2__ = {"A":819,"H":1059,"I":409,"M":3987,"N":5775,"O":646}; + this.UC3__ = {"A":-1370,"I":2311}; + this.UC4__ = {"A":-2643,"H":1809,"I":-1032,"K":-3450,"M":3565,"N":3876,"O":6646}; + this.UC5__ = {"H":313,"I":-1238,"K":-799,"M":539,"O":-831}; + this.UC6__ = {"H":-506,"I":-253,"K":87,"M":247,"O":-387}; + this.UP1__ = {"O":-214}; + this.UP2__ = {"B":69,"O":935}; + this.UP3__ = {"B":189}; + this.UQ1__ = {"BH":21,"BI":-12,"BK":-99,"BN":142,"BO":-56,"OH":-95,"OI":477,"OK":410,"OO":-2422}; + this.UQ2__ = {"BH":216,"BI":113,"OK":1759}; + this.UQ3__ = {"BA":-479,"BH":42,"BI":1913,"BK":-7198,"BM":3160,"BN":6427,"BO":14761,"OI":-827,"ON":-3212}; + this.UW1__ = {",":156,"、":156,"「":-463,"あ":-941,"う":-127,"が":-553,"き":121,"こ":505,"で":-201,"と":-547,"ど":-123,"に":-789,"の":-185,"は":-847,"も":-466,"や":-470,"よ":182,"ら":-292,"り":208,"れ":169,"を":-446,"ん":-137,"・":-135,"主":-402,"京":-268,"区":-912,"午":871,"国":-460,"大":561,"委":729,"市":-411,"日":-141,"理":361,"生":-408,"県":-386,"都":-718,"「":-463,"・":-135}; + this.UW2__ = {",":-829,"、":-829,"〇":892,"「":-645,"」":3145,"あ":-538,"い":505,"う":134,"お":-502,"か":1454,"が":-856,"く":-412,"こ":1141,"さ":878,"ざ":540,"し":1529,"す":-675,"せ":300,"そ":-1011,"た":188,"だ":1837,"つ":-949,"て":-291,"で":-268,"と":-981,"ど":1273,"な":1063,"に":-1764,"の":130,"は":-409,"ひ":-1273,"べ":1261,"ま":600,"も":-1263,"や":-402,"よ":1639,"り":-579,"る":-694,"れ":571,"を":-2516,"ん":2095,"ア":-587,"カ":306,"キ":568,"ッ":831,"三":-758,"不":-2150,"世":-302,"中":-968,"主":-861,"事":492,"人":-123,"会":978,"保":362,"入":548,"初":-3025,"副":-1566,"北":-3414,"区":-422,"大":-1769,"天":-865,"太":-483,"子":-1519,"学":760,"実":1023,"小":-2009,"市":-813,"年":-1060,"強":1067,"手":-1519,"揺":-1033,"政":1522,"文":-1355,"新":-1682,"日":-1815,"明":-1462,"最":-630,"朝":-1843,"本":-1650,"東":-931,"果":-665,"次":-2378,"民":-180,"気":-1740,"理":752,"発":529,"目":-1584,"相":-242,"県":-1165,"立":-763,"第":810,"米":509,"自":-1353,"行":838,"西":-744,"見":-3874,"調":1010,"議":1198,"込":3041,"開":1758,"間":-1257,"「":-645,"」":3145,"ッ":831,"ア":-587,"カ":306,"キ":568}; + this.UW3__ = {",":4889,"1":-800,"−":-1723,"、":4889,"々":-2311,"〇":5827,"」":2670,"〓":-3573,"あ":-2696,"い":1006,"う":2342,"え":1983,"お":-4864,"か":-1163,"が":3271,"く":1004,"け":388,"げ":401,"こ":-3552,"ご":-3116,"さ":-1058,"し":-395,"す":584,"せ":3685,"そ":-5228,"た":842,"ち":-521,"っ":-1444,"つ":-1081,"て":6167,"で":2318,"と":1691,"ど":-899,"な":-2788,"に":2745,"の":4056,"は":4555,"ひ":-2171,"ふ":-1798,"へ":1199,"ほ":-5516,"ま":-4384,"み":-120,"め":1205,"も":2323,"や":-788,"よ":-202,"ら":727,"り":649,"る":5905,"れ":2773,"わ":-1207,"を":6620,"ん":-518,"ア":551,"グ":1319,"ス":874,"ッ":-1350,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278,"・":-3794,"一":-1619,"下":-1759,"世":-2087,"両":3815,"中":653,"主":-758,"予":-1193,"二":974,"人":2742,"今":792,"他":1889,"以":-1368,"低":811,"何":4265,"作":-361,"保":-2439,"元":4858,"党":3593,"全":1574,"公":-3030,"六":755,"共":-1880,"円":5807,"再":3095,"分":457,"初":2475,"別":1129,"前":2286,"副":4437,"力":365,"動":-949,"務":-1872,"化":1327,"北":-1038,"区":4646,"千":-2309,"午":-783,"協":-1006,"口":483,"右":1233,"各":3588,"合":-241,"同":3906,"和":-837,"員":4513,"国":642,"型":1389,"場":1219,"外":-241,"妻":2016,"学":-1356,"安":-423,"実":-1008,"家":1078,"小":-513,"少":-3102,"州":1155,"市":3197,"平":-1804,"年":2416,"広":-1030,"府":1605,"度":1452,"建":-2352,"当":-3885,"得":1905,"思":-1291,"性":1822,"戸":-488,"指":-3973,"政":-2013,"教":-1479,"数":3222,"文":-1489,"新":1764,"日":2099,"旧":5792,"昨":-661,"時":-1248,"曜":-951,"最":-937,"月":4125,"期":360,"李":3094,"村":364,"東":-805,"核":5156,"森":2438,"業":484,"氏":2613,"民":-1694,"決":-1073,"法":1868,"海":-495,"無":979,"物":461,"特":-3850,"生":-273,"用":914,"町":1215,"的":7313,"直":-1835,"省":792,"県":6293,"知":-1528,"私":4231,"税":401,"立":-960,"第":1201,"米":7767,"系":3066,"約":3663,"級":1384,"統":-4229,"総":1163,"線":1255,"者":6457,"能":725,"自":-2869,"英":785,"見":1044,"調":-562,"財":-733,"費":1777,"車":1835,"軍":1375,"込":-1504,"通":-1136,"選":-681,"郎":1026,"郡":4404,"部":1200,"金":2163,"長":421,"開":-1432,"間":1302,"関":-1282,"雨":2009,"電":-1045,"非":2066,"駅":1620,"1":-800,"」":2670,"・":-3794,"ッ":-1350,"ア":551,"グ":1319,"ス":874,"ト":521,"ム":1109,"ル":1591,"ロ":2201,"ン":278}; + this.UW4__ = {",":3930,".":3508,"―":-4841,"、":3930,"。":3508,"〇":4999,"「":1895,"」":3798,"〓":-5156,"あ":4752,"い":-3435,"う":-640,"え":-2514,"お":2405,"か":530,"が":6006,"き":-4482,"ぎ":-3821,"く":-3788,"け":-4376,"げ":-4734,"こ":2255,"ご":1979,"さ":2864,"し":-843,"じ":-2506,"す":-731,"ず":1251,"せ":181,"そ":4091,"た":5034,"だ":5408,"ち":-3654,"っ":-5882,"つ":-1659,"て":3994,"で":7410,"と":4547,"な":5433,"に":6499,"ぬ":1853,"ね":1413,"の":7396,"は":8578,"ば":1940,"ひ":4249,"び":-4134,"ふ":1345,"へ":6665,"べ":-744,"ほ":1464,"ま":1051,"み":-2082,"む":-882,"め":-5046,"も":4169,"ゃ":-2666,"や":2795,"ょ":-1544,"よ":3351,"ら":-2922,"り":-9726,"る":-14896,"れ":-2613,"ろ":-4570,"わ":-1783,"を":13150,"ん":-2352,"カ":2145,"コ":1789,"セ":1287,"ッ":-724,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637,"・":-4371,"ー":-11870,"一":-2069,"中":2210,"予":782,"事":-190,"井":-1768,"人":1036,"以":544,"会":950,"体":-1286,"作":530,"側":4292,"先":601,"党":-2006,"共":-1212,"内":584,"円":788,"初":1347,"前":1623,"副":3879,"力":-302,"動":-740,"務":-2715,"化":776,"区":4517,"協":1013,"参":1555,"合":-1834,"和":-681,"員":-910,"器":-851,"回":1500,"国":-619,"園":-1200,"地":866,"場":-1410,"塁":-2094,"士":-1413,"多":1067,"大":571,"子":-4802,"学":-1397,"定":-1057,"寺":-809,"小":1910,"屋":-1328,"山":-1500,"島":-2056,"川":-2667,"市":2771,"年":374,"庁":-4556,"後":456,"性":553,"感":916,"所":-1566,"支":856,"改":787,"政":2182,"教":704,"文":522,"方":-856,"日":1798,"時":1829,"最":845,"月":-9066,"木":-485,"来":-442,"校":-360,"業":-1043,"氏":5388,"民":-2716,"気":-910,"沢":-939,"済":-543,"物":-735,"率":672,"球":-1267,"生":-1286,"産":-1101,"田":-2900,"町":1826,"的":2586,"目":922,"省":-3485,"県":2997,"空":-867,"立":-2112,"第":788,"米":2937,"系":786,"約":2171,"経":1146,"統":-1169,"総":940,"線":-994,"署":749,"者":2145,"能":-730,"般":-852,"行":-792,"規":792,"警":-1184,"議":-244,"谷":-1000,"賞":730,"車":-1481,"軍":1158,"輪":-1433,"込":-3370,"近":929,"道":-1291,"選":2596,"郎":-4866,"都":1192,"野":-1100,"銀":-2213,"長":357,"間":-2344,"院":-2297,"際":-2604,"電":-878,"領":-1659,"題":-792,"館":-1984,"首":1749,"高":2120,"「":1895,"」":3798,"・":-4371,"ッ":-724,"ー":-11870,"カ":2145,"コ":1789,"セ":1287,"ト":-403,"メ":-1635,"ラ":-881,"リ":-541,"ル":-856,"ン":-3637}; + this.UW5__ = {",":465,".":-299,"1":-514,"E2":-32768,"]":-2762,"、":465,"。":-299,"「":363,"あ":1655,"い":331,"う":-503,"え":1199,"お":527,"か":647,"が":-421,"き":1624,"ぎ":1971,"く":312,"げ":-983,"さ":-1537,"し":-1371,"す":-852,"だ":-1186,"ち":1093,"っ":52,"つ":921,"て":-18,"で":-850,"と":-127,"ど":1682,"な":-787,"に":-1224,"の":-635,"は":-578,"べ":1001,"み":502,"め":865,"ゃ":3350,"ょ":854,"り":-208,"る":429,"れ":504,"わ":419,"を":-1264,"ん":327,"イ":241,"ル":451,"ン":-343,"中":-871,"京":722,"会":-1153,"党":-654,"務":3519,"区":-901,"告":848,"員":2104,"大":-1296,"学":-548,"定":1785,"嵐":-1304,"市":-2991,"席":921,"年":1763,"思":872,"所":-814,"挙":1618,"新":-1682,"日":218,"月":-4353,"査":932,"格":1356,"機":-1508,"氏":-1347,"田":240,"町":-3912,"的":-3149,"相":1319,"省":-1052,"県":-4003,"研":-997,"社":-278,"空":-813,"統":1955,"者":-2233,"表":663,"語":-1073,"議":1219,"選":-1018,"郎":-368,"長":786,"間":1191,"題":2368,"館":-689,"1":-514,"E2":-32768,"「":363,"イ":241,"ル":451,"ン":-343}; + this.UW6__ = {",":227,".":808,"1":-270,"E1":306,"、":227,"。":808,"あ":-307,"う":189,"か":241,"が":-73,"く":-121,"こ":-200,"じ":1782,"す":383,"た":-428,"っ":573,"て":-1014,"で":101,"と":-105,"な":-253,"に":-149,"の":-417,"は":-236,"も":-206,"り":187,"る":-135,"を":195,"ル":-673,"ン":-496,"一":-277,"中":201,"件":-800,"会":624,"前":302,"区":1792,"員":-1212,"委":798,"学":-960,"市":887,"広":-695,"後":535,"業":-697,"相":753,"社":-507,"福":974,"空":-822,"者":1811,"連":463,"郎":1082,"1":-270,"E1":306,"ル":-673,"ン":-496}; + + return this; + } + TinySegmenter.prototype.ctype_ = function(str) { + for (var i in this.chartype_) { + if (str.match(this.chartype_[i][0])) { + return this.chartype_[i][1]; + } + } + return "O"; + } + + TinySegmenter.prototype.ts_ = function(v) { + if (v) { return v; } + return 0; + } + + TinySegmenter.prototype.segment = function(input) { + if (input == null || input == undefined || input == "") { + return []; + } + var result = []; + var seg = ["B3","B2","B1"]; + var ctype = ["O","O","O"]; + var o = input.split(""); + for (i = 0; i < o.length; ++i) { + seg.push(o[i]); + ctype.push(this.ctype_(o[i])) + } + seg.push("E1"); + seg.push("E2"); + seg.push("E3"); + ctype.push("O"); + ctype.push("O"); + ctype.push("O"); + var word = seg[3]; + var p1 = "U"; + var p2 = "U"; + var p3 = "U"; + for (var i = 4; i < seg.length - 3; ++i) { + var score = this.BIAS__; + var w1 = seg[i-3]; + var w2 = seg[i-2]; + var w3 = seg[i-1]; + var w4 = seg[i]; + var w5 = seg[i+1]; + var w6 = seg[i+2]; + var c1 = ctype[i-3]; + var c2 = ctype[i-2]; + var c3 = ctype[i-1]; + var c4 = ctype[i]; + var c5 = ctype[i+1]; + var c6 = ctype[i+2]; + score += this.ts_(this.UP1__[p1]); + score += this.ts_(this.UP2__[p2]); + score += this.ts_(this.UP3__[p3]); + score += this.ts_(this.BP1__[p1 + p2]); + score += this.ts_(this.BP2__[p2 + p3]); + score += this.ts_(this.UW1__[w1]); + score += this.ts_(this.UW2__[w2]); + score += this.ts_(this.UW3__[w3]); + score += this.ts_(this.UW4__[w4]); + score += this.ts_(this.UW5__[w5]); + score += this.ts_(this.UW6__[w6]); + score += this.ts_(this.BW1__[w2 + w3]); + score += this.ts_(this.BW2__[w3 + w4]); + score += this.ts_(this.BW3__[w4 + w5]); + score += this.ts_(this.TW1__[w1 + w2 + w3]); + score += this.ts_(this.TW2__[w2 + w3 + w4]); + score += this.ts_(this.TW3__[w3 + w4 + w5]); + score += this.ts_(this.TW4__[w4 + w5 + w6]); + score += this.ts_(this.UC1__[c1]); + score += this.ts_(this.UC2__[c2]); + score += this.ts_(this.UC3__[c3]); + score += this.ts_(this.UC4__[c4]); + score += this.ts_(this.UC5__[c5]); + score += this.ts_(this.UC6__[c6]); + score += this.ts_(this.BC1__[c2 + c3]); + score += this.ts_(this.BC2__[c3 + c4]); + score += this.ts_(this.BC3__[c4 + c5]); + score += this.ts_(this.TC1__[c1 + c2 + c3]); + score += this.ts_(this.TC2__[c2 + c3 + c4]); + score += this.ts_(this.TC3__[c3 + c4 + c5]); + score += this.ts_(this.TC4__[c4 + c5 + c6]); + // score += this.ts_(this.TC5__[c4 + c5 + c6]); + score += this.ts_(this.UQ1__[p1 + c1]); + score += this.ts_(this.UQ2__[p2 + c2]); + score += this.ts_(this.UQ3__[p3 + c3]); + score += this.ts_(this.BQ1__[p2 + c2 + c3]); + score += this.ts_(this.BQ2__[p2 + c3 + c4]); + score += this.ts_(this.BQ3__[p3 + c2 + c3]); + score += this.ts_(this.BQ4__[p3 + c3 + c4]); + score += this.ts_(this.TQ1__[p2 + c1 + c2 + c3]); + score += this.ts_(this.TQ2__[p2 + c2 + c3 + c4]); + score += this.ts_(this.TQ3__[p3 + c1 + c2 + c3]); + score += this.ts_(this.TQ4__[p3 + c2 + c3 + c4]); + var p = "O"; + if (score > 0) { + result.push(word); + word = ""; + p = "B"; + } + p1 = p2; + p2 = p3; + p3 = p; + word += seg[i]; + } + result.push(word); + + return result; + } + + lunr.TinySegmenter = TinySegmenter; + }; + +})); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/lunr/wordcut.js b/1.0.X/assets/javascripts/lunr/wordcut.js new file mode 100755 index 0000000..0d898c9 --- /dev/null +++ b/1.0.X/assets/javascripts/lunr/wordcut.js @@ -0,0 +1,6708 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}(g.lunr || (g.lunr = {})).wordcut = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o 1; + }) + this.addWords(words, false) + } + if(finalize){ + this.finalizeDict(); + } + }, + + dictSeek: function (l, r, ch, strOffset, pos) { + var ans = null; + while (l <= r) { + var m = Math.floor((l + r) / 2), + dict_item = this.dict[m], + len = dict_item.length; + if (len <= strOffset) { + l = m + 1; + } else { + var ch_ = dict_item[strOffset]; + if (ch_ < ch) { + l = m + 1; + } else if (ch_ > ch) { + r = m - 1; + } else { + ans = m; + if (pos == LEFT) { + r = m - 1; + } else { + l = m + 1; + } + } + } + } + return ans; + }, + + isFinal: function (acceptor) { + return this.dict[acceptor.l].length == acceptor.strOffset; + }, + + createAcceptor: function () { + return { + l: 0, + r: this.dict.length - 1, + strOffset: 0, + isFinal: false, + dict: this, + transit: function (ch) { + return this.dict.transit(this, ch); + }, + isError: false, + tag: "DICT", + w: 1, + type: "DICT" + }; + }, + + transit: function (acceptor, ch) { + var l = this.dictSeek(acceptor.l, + acceptor.r, + ch, + acceptor.strOffset, + LEFT); + if (l !== null) { + var r = this.dictSeek(l, + acceptor.r, + ch, + acceptor.strOffset, + RIGHT); + acceptor.l = l; + acceptor.r = r; + acceptor.strOffset++; + acceptor.isFinal = this.isFinal(acceptor); + } else { + acceptor.isError = true; + } + return acceptor; + }, + + sortuniq: function(a){ + return a.sort().filter(function(item, pos, arr){ + return !pos || item != arr[pos - 1]; + }) + }, + + flatten: function(a){ + //[[1,2],[3]] -> [1,2,3] + return [].concat.apply([], a); + } +}; +module.exports = WordcutDict; + +}).call(this,"/dist/tmp") +},{"glob":16,"path":22}],3:[function(require,module,exports){ +var WordRule = { + createAcceptor: function(tag) { + if (tag["WORD_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + var lch = ch.toLowerCase(); + if (lch >= "a" && lch <= "z") { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "WORD_RULE", + type: "WORD_RULE", + w: 1}; + } +}; + +var NumberRule = { + createAcceptor: function(tag) { + if (tag["NUMBER_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (ch >= "0" && ch <= "9") { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "NUMBER_RULE", + type: "NUMBER_RULE", + w: 1}; + } +}; + +var SpaceRule = { + tag: "SPACE_RULE", + createAcceptor: function(tag) { + + if (tag["SPACE_RULE"]) + return null; + + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (ch == " " || ch == "\t" || ch == "\r" || ch == "\n" || + ch == "\u00A0" || ch=="\u2003"//nbsp and emsp + ) { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: SpaceRule.tag, + w: 1, + type: "SPACE_RULE"}; + } +} + +var SingleSymbolRule = { + tag: "SINSYM", + createAcceptor: function(tag) { + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (this.strOffset == 0 && ch.match(/^[\@\(\)\/\,\-\."`]$/)) { + this.isFinal = true; + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "SINSYM", + w: 1, + type: "SINSYM"}; + } +} + + +var LatinRules = [WordRule, SpaceRule, SingleSymbolRule, NumberRule]; + +module.exports = LatinRules; + +},{}],4:[function(require,module,exports){ +var _ = require("underscore") + , WordcutCore = require("./wordcut_core"); +var PathInfoBuilder = { + + /* + buildByPartAcceptors: function(path, acceptors, i) { + var + var genInfos = partAcceptors.reduce(function(genInfos, acceptor) { + + }, []); + + return genInfos; + } + */ + + buildByAcceptors: function(path, finalAcceptors, i) { + var self = this; + var infos = finalAcceptors.map(function(acceptor) { + var p = i - acceptor.strOffset + 1 + , _info = path[p]; + + var info = {p: p, + mw: _info.mw + (acceptor.mw === undefined ? 0 : acceptor.mw), + w: acceptor.w + _info.w, + unk: (acceptor.unk ? acceptor.unk : 0) + _info.unk, + type: acceptor.type}; + + if (acceptor.type == "PART") { + for(var j = p + 1; j <= i; j++) { + path[j].merge = p; + } + info.merge = p; + } + + return info; + }); + return infos.filter(function(info) { return info; }); + }, + + fallback: function(path, leftBoundary, text, i) { + var _info = path[leftBoundary]; + if (text[i].match(/[\u0E48-\u0E4E]/)) { + if (leftBoundary != 0) + leftBoundary = path[leftBoundary].p; + return {p: leftBoundary, + mw: 0, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; +/* } else if(leftBoundary > 0 && path[leftBoundary].type !== "UNK") { + leftBoundary = path[leftBoundary].p; + return {p: leftBoundary, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; */ + } else { + return {p: leftBoundary, + mw: _info.mw, + w: 1 + _info.w, + unk: 1 + _info.unk, + type: "UNK"}; + } + }, + + build: function(path, finalAcceptors, i, leftBoundary, text) { + var basicPathInfos = this.buildByAcceptors(path, finalAcceptors, i); + if (basicPathInfos.length > 0) { + return basicPathInfos; + } else { + return [this.fallback(path, leftBoundary, text, i)]; + } + } +}; + +module.exports = function() { + return _.clone(PathInfoBuilder); +} + +},{"./wordcut_core":8,"underscore":25}],5:[function(require,module,exports){ +var _ = require("underscore"); + + +var PathSelector = { + selectPath: function(paths) { + var path = paths.reduce(function(selectedPath, path) { + if (selectedPath == null) { + return path; + } else { + if (path.unk < selectedPath.unk) + return path; + if (path.unk == selectedPath.unk) { + if (path.mw < selectedPath.mw) + return path + if (path.mw == selectedPath.mw) { + if (path.w < selectedPath.w) + return path; + } + } + return selectedPath; + } + }, null); + return path; + }, + + createPath: function() { + return [{p:null, w:0, unk:0, type: "INIT", mw:0}]; + } +}; + +module.exports = function() { + return _.clone(PathSelector); +}; + +},{"underscore":25}],6:[function(require,module,exports){ +function isMatch(pat, offset, ch) { + if (pat.length <= offset) + return false; + var _ch = pat[offset]; + return _ch == ch || + (_ch.match(/[กข]/) && ch.match(/[ก-ฮ]/)) || + (_ch.match(/[มบ]/) && ch.match(/[ก-ฮ]/)) || + (_ch.match(/\u0E49/) && ch.match(/[\u0E48-\u0E4B]/)); +} + +var Rule0 = { + pat: "เหก็ม", + createAcceptor: function(tag) { + return {strOffset: 0, + isFinal: false, + transit: function(ch) { + if (isMatch(Rule0.pat, this.strOffset,ch)) { + this.isFinal = (this.strOffset + 1 == Rule0.pat.length); + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "THAI_RULE", + type: "THAI_RULE", + w: 1}; + } +}; + +var PartRule = { + createAcceptor: function(tag) { + return {strOffset: 0, + patterns: [ + "แก", "เก", "ก้", "กก์", "กา", "กี", "กิ", "กืก" + ], + isFinal: false, + transit: function(ch) { + var offset = this.strOffset; + this.patterns = this.patterns.filter(function(pat) { + return isMatch(pat, offset, ch); + }); + + if (this.patterns.length > 0) { + var len = 1 + offset; + this.isFinal = this.patterns.some(function(pat) { + return pat.length == len; + }); + this.strOffset++; + } else { + this.isError = true; + } + return this; + }, + isError: false, + tag: "PART", + type: "PART", + unk: 1, + w: 1}; + } +}; + +var ThaiRules = [Rule0, PartRule]; + +module.exports = ThaiRules; + +},{}],7:[function(require,module,exports){ +var sys = require("sys") + , WordcutDict = require("./dict") + , WordcutCore = require("./wordcut_core") + , PathInfoBuilder = require("./path_info_builder") + , PathSelector = require("./path_selector") + , Acceptors = require("./acceptors") + , latinRules = require("./latin_rules") + , thaiRules = require("./thai_rules") + , _ = require("underscore"); + + +var Wordcut = Object.create(WordcutCore); +Wordcut.defaultPathInfoBuilder = PathInfoBuilder; +Wordcut.defaultPathSelector = PathSelector; +Wordcut.defaultAcceptors = Acceptors; +Wordcut.defaultLatinRules = latinRules; +Wordcut.defaultThaiRules = thaiRules; +Wordcut.defaultDict = WordcutDict; + + +Wordcut.initNoDict = function(dict_path) { + var self = this; + self.pathInfoBuilder = new self.defaultPathInfoBuilder; + self.pathSelector = new self.defaultPathSelector; + self.acceptors = new self.defaultAcceptors; + self.defaultLatinRules.forEach(function(rule) { + self.acceptors.creators.push(rule); + }); + self.defaultThaiRules.forEach(function(rule) { + self.acceptors.creators.push(rule); + }); +}; + +Wordcut.init = function(dict_path, withDefault, additionalWords) { + withDefault = withDefault || false; + this.initNoDict(); + var dict = _.clone(this.defaultDict); + dict.init(dict_path, withDefault, additionalWords); + this.acceptors.creators.push(dict); +}; + +module.exports = Wordcut; + +},{"./acceptors":1,"./dict":2,"./latin_rules":3,"./path_info_builder":4,"./path_selector":5,"./thai_rules":6,"./wordcut_core":8,"sys":28,"underscore":25}],8:[function(require,module,exports){ +var WordcutCore = { + + buildPath: function(text) { + var self = this + , path = self.pathSelector.createPath() + , leftBoundary = 0; + self.acceptors.reset(); + for (var i = 0; i < text.length; i++) { + var ch = text[i]; + self.acceptors.transit(ch); + + var possiblePathInfos = self + .pathInfoBuilder + .build(path, + self.acceptors.getFinalAcceptors(), + i, + leftBoundary, + text); + var selectedPath = self.pathSelector.selectPath(possiblePathInfos) + + path.push(selectedPath); + if (selectedPath.type !== "UNK") { + leftBoundary = i; + } + } + return path; + }, + + pathToRanges: function(path) { + var e = path.length - 1 + , ranges = []; + + while (e > 0) { + var info = path[e] + , s = info.p; + + if (info.merge !== undefined && ranges.length > 0) { + var r = ranges[ranges.length - 1]; + r.s = info.merge; + s = r.s; + } else { + ranges.push({s:s, e:e}); + } + e = s; + } + return ranges.reverse(); + }, + + rangesToText: function(text, ranges, delimiter) { + return ranges.map(function(r) { + return text.substring(r.s, r.e); + }).join(delimiter); + }, + + cut: function(text, delimiter) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + return this + .rangesToText(text, ranges, + (delimiter === undefined ? "|" : delimiter)); + }, + + cutIntoRanges: function(text, noText) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + + if (!noText) { + ranges.forEach(function(r) { + r.text = text.substring(r.s, r.e); + }); + } + return ranges; + }, + + cutIntoArray: function(text) { + var path = this.buildPath(text) + , ranges = this.pathToRanges(path); + + return ranges.map(function(r) { + return text.substring(r.s, r.e) + }); + } +}; + +module.exports = WordcutCore; + +},{}],9:[function(require,module,exports){ +// http://wiki.commonjs.org/wiki/Unit_Testing/1.0 +// +// THIS IS NOT TESTED NOR LIKELY TO WORK OUTSIDE V8! +// +// Originally from narwhal.js (http://narwhaljs.org) +// Copyright (c) 2009 Thomas Robinson <280north.com> +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the 'Software'), to +// deal in the Software without restriction, including without limitation the +// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +// sell copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +// when used in node, this will actually load the util module we depend on +// versus loading the builtin util module as happens otherwise +// this is a bug in node module loading as far as I am concerned +var util = require('util/'); + +var pSlice = Array.prototype.slice; +var hasOwn = Object.prototype.hasOwnProperty; + +// 1. The assert module provides functions that throw +// AssertionError's when particular conditions are not met. The +// assert module must conform to the following interface. + +var assert = module.exports = ok; + +// 2. The AssertionError is defined in assert. +// new assert.AssertionError({ message: message, +// actual: actual, +// expected: expected }) + +assert.AssertionError = function AssertionError(options) { + this.name = 'AssertionError'; + this.actual = options.actual; + this.expected = options.expected; + this.operator = options.operator; + if (options.message) { + this.message = options.message; + this.generatedMessage = false; + } else { + this.message = getMessage(this); + this.generatedMessage = true; + } + var stackStartFunction = options.stackStartFunction || fail; + + if (Error.captureStackTrace) { + Error.captureStackTrace(this, stackStartFunction); + } + else { + // non v8 browsers so we can have a stacktrace + var err = new Error(); + if (err.stack) { + var out = err.stack; + + // try to strip useless frames + var fn_name = stackStartFunction.name; + var idx = out.indexOf('\n' + fn_name); + if (idx >= 0) { + // once we have located the function frame + // we need to strip out everything before it (and its line) + var next_line = out.indexOf('\n', idx + 1); + out = out.substring(next_line + 1); + } + + this.stack = out; + } + } +}; + +// assert.AssertionError instanceof Error +util.inherits(assert.AssertionError, Error); + +function replacer(key, value) { + if (util.isUndefined(value)) { + return '' + value; + } + if (util.isNumber(value) && !isFinite(value)) { + return value.toString(); + } + if (util.isFunction(value) || util.isRegExp(value)) { + return value.toString(); + } + return value; +} + +function truncate(s, n) { + if (util.isString(s)) { + return s.length < n ? s : s.slice(0, n); + } else { + return s; + } +} + +function getMessage(self) { + return truncate(JSON.stringify(self.actual, replacer), 128) + ' ' + + self.operator + ' ' + + truncate(JSON.stringify(self.expected, replacer), 128); +} + +// At present only the three keys mentioned above are used and +// understood by the spec. Implementations or sub modules can pass +// other keys to the AssertionError's constructor - they will be +// ignored. + +// 3. All of the following functions must throw an AssertionError +// when a corresponding condition is not met, with a message that +// may be undefined if not provided. All assertion methods provide +// both the actual and expected values to the assertion error for +// display purposes. + +function fail(actual, expected, message, operator, stackStartFunction) { + throw new assert.AssertionError({ + message: message, + actual: actual, + expected: expected, + operator: operator, + stackStartFunction: stackStartFunction + }); +} + +// EXTENSION! allows for well behaved errors defined elsewhere. +assert.fail = fail; + +// 4. Pure assertion tests whether a value is truthy, as determined +// by !!guard. +// assert.ok(guard, message_opt); +// This statement is equivalent to assert.equal(true, !!guard, +// message_opt);. To test strictly for the value true, use +// assert.strictEqual(true, guard, message_opt);. + +function ok(value, message) { + if (!value) fail(value, true, message, '==', assert.ok); +} +assert.ok = ok; + +// 5. The equality assertion tests shallow, coercive equality with +// ==. +// assert.equal(actual, expected, message_opt); + +assert.equal = function equal(actual, expected, message) { + if (actual != expected) fail(actual, expected, message, '==', assert.equal); +}; + +// 6. The non-equality assertion tests for whether two objects are not equal +// with != assert.notEqual(actual, expected, message_opt); + +assert.notEqual = function notEqual(actual, expected, message) { + if (actual == expected) { + fail(actual, expected, message, '!=', assert.notEqual); + } +}; + +// 7. The equivalence assertion tests a deep equality relation. +// assert.deepEqual(actual, expected, message_opt); + +assert.deepEqual = function deepEqual(actual, expected, message) { + if (!_deepEqual(actual, expected)) { + fail(actual, expected, message, 'deepEqual', assert.deepEqual); + } +}; + +function _deepEqual(actual, expected) { + // 7.1. All identical values are equivalent, as determined by ===. + if (actual === expected) { + return true; + + } else if (util.isBuffer(actual) && util.isBuffer(expected)) { + if (actual.length != expected.length) return false; + + for (var i = 0; i < actual.length; i++) { + if (actual[i] !== expected[i]) return false; + } + + return true; + + // 7.2. If the expected value is a Date object, the actual value is + // equivalent if it is also a Date object that refers to the same time. + } else if (util.isDate(actual) && util.isDate(expected)) { + return actual.getTime() === expected.getTime(); + + // 7.3 If the expected value is a RegExp object, the actual value is + // equivalent if it is also a RegExp object with the same source and + // properties (`global`, `multiline`, `lastIndex`, `ignoreCase`). + } else if (util.isRegExp(actual) && util.isRegExp(expected)) { + return actual.source === expected.source && + actual.global === expected.global && + actual.multiline === expected.multiline && + actual.lastIndex === expected.lastIndex && + actual.ignoreCase === expected.ignoreCase; + + // 7.4. Other pairs that do not both pass typeof value == 'object', + // equivalence is determined by ==. + } else if (!util.isObject(actual) && !util.isObject(expected)) { + return actual == expected; + + // 7.5 For all other Object pairs, including Array objects, equivalence is + // determined by having the same number of owned properties (as verified + // with Object.prototype.hasOwnProperty.call), the same set of keys + // (although not necessarily the same order), equivalent values for every + // corresponding key, and an identical 'prototype' property. Note: this + // accounts for both named and indexed properties on Arrays. + } else { + return objEquiv(actual, expected); + } +} + +function isArguments(object) { + return Object.prototype.toString.call(object) == '[object Arguments]'; +} + +function objEquiv(a, b) { + if (util.isNullOrUndefined(a) || util.isNullOrUndefined(b)) + return false; + // an identical 'prototype' property. + if (a.prototype !== b.prototype) return false; + // if one is a primitive, the other must be same + if (util.isPrimitive(a) || util.isPrimitive(b)) { + return a === b; + } + var aIsArgs = isArguments(a), + bIsArgs = isArguments(b); + if ((aIsArgs && !bIsArgs) || (!aIsArgs && bIsArgs)) + return false; + if (aIsArgs) { + a = pSlice.call(a); + b = pSlice.call(b); + return _deepEqual(a, b); + } + var ka = objectKeys(a), + kb = objectKeys(b), + key, i; + // having the same number of owned properties (keys incorporates + // hasOwnProperty) + if (ka.length != kb.length) + return false; + //the same set of keys (although not necessarily the same order), + ka.sort(); + kb.sort(); + //~~~cheap key test + for (i = ka.length - 1; i >= 0; i--) { + if (ka[i] != kb[i]) + return false; + } + //equivalent values for every corresponding key, and + //~~~possibly expensive deep test + for (i = ka.length - 1; i >= 0; i--) { + key = ka[i]; + if (!_deepEqual(a[key], b[key])) return false; + } + return true; +} + +// 8. The non-equivalence assertion tests for any deep inequality. +// assert.notDeepEqual(actual, expected, message_opt); + +assert.notDeepEqual = function notDeepEqual(actual, expected, message) { + if (_deepEqual(actual, expected)) { + fail(actual, expected, message, 'notDeepEqual', assert.notDeepEqual); + } +}; + +// 9. The strict equality assertion tests strict equality, as determined by ===. +// assert.strictEqual(actual, expected, message_opt); + +assert.strictEqual = function strictEqual(actual, expected, message) { + if (actual !== expected) { + fail(actual, expected, message, '===', assert.strictEqual); + } +}; + +// 10. The strict non-equality assertion tests for strict inequality, as +// determined by !==. assert.notStrictEqual(actual, expected, message_opt); + +assert.notStrictEqual = function notStrictEqual(actual, expected, message) { + if (actual === expected) { + fail(actual, expected, message, '!==', assert.notStrictEqual); + } +}; + +function expectedException(actual, expected) { + if (!actual || !expected) { + return false; + } + + if (Object.prototype.toString.call(expected) == '[object RegExp]') { + return expected.test(actual); + } else if (actual instanceof expected) { + return true; + } else if (expected.call({}, actual) === true) { + return true; + } + + return false; +} + +function _throws(shouldThrow, block, expected, message) { + var actual; + + if (util.isString(expected)) { + message = expected; + expected = null; + } + + try { + block(); + } catch (e) { + actual = e; + } + + message = (expected && expected.name ? ' (' + expected.name + ').' : '.') + + (message ? ' ' + message : '.'); + + if (shouldThrow && !actual) { + fail(actual, expected, 'Missing expected exception' + message); + } + + if (!shouldThrow && expectedException(actual, expected)) { + fail(actual, expected, 'Got unwanted exception' + message); + } + + if ((shouldThrow && actual && expected && + !expectedException(actual, expected)) || (!shouldThrow && actual)) { + throw actual; + } +} + +// 11. Expected to throw an error: +// assert.throws(block, Error_opt, message_opt); + +assert.throws = function(block, /*optional*/error, /*optional*/message) { + _throws.apply(this, [true].concat(pSlice.call(arguments))); +}; + +// EXTENSION! This is annoying to write outside this module. +assert.doesNotThrow = function(block, /*optional*/message) { + _throws.apply(this, [false].concat(pSlice.call(arguments))); +}; + +assert.ifError = function(err) { if (err) {throw err;}}; + +var objectKeys = Object.keys || function (obj) { + var keys = []; + for (var key in obj) { + if (hasOwn.call(obj, key)) keys.push(key); + } + return keys; +}; + +},{"util/":28}],10:[function(require,module,exports){ +'use strict'; +module.exports = balanced; +function balanced(a, b, str) { + if (a instanceof RegExp) a = maybeMatch(a, str); + if (b instanceof RegExp) b = maybeMatch(b, str); + + var r = range(a, b, str); + + return r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + }; +} + +function maybeMatch(reg, str) { + var m = str.match(reg); + return m ? m[0] : null; +} + +balanced.range = range; +function range(a, b, str) { + var begs, beg, left, right, result; + var ai = str.indexOf(a); + var bi = str.indexOf(b, ai + 1); + var i = ai; + + if (ai >= 0 && bi > 0) { + begs = []; + left = str.length; + + while (i >= 0 && !result) { + if (i == ai) { + begs.push(i); + ai = str.indexOf(a, i + 1); + } else if (begs.length == 1) { + result = [ begs.pop(), bi ]; + } else { + beg = begs.pop(); + if (beg < left) { + left = beg; + right = bi; + } + + bi = str.indexOf(b, i + 1); + } + + i = ai < bi && ai >= 0 ? ai : bi; + } + + if (begs.length) { + result = [ left, right ]; + } + } + + return result; +} + +},{}],11:[function(require,module,exports){ +var concatMap = require('concat-map'); +var balanced = require('balanced-match'); + +module.exports = expandTop; + +var escSlash = '\0SLASH'+Math.random()+'\0'; +var escOpen = '\0OPEN'+Math.random()+'\0'; +var escClose = '\0CLOSE'+Math.random()+'\0'; +var escComma = '\0COMMA'+Math.random()+'\0'; +var escPeriod = '\0PERIOD'+Math.random()+'\0'; + +function numeric(str) { + return parseInt(str, 10) == str + ? parseInt(str, 10) + : str.charCodeAt(0); +} + +function escapeBraces(str) { + return str.split('\\\\').join(escSlash) + .split('\\{').join(escOpen) + .split('\\}').join(escClose) + .split('\\,').join(escComma) + .split('\\.').join(escPeriod); +} + +function unescapeBraces(str) { + return str.split(escSlash).join('\\') + .split(escOpen).join('{') + .split(escClose).join('}') + .split(escComma).join(',') + .split(escPeriod).join('.'); +} + + +// Basically just str.split(","), but handling cases +// where we have nested braced sections, which should be +// treated as individual members, like {a,{b,c},d} +function parseCommaParts(str) { + if (!str) + return ['']; + + var parts = []; + var m = balanced('{', '}', str); + + if (!m) + return str.split(','); + + var pre = m.pre; + var body = m.body; + var post = m.post; + var p = pre.split(','); + + p[p.length-1] += '{' + body + '}'; + var postParts = parseCommaParts(post); + if (post.length) { + p[p.length-1] += postParts.shift(); + p.push.apply(p, postParts); + } + + parts.push.apply(parts, p); + + return parts; +} + +function expandTop(str) { + if (!str) + return []; + + // I don't know why Bash 4.3 does this, but it does. + // Anything starting with {} will have the first two bytes preserved + // but *only* at the top level, so {},a}b will not expand to anything, + // but a{},b}c will be expanded to [a}c,abc]. + // One could argue that this is a bug in Bash, but since the goal of + // this module is to match Bash's rules, we escape a leading {} + if (str.substr(0, 2) === '{}') { + str = '\\{\\}' + str.substr(2); + } + + return expand(escapeBraces(str), true).map(unescapeBraces); +} + +function identity(e) { + return e; +} + +function embrace(str) { + return '{' + str + '}'; +} +function isPadded(el) { + return /^-?0\d/.test(el); +} + +function lte(i, y) { + return i <= y; +} +function gte(i, y) { + return i >= y; +} + +function expand(str, isTop) { + var expansions = []; + + var m = balanced('{', '}', str); + if (!m || /\$$/.test(m.pre)) return [str]; + + var isNumericSequence = /^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(m.body); + var isAlphaSequence = /^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(m.body); + var isSequence = isNumericSequence || isAlphaSequence; + var isOptions = m.body.indexOf(',') >= 0; + if (!isSequence && !isOptions) { + // {a},b} + if (m.post.match(/,.*\}/)) { + str = m.pre + '{' + m.body + escClose + m.post; + return expand(str); + } + return [str]; + } + + var n; + if (isSequence) { + n = m.body.split(/\.\./); + } else { + n = parseCommaParts(m.body); + if (n.length === 1) { + // x{{a,b}}y ==> x{a}y x{b}y + n = expand(n[0], false).map(embrace); + if (n.length === 1) { + var post = m.post.length + ? expand(m.post, false) + : ['']; + return post.map(function(p) { + return m.pre + n[0] + p; + }); + } + } + } + + // at this point, n is the parts, and we know it's not a comma set + // with a single entry. + + // no need to expand pre, since it is guaranteed to be free of brace-sets + var pre = m.pre; + var post = m.post.length + ? expand(m.post, false) + : ['']; + + var N; + + if (isSequence) { + var x = numeric(n[0]); + var y = numeric(n[1]); + var width = Math.max(n[0].length, n[1].length) + var incr = n.length == 3 + ? Math.abs(numeric(n[2])) + : 1; + var test = lte; + var reverse = y < x; + if (reverse) { + incr *= -1; + test = gte; + } + var pad = n.some(isPadded); + + N = []; + + for (var i = x; test(i, y); i += incr) { + var c; + if (isAlphaSequence) { + c = String.fromCharCode(i); + if (c === '\\') + c = ''; + } else { + c = String(i); + if (pad) { + var need = width - c.length; + if (need > 0) { + var z = new Array(need + 1).join('0'); + if (i < 0) + c = '-' + z + c.slice(1); + else + c = z + c; + } + } + } + N.push(c); + } + } else { + N = concatMap(n, function(el) { return expand(el, false) }); + } + + for (var j = 0; j < N.length; j++) { + for (var k = 0; k < post.length; k++) { + var expansion = pre + N[j] + post[k]; + if (!isTop || isSequence || expansion) + expansions.push(expansion); + } + } + + return expansions; +} + + +},{"balanced-match":10,"concat-map":13}],12:[function(require,module,exports){ + +},{}],13:[function(require,module,exports){ +module.exports = function (xs, fn) { + var res = []; + for (var i = 0; i < xs.length; i++) { + var x = fn(xs[i], i); + if (isArray(x)) res.push.apply(res, x); + else res.push(x); + } + return res; +}; + +var isArray = Array.isArray || function (xs) { + return Object.prototype.toString.call(xs) === '[object Array]'; +}; + +},{}],14:[function(require,module,exports){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +function EventEmitter() { + this._events = this._events || {}; + this._maxListeners = this._maxListeners || undefined; +} +module.exports = EventEmitter; + +// Backwards-compat with node 0.10.x +EventEmitter.EventEmitter = EventEmitter; + +EventEmitter.prototype._events = undefined; +EventEmitter.prototype._maxListeners = undefined; + +// By default EventEmitters will print a warning if more than 10 listeners are +// added to it. This is a useful default which helps finding memory leaks. +EventEmitter.defaultMaxListeners = 10; + +// Obviously not all Emitters should be limited to 10. This function allows +// that to be increased. Set to zero for unlimited. +EventEmitter.prototype.setMaxListeners = function(n) { + if (!isNumber(n) || n < 0 || isNaN(n)) + throw TypeError('n must be a positive number'); + this._maxListeners = n; + return this; +}; + +EventEmitter.prototype.emit = function(type) { + var er, handler, len, args, i, listeners; + + if (!this._events) + this._events = {}; + + // If there is no 'error' event listener then throw. + if (type === 'error') { + if (!this._events.error || + (isObject(this._events.error) && !this._events.error.length)) { + er = arguments[1]; + if (er instanceof Error) { + throw er; // Unhandled 'error' event + } + throw TypeError('Uncaught, unspecified "error" event.'); + } + } + + handler = this._events[type]; + + if (isUndefined(handler)) + return false; + + if (isFunction(handler)) { + switch (arguments.length) { + // fast cases + case 1: + handler.call(this); + break; + case 2: + handler.call(this, arguments[1]); + break; + case 3: + handler.call(this, arguments[1], arguments[2]); + break; + // slower + default: + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + handler.apply(this, args); + } + } else if (isObject(handler)) { + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + + listeners = handler.slice(); + len = listeners.length; + for (i = 0; i < len; i++) + listeners[i].apply(this, args); + } + + return true; +}; + +EventEmitter.prototype.addListener = function(type, listener) { + var m; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events) + this._events = {}; + + // To avoid recursion in the case that type === "newListener"! Before + // adding it to the listeners, first emit "newListener". + if (this._events.newListener) + this.emit('newListener', type, + isFunction(listener.listener) ? + listener.listener : listener); + + if (!this._events[type]) + // Optimize the case of one listener. Don't need the extra array object. + this._events[type] = listener; + else if (isObject(this._events[type])) + // If we've already got an array, just append. + this._events[type].push(listener); + else + // Adding the second element, need to change to array. + this._events[type] = [this._events[type], listener]; + + // Check for listener leak + if (isObject(this._events[type]) && !this._events[type].warned) { + var m; + if (!isUndefined(this._maxListeners)) { + m = this._maxListeners; + } else { + m = EventEmitter.defaultMaxListeners; + } + + if (m && m > 0 && this._events[type].length > m) { + this._events[type].warned = true; + console.error('(node) warning: possible EventEmitter memory ' + + 'leak detected. %d listeners added. ' + + 'Use emitter.setMaxListeners() to increase limit.', + this._events[type].length); + if (typeof console.trace === 'function') { + // not supported in IE 10 + console.trace(); + } + } + } + + return this; +}; + +EventEmitter.prototype.on = EventEmitter.prototype.addListener; + +EventEmitter.prototype.once = function(type, listener) { + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + var fired = false; + + function g() { + this.removeListener(type, g); + + if (!fired) { + fired = true; + listener.apply(this, arguments); + } + } + + g.listener = listener; + this.on(type, g); + + return this; +}; + +// emits a 'removeListener' event iff the listener was removed +EventEmitter.prototype.removeListener = function(type, listener) { + var list, position, length, i; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events || !this._events[type]) + return this; + + list = this._events[type]; + length = list.length; + position = -1; + + if (list === listener || + (isFunction(list.listener) && list.listener === listener)) { + delete this._events[type]; + if (this._events.removeListener) + this.emit('removeListener', type, listener); + + } else if (isObject(list)) { + for (i = length; i-- > 0;) { + if (list[i] === listener || + (list[i].listener && list[i].listener === listener)) { + position = i; + break; + } + } + + if (position < 0) + return this; + + if (list.length === 1) { + list.length = 0; + delete this._events[type]; + } else { + list.splice(position, 1); + } + + if (this._events.removeListener) + this.emit('removeListener', type, listener); + } + + return this; +}; + +EventEmitter.prototype.removeAllListeners = function(type) { + var key, listeners; + + if (!this._events) + return this; + + // not listening for removeListener, no need to emit + if (!this._events.removeListener) { + if (arguments.length === 0) + this._events = {}; + else if (this._events[type]) + delete this._events[type]; + return this; + } + + // emit removeListener for all listeners on all events + if (arguments.length === 0) { + for (key in this._events) { + if (key === 'removeListener') continue; + this.removeAllListeners(key); + } + this.removeAllListeners('removeListener'); + this._events = {}; + return this; + } + + listeners = this._events[type]; + + if (isFunction(listeners)) { + this.removeListener(type, listeners); + } else { + // LIFO order + while (listeners.length) + this.removeListener(type, listeners[listeners.length - 1]); + } + delete this._events[type]; + + return this; +}; + +EventEmitter.prototype.listeners = function(type) { + var ret; + if (!this._events || !this._events[type]) + ret = []; + else if (isFunction(this._events[type])) + ret = [this._events[type]]; + else + ret = this._events[type].slice(); + return ret; +}; + +EventEmitter.listenerCount = function(emitter, type) { + var ret; + if (!emitter._events || !emitter._events[type]) + ret = 0; + else if (isFunction(emitter._events[type])) + ret = 1; + else + ret = emitter._events[type].length; + return ret; +}; + +function isFunction(arg) { + return typeof arg === 'function'; +} + +function isNumber(arg) { + return typeof arg === 'number'; +} + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} + +function isUndefined(arg) { + return arg === void 0; +} + +},{}],15:[function(require,module,exports){ +(function (process){ +exports.alphasort = alphasort +exports.alphasorti = alphasorti +exports.setopts = setopts +exports.ownProp = ownProp +exports.makeAbs = makeAbs +exports.finish = finish +exports.mark = mark +exports.isIgnored = isIgnored +exports.childrenIgnored = childrenIgnored + +function ownProp (obj, field) { + return Object.prototype.hasOwnProperty.call(obj, field) +} + +var path = require("path") +var minimatch = require("minimatch") +var isAbsolute = require("path-is-absolute") +var Minimatch = minimatch.Minimatch + +function alphasorti (a, b) { + return a.toLowerCase().localeCompare(b.toLowerCase()) +} + +function alphasort (a, b) { + return a.localeCompare(b) +} + +function setupIgnores (self, options) { + self.ignore = options.ignore || [] + + if (!Array.isArray(self.ignore)) + self.ignore = [self.ignore] + + if (self.ignore.length) { + self.ignore = self.ignore.map(ignoreMap) + } +} + +function ignoreMap (pattern) { + var gmatcher = null + if (pattern.slice(-3) === '/**') { + var gpattern = pattern.replace(/(\/\*\*)+$/, '') + gmatcher = new Minimatch(gpattern) + } + + return { + matcher: new Minimatch(pattern), + gmatcher: gmatcher + } +} + +function setopts (self, pattern, options) { + if (!options) + options = {} + + // base-matching: just use globstar for that. + if (options.matchBase && -1 === pattern.indexOf("/")) { + if (options.noglobstar) { + throw new Error("base matching requires globstar") + } + pattern = "**/" + pattern + } + + self.silent = !!options.silent + self.pattern = pattern + self.strict = options.strict !== false + self.realpath = !!options.realpath + self.realpathCache = options.realpathCache || Object.create(null) + self.follow = !!options.follow + self.dot = !!options.dot + self.mark = !!options.mark + self.nodir = !!options.nodir + if (self.nodir) + self.mark = true + self.sync = !!options.sync + self.nounique = !!options.nounique + self.nonull = !!options.nonull + self.nosort = !!options.nosort + self.nocase = !!options.nocase + self.stat = !!options.stat + self.noprocess = !!options.noprocess + + self.maxLength = options.maxLength || Infinity + self.cache = options.cache || Object.create(null) + self.statCache = options.statCache || Object.create(null) + self.symlinks = options.symlinks || Object.create(null) + + setupIgnores(self, options) + + self.changedCwd = false + var cwd = process.cwd() + if (!ownProp(options, "cwd")) + self.cwd = cwd + else { + self.cwd = options.cwd + self.changedCwd = path.resolve(options.cwd) !== cwd + } + + self.root = options.root || path.resolve(self.cwd, "/") + self.root = path.resolve(self.root) + if (process.platform === "win32") + self.root = self.root.replace(/\\/g, "/") + + self.nomount = !!options.nomount + + // disable comments and negation unless the user explicitly + // passes in false as the option. + options.nonegate = options.nonegate === false ? false : true + options.nocomment = options.nocomment === false ? false : true + deprecationWarning(options) + + self.minimatch = new Minimatch(pattern, options) + self.options = self.minimatch.options +} + +// TODO(isaacs): remove entirely in v6 +// exported to reset in tests +exports.deprecationWarned +function deprecationWarning(options) { + if (!options.nonegate || !options.nocomment) { + if (process.noDeprecation !== true && !exports.deprecationWarned) { + var msg = 'glob WARNING: comments and negation will be disabled in v6' + if (process.throwDeprecation) + throw new Error(msg) + else if (process.traceDeprecation) + console.trace(msg) + else + console.error(msg) + + exports.deprecationWarned = true + } + } +} + +function finish (self) { + var nou = self.nounique + var all = nou ? [] : Object.create(null) + + for (var i = 0, l = self.matches.length; i < l; i ++) { + var matches = self.matches[i] + if (!matches || Object.keys(matches).length === 0) { + if (self.nonull) { + // do like the shell, and spit out the literal glob + var literal = self.minimatch.globSet[i] + if (nou) + all.push(literal) + else + all[literal] = true + } + } else { + // had matches + var m = Object.keys(matches) + if (nou) + all.push.apply(all, m) + else + m.forEach(function (m) { + all[m] = true + }) + } + } + + if (!nou) + all = Object.keys(all) + + if (!self.nosort) + all = all.sort(self.nocase ? alphasorti : alphasort) + + // at *some* point we statted all of these + if (self.mark) { + for (var i = 0; i < all.length; i++) { + all[i] = self._mark(all[i]) + } + if (self.nodir) { + all = all.filter(function (e) { + return !(/\/$/.test(e)) + }) + } + } + + if (self.ignore.length) + all = all.filter(function(m) { + return !isIgnored(self, m) + }) + + self.found = all +} + +function mark (self, p) { + var abs = makeAbs(self, p) + var c = self.cache[abs] + var m = p + if (c) { + var isDir = c === 'DIR' || Array.isArray(c) + var slash = p.slice(-1) === '/' + + if (isDir && !slash) + m += '/' + else if (!isDir && slash) + m = m.slice(0, -1) + + if (m !== p) { + var mabs = makeAbs(self, m) + self.statCache[mabs] = self.statCache[abs] + self.cache[mabs] = self.cache[abs] + } + } + + return m +} + +// lotta situps... +function makeAbs (self, f) { + var abs = f + if (f.charAt(0) === '/') { + abs = path.join(self.root, f) + } else if (isAbsolute(f) || f === '') { + abs = f + } else if (self.changedCwd) { + abs = path.resolve(self.cwd, f) + } else { + abs = path.resolve(f) + } + return abs +} + + +// Return true, if pattern ends with globstar '**', for the accompanying parent directory. +// Ex:- If node_modules/** is the pattern, add 'node_modules' to ignore list along with it's contents +function isIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return item.matcher.match(path) || !!(item.gmatcher && item.gmatcher.match(path)) + }) +} + +function childrenIgnored (self, path) { + if (!self.ignore.length) + return false + + return self.ignore.some(function(item) { + return !!(item.gmatcher && item.gmatcher.match(path)) + }) +} + +}).call(this,require('_process')) +},{"_process":24,"minimatch":20,"path":22,"path-is-absolute":23}],16:[function(require,module,exports){ +(function (process){ +// Approach: +// +// 1. Get the minimatch set +// 2. For each pattern in the set, PROCESS(pattern, false) +// 3. Store matches per-set, then uniq them +// +// PROCESS(pattern, inGlobStar) +// Get the first [n] items from pattern that are all strings +// Join these together. This is PREFIX. +// If there is no more remaining, then stat(PREFIX) and +// add to matches if it succeeds. END. +// +// If inGlobStar and PREFIX is symlink and points to dir +// set ENTRIES = [] +// else readdir(PREFIX) as ENTRIES +// If fail, END +// +// with ENTRIES +// If pattern[n] is GLOBSTAR +// // handle the case where the globstar match is empty +// // by pruning it out, and testing the resulting pattern +// PROCESS(pattern[0..n] + pattern[n+1 .. $], false) +// // handle other cases. +// for ENTRY in ENTRIES (not dotfiles) +// // attach globstar + tail onto the entry +// // Mark that this entry is a globstar match +// PROCESS(pattern[0..n] + ENTRY + pattern[n .. $], true) +// +// else // not globstar +// for ENTRY in ENTRIES (not dotfiles, unless pattern[n] is dot) +// Test ENTRY against pattern[n] +// If fails, continue +// If passes, PROCESS(pattern[0..n] + item + pattern[n+1 .. $]) +// +// Caveat: +// Cache all stats and readdirs results to minimize syscall. Since all +// we ever care about is existence and directory-ness, we can just keep +// `true` for files, and [children,...] for directories, or `false` for +// things that don't exist. + +module.exports = glob + +var fs = require('fs') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var inherits = require('inherits') +var EE = require('events').EventEmitter +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path-is-absolute') +var globSync = require('./sync.js') +var common = require('./common.js') +var alphasort = common.alphasort +var alphasorti = common.alphasorti +var setopts = common.setopts +var ownProp = common.ownProp +var inflight = require('inflight') +var util = require('util') +var childrenIgnored = common.childrenIgnored +var isIgnored = common.isIgnored + +var once = require('once') + +function glob (pattern, options, cb) { + if (typeof options === 'function') cb = options, options = {} + if (!options) options = {} + + if (options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return globSync(pattern, options) + } + + return new Glob(pattern, options, cb) +} + +glob.sync = globSync +var GlobSync = glob.GlobSync = globSync.GlobSync + +// old api surface +glob.glob = glob + +glob.hasMagic = function (pattern, options_) { + var options = util._extend({}, options_) + options.noprocess = true + + var g = new Glob(pattern, options) + var set = g.minimatch.set + if (set.length > 1) + return true + + for (var j = 0; j < set[0].length; j++) { + if (typeof set[0][j] !== 'string') + return true + } + + return false +} + +glob.Glob = Glob +inherits(Glob, EE) +function Glob (pattern, options, cb) { + if (typeof options === 'function') { + cb = options + options = null + } + + if (options && options.sync) { + if (cb) + throw new TypeError('callback provided to sync glob') + return new GlobSync(pattern, options) + } + + if (!(this instanceof Glob)) + return new Glob(pattern, options, cb) + + setopts(this, pattern, options) + this._didRealPath = false + + // process each pattern in the minimatch set + var n = this.minimatch.set.length + + // The matches are stored as {: true,...} so that + // duplicates are automagically pruned. + // Later, we do an Object.keys() on these. + // Keep them as a list so we can fill in when nonull is set. + this.matches = new Array(n) + + if (typeof cb === 'function') { + cb = once(cb) + this.on('error', cb) + this.on('end', function (matches) { + cb(null, matches) + }) + } + + var self = this + var n = this.minimatch.set.length + this._processing = 0 + this.matches = new Array(n) + + this._emitQueue = [] + this._processQueue = [] + this.paused = false + + if (this.noprocess) + return this + + if (n === 0) + return done() + + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false, done) + } + + function done () { + --self._processing + if (self._processing <= 0) + self._finish() + } +} + +Glob.prototype._finish = function () { + assert(this instanceof Glob) + if (this.aborted) + return + + if (this.realpath && !this._didRealpath) + return this._realpath() + + common.finish(this) + this.emit('end', this.found) +} + +Glob.prototype._realpath = function () { + if (this._didRealpath) + return + + this._didRealpath = true + + var n = this.matches.length + if (n === 0) + return this._finish() + + var self = this + for (var i = 0; i < this.matches.length; i++) + this._realpathSet(i, next) + + function next () { + if (--n === 0) + self._finish() + } +} + +Glob.prototype._realpathSet = function (index, cb) { + var matchset = this.matches[index] + if (!matchset) + return cb() + + var found = Object.keys(matchset) + var self = this + var n = found.length + + if (n === 0) + return cb() + + var set = this.matches[index] = Object.create(null) + found.forEach(function (p, i) { + // If there's a problem with the stat, then it means that + // one or more of the links in the realpath couldn't be + // resolved. just return the abs value in that case. + p = self._makeAbs(p) + fs.realpath(p, self.realpathCache, function (er, real) { + if (!er) + set[real] = true + else if (er.syscall === 'stat') + set[p] = true + else + self.emit('error', er) // srsly wtf right here + + if (--n === 0) { + self.matches[index] = set + cb() + } + }) + }) +} + +Glob.prototype._mark = function (p) { + return common.mark(this, p) +} + +Glob.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} + +Glob.prototype.abort = function () { + this.aborted = true + this.emit('abort') +} + +Glob.prototype.pause = function () { + if (!this.paused) { + this.paused = true + this.emit('pause') + } +} + +Glob.prototype.resume = function () { + if (this.paused) { + this.emit('resume') + this.paused = false + if (this._emitQueue.length) { + var eq = this._emitQueue.slice(0) + this._emitQueue.length = 0 + for (var i = 0; i < eq.length; i ++) { + var e = eq[i] + this._emitMatch(e[0], e[1]) + } + } + if (this._processQueue.length) { + var pq = this._processQueue.slice(0) + this._processQueue.length = 0 + for (var i = 0; i < pq.length; i ++) { + var p = pq[i] + this._processing-- + this._process(p[0], p[1], p[2], p[3]) + } + } + } +} + +Glob.prototype._process = function (pattern, index, inGlobStar, cb) { + assert(this instanceof Glob) + assert(typeof cb === 'function') + + if (this.aborted) + return + + this._processing++ + if (this.paused) { + this._processQueue.push([pattern, index, inGlobStar, cb]) + return + } + + //console.error('PROCESS %d', this._processing, pattern) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // see if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index, cb) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip _processing + if (childrenIgnored(this, read)) + return cb() + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar, cb) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar, cb) +} + +Glob.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + return self._processReaddir2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + +Glob.prototype._processReaddir2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return cb() + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + //console.error('prd2', prefix, entries, remain[0]._glob, matchedEntries) + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return cb() + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this._emitMatch(index, e) + } + // This was the last one, and no stats were needed + return cb() + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) { + if (prefix !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + this._process([e].concat(remain), index, inGlobStar, cb) + } + cb() +} + +Glob.prototype._emitMatch = function (index, e) { + if (this.aborted) + return + + if (this.matches[index][e]) + return + + if (isIgnored(this, e)) + return + + if (this.paused) { + this._emitQueue.push([index, e]) + return + } + + var abs = this._makeAbs(e) + + if (this.nodir) { + var c = this.cache[abs] + if (c === 'DIR' || Array.isArray(c)) + return + } + + if (this.mark) + e = this._mark(e) + + this.matches[index][e] = true + + var st = this.statCache[abs] + if (st) + this.emit('stat', e, st) + + this.emit('match', e) +} + +Glob.prototype._readdirInGlobStar = function (abs, cb) { + if (this.aborted) + return + + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false, cb) + + var lstatkey = 'lstat\0' + abs + var self = this + var lstatcb = inflight(lstatkey, lstatcb_) + + if (lstatcb) + fs.lstat(abs, lstatcb) + + function lstatcb_ (er, lstat) { + if (er) + return cb() + + var isSym = lstat.isSymbolicLink() + self.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && !lstat.isDirectory()) { + self.cache[abs] = 'FILE' + cb() + } else + self._readdir(abs, false, cb) + } +} + +Glob.prototype._readdir = function (abs, inGlobStar, cb) { + if (this.aborted) + return + + cb = inflight('readdir\0'+abs+'\0'+inGlobStar, cb) + if (!cb) + return + + //console.error('RD %j %j', +inGlobStar, abs) + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs, cb) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return cb() + + if (Array.isArray(c)) + return cb(null, c) + } + + var self = this + fs.readdir(abs, readdirCb(this, abs, cb)) +} + +function readdirCb (self, abs, cb) { + return function (er, entries) { + if (er) + self._readdirError(abs, er, cb) + else + self._readdirEntries(abs, entries, cb) + } +} + +Glob.prototype._readdirEntries = function (abs, entries, cb) { + if (this.aborted) + return + + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + return cb(null, entries) +} + +Glob.prototype._readdirError = function (f, er, cb) { + if (this.aborted) + return + + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + this.cache[this._makeAbs(f)] = 'FILE' + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) { + this.emit('error', er) + // If the error is handled, then we abort + // if not, we threw out of here + this.abort() + } + if (!this.silent) + console.error('glob error', er) + break + } + + return cb() +} + +Glob.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar, cb) { + var self = this + this._readdir(abs, inGlobStar, function (er, entries) { + self._processGlobStar2(prefix, read, abs, remain, index, inGlobStar, entries, cb) + }) +} + + +Glob.prototype._processGlobStar2 = function (prefix, read, abs, remain, index, inGlobStar, entries, cb) { + //console.error('pgs2', prefix, remain[0], entries) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return cb() + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false, cb) + + var isSym = this.symlinks[abs] + var len = entries.length + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return cb() + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true, cb) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true, cb) + } + + cb() +} + +Glob.prototype._processSimple = function (prefix, index, cb) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var self = this + this._stat(prefix, function (er, exists) { + self._processSimple2(prefix, index, er, exists, cb) + }) +} +Glob.prototype._processSimple2 = function (prefix, index, er, exists, cb) { + + //console.error('ps2', prefix, exists) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return cb() + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this._emitMatch(index, prefix) + cb() +} + +// Returns either 'DIR', 'FILE', or false +Glob.prototype._stat = function (f, cb) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return cb() + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return cb(null, c) + + if (needDir && c === 'FILE') + return cb() + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (stat !== undefined) { + if (stat === false) + return cb(null, stat) + else { + var type = stat.isDirectory() ? 'DIR' : 'FILE' + if (needDir && type === 'FILE') + return cb() + else + return cb(null, type, stat) + } + } + + var self = this + var statcb = inflight('stat\0' + abs, lstatcb_) + if (statcb) + fs.lstat(abs, statcb) + + function lstatcb_ (er, lstat) { + if (lstat && lstat.isSymbolicLink()) { + // If it's a symlink, then treat it as the target, unless + // the target does not exist, then treat it as a file. + return fs.stat(abs, function (er, stat) { + if (er) + self._stat2(f, abs, null, lstat, cb) + else + self._stat2(f, abs, er, stat, cb) + }) + } else { + self._stat2(f, abs, er, lstat, cb) + } + } +} + +Glob.prototype._stat2 = function (f, abs, er, stat, cb) { + if (er) { + this.statCache[abs] = false + return cb() + } + + var needDir = f.slice(-1) === '/' + this.statCache[abs] = stat + + if (abs.slice(-1) === '/' && !stat.isDirectory()) + return cb(null, false, stat) + + var c = stat.isDirectory() ? 'DIR' : 'FILE' + this.cache[abs] = this.cache[abs] || c + + if (needDir && c !== 'DIR') + return cb() + + return cb(null, c, stat) +} + +}).call(this,require('_process')) +},{"./common.js":15,"./sync.js":17,"_process":24,"assert":9,"events":14,"fs":12,"inflight":18,"inherits":19,"minimatch":20,"once":21,"path":22,"path-is-absolute":23,"util":28}],17:[function(require,module,exports){ +(function (process){ +module.exports = globSync +globSync.GlobSync = GlobSync + +var fs = require('fs') +var minimatch = require('minimatch') +var Minimatch = minimatch.Minimatch +var Glob = require('./glob.js').Glob +var util = require('util') +var path = require('path') +var assert = require('assert') +var isAbsolute = require('path-is-absolute') +var common = require('./common.js') +var alphasort = common.alphasort +var alphasorti = common.alphasorti +var setopts = common.setopts +var ownProp = common.ownProp +var childrenIgnored = common.childrenIgnored + +function globSync (pattern, options) { + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + return new GlobSync(pattern, options).found +} + +function GlobSync (pattern, options) { + if (!pattern) + throw new Error('must provide pattern') + + if (typeof options === 'function' || arguments.length === 3) + throw new TypeError('callback provided to sync glob\n'+ + 'See: https://github.com/isaacs/node-glob/issues/167') + + if (!(this instanceof GlobSync)) + return new GlobSync(pattern, options) + + setopts(this, pattern, options) + + if (this.noprocess) + return this + + var n = this.minimatch.set.length + this.matches = new Array(n) + for (var i = 0; i < n; i ++) { + this._process(this.minimatch.set[i], i, false) + } + this._finish() +} + +GlobSync.prototype._finish = function () { + assert(this instanceof GlobSync) + if (this.realpath) { + var self = this + this.matches.forEach(function (matchset, index) { + var set = self.matches[index] = Object.create(null) + for (var p in matchset) { + try { + p = self._makeAbs(p) + var real = fs.realpathSync(p, self.realpathCache) + set[real] = true + } catch (er) { + if (er.syscall === 'stat') + set[self._makeAbs(p)] = true + else + throw er + } + } + }) + } + common.finish(this) +} + + +GlobSync.prototype._process = function (pattern, index, inGlobStar) { + assert(this instanceof GlobSync) + + // Get the first [n] parts of pattern that are all strings. + var n = 0 + while (typeof pattern[n] === 'string') { + n ++ + } + // now n is the index of the first one that is *not* a string. + + // See if there's anything else + var prefix + switch (n) { + // if not, then this is rather simple + case pattern.length: + this._processSimple(pattern.join('/'), index) + return + + case 0: + // pattern *starts* with some non-trivial item. + // going to readdir(cwd), but not include the prefix in matches. + prefix = null + break + + default: + // pattern has some string bits in the front. + // whatever it starts with, whether that's 'absolute' like /foo/bar, + // or 'relative' like '../baz' + prefix = pattern.slice(0, n).join('/') + break + } + + var remain = pattern.slice(n) + + // get the list of entries. + var read + if (prefix === null) + read = '.' + else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) { + if (!prefix || !isAbsolute(prefix)) + prefix = '/' + prefix + read = prefix + } else + read = prefix + + var abs = this._makeAbs(read) + + //if ignored, skip processing + if (childrenIgnored(this, read)) + return + + var isGlobStar = remain[0] === minimatch.GLOBSTAR + if (isGlobStar) + this._processGlobStar(prefix, read, abs, remain, index, inGlobStar) + else + this._processReaddir(prefix, read, abs, remain, index, inGlobStar) +} + + +GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) { + var entries = this._readdir(abs, inGlobStar) + + // if the abs isn't a dir, then nothing can match! + if (!entries) + return + + // It will only match dot entries if it starts with a dot, or if + // dot is set. Stuff like @(.foo|.bar) isn't allowed. + var pn = remain[0] + var negate = !!this.minimatch.negate + var rawGlob = pn._glob + var dotOk = this.dot || rawGlob.charAt(0) === '.' + + var matchedEntries = [] + for (var i = 0; i < entries.length; i++) { + var e = entries[i] + if (e.charAt(0) !== '.' || dotOk) { + var m + if (negate && !prefix) { + m = !e.match(pn) + } else { + m = e.match(pn) + } + if (m) + matchedEntries.push(e) + } + } + + var len = matchedEntries.length + // If there are no matched entries, then nothing matches. + if (len === 0) + return + + // if this is the last remaining pattern bit, then no need for + // an additional stat *unless* the user has specified mark or + // stat explicitly. We know they exist, since readdir returned + // them. + + if (remain.length === 1 && !this.mark && !this.stat) { + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + if (prefix) { + if (prefix.slice(-1) !== '/') + e = prefix + '/' + e + else + e = prefix + e + } + + if (e.charAt(0) === '/' && !this.nomount) { + e = path.join(this.root, e) + } + this.matches[index][e] = true + } + // This was the last one, and no stats were needed + return + } + + // now test all matched entries as stand-ins for that part + // of the pattern. + remain.shift() + for (var i = 0; i < len; i ++) { + var e = matchedEntries[i] + var newPattern + if (prefix) + newPattern = [prefix, e] + else + newPattern = [e] + this._process(newPattern.concat(remain), index, inGlobStar) + } +} + + +GlobSync.prototype._emitMatch = function (index, e) { + var abs = this._makeAbs(e) + if (this.mark) + e = this._mark(e) + + if (this.matches[index][e]) + return + + if (this.nodir) { + var c = this.cache[this._makeAbs(e)] + if (c === 'DIR' || Array.isArray(c)) + return + } + + this.matches[index][e] = true + if (this.stat) + this._stat(e) +} + + +GlobSync.prototype._readdirInGlobStar = function (abs) { + // follow all symlinked directories forever + // just proceed as if this is a non-globstar situation + if (this.follow) + return this._readdir(abs, false) + + var entries + var lstat + var stat + try { + lstat = fs.lstatSync(abs) + } catch (er) { + // lstat failed, doesn't exist + return null + } + + var isSym = lstat.isSymbolicLink() + this.symlinks[abs] = isSym + + // If it's not a symlink or a dir, then it's definitely a regular file. + // don't bother doing a readdir in that case. + if (!isSym && !lstat.isDirectory()) + this.cache[abs] = 'FILE' + else + entries = this._readdir(abs, false) + + return entries +} + +GlobSync.prototype._readdir = function (abs, inGlobStar) { + var entries + + if (inGlobStar && !ownProp(this.symlinks, abs)) + return this._readdirInGlobStar(abs) + + if (ownProp(this.cache, abs)) { + var c = this.cache[abs] + if (!c || c === 'FILE') + return null + + if (Array.isArray(c)) + return c + } + + try { + return this._readdirEntries(abs, fs.readdirSync(abs)) + } catch (er) { + this._readdirError(abs, er) + return null + } +} + +GlobSync.prototype._readdirEntries = function (abs, entries) { + // if we haven't asked to stat everything, then just + // assume that everything in there exists, so we can avoid + // having to stat it a second time. + if (!this.mark && !this.stat) { + for (var i = 0; i < entries.length; i ++) { + var e = entries[i] + if (abs === '/') + e = abs + e + else + e = abs + '/' + e + this.cache[e] = true + } + } + + this.cache[abs] = entries + + // mark and cache dir-ness + return entries +} + +GlobSync.prototype._readdirError = function (f, er) { + // handle errors, and cache the information + switch (er.code) { + case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205 + case 'ENOTDIR': // totally normal. means it *does* exist. + this.cache[this._makeAbs(f)] = 'FILE' + break + + case 'ENOENT': // not terribly unusual + case 'ELOOP': + case 'ENAMETOOLONG': + case 'UNKNOWN': + this.cache[this._makeAbs(f)] = false + break + + default: // some unusual error. Treat as failure. + this.cache[this._makeAbs(f)] = false + if (this.strict) + throw er + if (!this.silent) + console.error('glob error', er) + break + } +} + +GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) { + + var entries = this._readdir(abs, inGlobStar) + + // no entries means not a dir, so it can never have matches + // foo.txt/** doesn't match foo.txt + if (!entries) + return + + // test without the globstar, and with every child both below + // and replacing the globstar. + var remainWithoutGlobStar = remain.slice(1) + var gspref = prefix ? [ prefix ] : [] + var noGlobStar = gspref.concat(remainWithoutGlobStar) + + // the noGlobStar pattern exits the inGlobStar state + this._process(noGlobStar, index, false) + + var len = entries.length + var isSym = this.symlinks[abs] + + // If it's a symlink, and we're in a globstar, then stop + if (isSym && inGlobStar) + return + + for (var i = 0; i < len; i++) { + var e = entries[i] + if (e.charAt(0) === '.' && !this.dot) + continue + + // these two cases enter the inGlobStar state + var instead = gspref.concat(entries[i], remainWithoutGlobStar) + this._process(instead, index, true) + + var below = gspref.concat(entries[i], remain) + this._process(below, index, true) + } +} + +GlobSync.prototype._processSimple = function (prefix, index) { + // XXX review this. Shouldn't it be doing the mounting etc + // before doing stat? kinda weird? + var exists = this._stat(prefix) + + if (!this.matches[index]) + this.matches[index] = Object.create(null) + + // If it doesn't exist, then just mark the lack of results + if (!exists) + return + + if (prefix && isAbsolute(prefix) && !this.nomount) { + var trail = /[\/\\]$/.test(prefix) + if (prefix.charAt(0) === '/') { + prefix = path.join(this.root, prefix) + } else { + prefix = path.resolve(this.root, prefix) + if (trail) + prefix += '/' + } + } + + if (process.platform === 'win32') + prefix = prefix.replace(/\\/g, '/') + + // Mark this as a match + this.matches[index][prefix] = true +} + +// Returns either 'DIR', 'FILE', or false +GlobSync.prototype._stat = function (f) { + var abs = this._makeAbs(f) + var needDir = f.slice(-1) === '/' + + if (f.length > this.maxLength) + return false + + if (!this.stat && ownProp(this.cache, abs)) { + var c = this.cache[abs] + + if (Array.isArray(c)) + c = 'DIR' + + // It exists, but maybe not how we need it + if (!needDir || c === 'DIR') + return c + + if (needDir && c === 'FILE') + return false + + // otherwise we have to stat, because maybe c=true + // if we know it exists, but not what it is. + } + + var exists + var stat = this.statCache[abs] + if (!stat) { + var lstat + try { + lstat = fs.lstatSync(abs) + } catch (er) { + return false + } + + if (lstat.isSymbolicLink()) { + try { + stat = fs.statSync(abs) + } catch (er) { + stat = lstat + } + } else { + stat = lstat + } + } + + this.statCache[abs] = stat + + var c = stat.isDirectory() ? 'DIR' : 'FILE' + this.cache[abs] = this.cache[abs] || c + + if (needDir && c !== 'DIR') + return false + + return c +} + +GlobSync.prototype._mark = function (p) { + return common.mark(this, p) +} + +GlobSync.prototype._makeAbs = function (f) { + return common.makeAbs(this, f) +} + +}).call(this,require('_process')) +},{"./common.js":15,"./glob.js":16,"_process":24,"assert":9,"fs":12,"minimatch":20,"path":22,"path-is-absolute":23,"util":28}],18:[function(require,module,exports){ +(function (process){ +var wrappy = require('wrappy') +var reqs = Object.create(null) +var once = require('once') + +module.exports = wrappy(inflight) + +function inflight (key, cb) { + if (reqs[key]) { + reqs[key].push(cb) + return null + } else { + reqs[key] = [cb] + return makeres(key) + } +} + +function makeres (key) { + return once(function RES () { + var cbs = reqs[key] + var len = cbs.length + var args = slice(arguments) + + // XXX It's somewhat ambiguous whether a new callback added in this + // pass should be queued for later execution if something in the + // list of callbacks throws, or if it should just be discarded. + // However, it's such an edge case that it hardly matters, and either + // choice is likely as surprising as the other. + // As it happens, we do go ahead and schedule it for later execution. + try { + for (var i = 0; i < len; i++) { + cbs[i].apply(null, args) + } + } finally { + if (cbs.length > len) { + // added more in the interim. + // de-zalgo, just in case, but don't call again. + cbs.splice(0, len) + process.nextTick(function () { + RES.apply(null, args) + }) + } else { + delete reqs[key] + } + } + }) +} + +function slice (args) { + var length = args.length + var array = [] + + for (var i = 0; i < length; i++) array[i] = args[i] + return array +} + +}).call(this,require('_process')) +},{"_process":24,"once":21,"wrappy":29}],19:[function(require,module,exports){ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } +} + +},{}],20:[function(require,module,exports){ +module.exports = minimatch +minimatch.Minimatch = Minimatch + +var path = { sep: '/' } +try { + path = require('path') +} catch (er) {} + +var GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {} +var expand = require('brace-expansion') + +var plTypes = { + '!': { open: '(?:(?!(?:', close: '))[^/]*?)'}, + '?': { open: '(?:', close: ')?' }, + '+': { open: '(?:', close: ')+' }, + '*': { open: '(?:', close: ')*' }, + '@': { open: '(?:', close: ')' } +} + +// any single thing other than / +// don't need to escape / when using new RegExp() +var qmark = '[^/]' + +// * => any number of characters +var star = qmark + '*?' + +// ** when dots are allowed. Anything goes, except .. and . +// not (^ or / followed by one or two dots followed by $ or /), +// followed by anything, any number of times. +var twoStarDot = '(?:(?!(?:\\\/|^)(?:\\.{1,2})($|\\\/)).)*?' + +// not a ^ or / followed by a dot, +// followed by anything, any number of times. +var twoStarNoDot = '(?:(?!(?:\\\/|^)\\.).)*?' + +// characters that need to be escaped in RegExp. +var reSpecials = charSet('().*{}+?[]^$\\!') + +// "abc" -> { a:true, b:true, c:true } +function charSet (s) { + return s.split('').reduce(function (set, c) { + set[c] = true + return set + }, {}) +} + +// normalizes slashes. +var slashSplit = /\/+/ + +minimatch.filter = filter +function filter (pattern, options) { + options = options || {} + return function (p, i, list) { + return minimatch(p, pattern, options) + } +} + +function ext (a, b) { + a = a || {} + b = b || {} + var t = {} + Object.keys(b).forEach(function (k) { + t[k] = b[k] + }) + Object.keys(a).forEach(function (k) { + t[k] = a[k] + }) + return t +} + +minimatch.defaults = function (def) { + if (!def || !Object.keys(def).length) return minimatch + + var orig = minimatch + + var m = function minimatch (p, pattern, options) { + return orig.minimatch(p, pattern, ext(def, options)) + } + + m.Minimatch = function Minimatch (pattern, options) { + return new orig.Minimatch(pattern, ext(def, options)) + } + + return m +} + +Minimatch.defaults = function (def) { + if (!def || !Object.keys(def).length) return Minimatch + return minimatch.defaults(def).Minimatch +} + +function minimatch (p, pattern, options) { + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } + + if (!options) options = {} + + // shortcut: comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + return false + } + + // "" only matches "" + if (pattern.trim() === '') return p === '' + + return new Minimatch(pattern, options).match(p) +} + +function Minimatch (pattern, options) { + if (!(this instanceof Minimatch)) { + return new Minimatch(pattern, options) + } + + if (typeof pattern !== 'string') { + throw new TypeError('glob pattern string required') + } + + if (!options) options = {} + pattern = pattern.trim() + + // windows support: need to use /, not \ + if (path.sep !== '/') { + pattern = pattern.split(path.sep).join('/') + } + + this.options = options + this.set = [] + this.pattern = pattern + this.regexp = null + this.negate = false + this.comment = false + this.empty = false + + // make the set of regexps etc. + this.make() +} + +Minimatch.prototype.debug = function () {} + +Minimatch.prototype.make = make +function make () { + // don't do it more than once. + if (this._made) return + + var pattern = this.pattern + var options = this.options + + // empty patterns and comments match nothing. + if (!options.nocomment && pattern.charAt(0) === '#') { + this.comment = true + return + } + if (!pattern) { + this.empty = true + return + } + + // step 1: figure out negation, etc. + this.parseNegate() + + // step 2: expand braces + var set = this.globSet = this.braceExpand() + + if (options.debug) this.debug = console.error + + this.debug(this.pattern, set) + + // step 3: now we have a set, so turn each one into a series of path-portion + // matching patterns. + // These will be regexps, except in the case of "**", which is + // set to the GLOBSTAR object for globstar behavior, + // and will not contain any / characters + set = this.globParts = set.map(function (s) { + return s.split(slashSplit) + }) + + this.debug(this.pattern, set) + + // glob --> regexps + set = set.map(function (s, si, set) { + return s.map(this.parse, this) + }, this) + + this.debug(this.pattern, set) + + // filter out everything that didn't compile properly. + set = set.filter(function (s) { + return s.indexOf(false) === -1 + }) + + this.debug(this.pattern, set) + + this.set = set +} + +Minimatch.prototype.parseNegate = parseNegate +function parseNegate () { + var pattern = this.pattern + var negate = false + var options = this.options + var negateOffset = 0 + + if (options.nonegate) return + + for (var i = 0, l = pattern.length + ; i < l && pattern.charAt(i) === '!' + ; i++) { + negate = !negate + negateOffset++ + } + + if (negateOffset) this.pattern = pattern.substr(negateOffset) + this.negate = negate +} + +// Brace expansion: +// a{b,c}d -> abd acd +// a{b,}c -> abc ac +// a{0..3}d -> a0d a1d a2d a3d +// a{b,c{d,e}f}g -> abg acdfg acefg +// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg +// +// Invalid sets are not expanded. +// a{2..}b -> a{2..}b +// a{b}c -> a{b}c +minimatch.braceExpand = function (pattern, options) { + return braceExpand(pattern, options) +} + +Minimatch.prototype.braceExpand = braceExpand + +function braceExpand (pattern, options) { + if (!options) { + if (this instanceof Minimatch) { + options = this.options + } else { + options = {} + } + } + + pattern = typeof pattern === 'undefined' + ? this.pattern : pattern + + if (typeof pattern === 'undefined') { + throw new TypeError('undefined pattern') + } + + if (options.nobrace || + !pattern.match(/\{.*\}/)) { + // shortcut. no need to expand. + return [pattern] + } + + return expand(pattern) +} + +// parse a component of the expanded set. +// At this point, no pattern may contain "/" in it +// so we're going to return a 2d array, where each entry is the full +// pattern, split on '/', and then turned into a regular expression. +// A regexp is made at the end which joins each array with an +// escaped /, and another full one which joins each regexp with |. +// +// Following the lead of Bash 4.1, note that "**" only has special meaning +// when it is the *only* thing in a path portion. Otherwise, any series +// of * is equivalent to a single *. Globstar behavior is enabled by +// default, and can be disabled by setting options.noglobstar. +Minimatch.prototype.parse = parse +var SUBPARSE = {} +function parse (pattern, isSub) { + if (pattern.length > 1024 * 64) { + throw new TypeError('pattern is too long') + } + + var options = this.options + + // shortcuts + if (!options.noglobstar && pattern === '**') return GLOBSTAR + if (pattern === '') return '' + + var re = '' + var hasMagic = !!options.nocase + var escaping = false + // ? => one single character + var patternListStack = [] + var negativeLists = [] + var stateChar + var inClass = false + var reClassStart = -1 + var classStart = -1 + // . and .. never match anything that doesn't start with ., + // even when options.dot is set. + var patternStart = pattern.charAt(0) === '.' ? '' // anything + // not (start or / followed by . or .. followed by / or end) + : options.dot ? '(?!(?:^|\\\/)\\.{1,2}(?:$|\\\/))' + : '(?!\\.)' + var self = this + + function clearStateChar () { + if (stateChar) { + // we had some state-tracking character + // that wasn't consumed by this pass. + switch (stateChar) { + case '*': + re += star + hasMagic = true + break + case '?': + re += qmark + hasMagic = true + break + default: + re += '\\' + stateChar + break + } + self.debug('clearStateChar %j %j', stateChar, re) + stateChar = false + } + } + + for (var i = 0, len = pattern.length, c + ; (i < len) && (c = pattern.charAt(i)) + ; i++) { + this.debug('%s\t%s %s %j', pattern, i, re, c) + + // skip over any that are escaped. + if (escaping && reSpecials[c]) { + re += '\\' + c + escaping = false + continue + } + + switch (c) { + case '/': + // completely not allowed, even escaped. + // Should already be path-split by now. + return false + + case '\\': + clearStateChar() + escaping = true + continue + + // the various stateChar values + // for the "extglob" stuff. + case '?': + case '*': + case '+': + case '@': + case '!': + this.debug('%s\t%s %s %j <-- stateChar', pattern, i, re, c) + + // all of those are literals inside a class, except that + // the glob [!a] means [^a] in regexp + if (inClass) { + this.debug(' in class') + if (c === '!' && i === classStart + 1) c = '^' + re += c + continue + } + + // if we already have a stateChar, then it means + // that there was something like ** or +? in there. + // Handle the stateChar, then proceed with this one. + self.debug('call clearStateChar %j', stateChar) + clearStateChar() + stateChar = c + // if extglob is disabled, then +(asdf|foo) isn't a thing. + // just clear the statechar *now*, rather than even diving into + // the patternList stuff. + if (options.noext) clearStateChar() + continue + + case '(': + if (inClass) { + re += '(' + continue + } + + if (!stateChar) { + re += '\\(' + continue + } + + patternListStack.push({ + type: stateChar, + start: i - 1, + reStart: re.length, + open: plTypes[stateChar].open, + close: plTypes[stateChar].close + }) + // negation is (?:(?!js)[^/]*) + re += stateChar === '!' ? '(?:(?!(?:' : '(?:' + this.debug('plType %j %j', stateChar, re) + stateChar = false + continue + + case ')': + if (inClass || !patternListStack.length) { + re += '\\)' + continue + } + + clearStateChar() + hasMagic = true + var pl = patternListStack.pop() + // negation is (?:(?!js)[^/]*) + // The others are (?:) + re += pl.close + if (pl.type === '!') { + negativeLists.push(pl) + } + pl.reEnd = re.length + continue + + case '|': + if (inClass || !patternListStack.length || escaping) { + re += '\\|' + escaping = false + continue + } + + clearStateChar() + re += '|' + continue + + // these are mostly the same in regexp and glob + case '[': + // swallow any state-tracking char before the [ + clearStateChar() + + if (inClass) { + re += '\\' + c + continue + } + + inClass = true + classStart = i + reClassStart = re.length + re += c + continue + + case ']': + // a right bracket shall lose its special + // meaning and represent itself in + // a bracket expression if it occurs + // first in the list. -- POSIX.2 2.8.3.2 + if (i === classStart + 1 || !inClass) { + re += '\\' + c + escaping = false + continue + } + + // handle the case where we left a class open. + // "[z-a]" is valid, equivalent to "\[z-a\]" + if (inClass) { + // split where the last [ was, make sure we don't have + // an invalid re. if so, re-walk the contents of the + // would-be class to re-translate any characters that + // were passed through as-is + // TODO: It would probably be faster to determine this + // without a try/catch and a new RegExp, but it's tricky + // to do safely. For now, this is safe and works. + var cs = pattern.substring(classStart + 1, i) + try { + RegExp('[' + cs + ']') + } catch (er) { + // not a valid class! + var sp = this.parse(cs, SUBPARSE) + re = re.substr(0, reClassStart) + '\\[' + sp[0] + '\\]' + hasMagic = hasMagic || sp[1] + inClass = false + continue + } + } + + // finish up the class. + hasMagic = true + inClass = false + re += c + continue + + default: + // swallow any state char that wasn't consumed + clearStateChar() + + if (escaping) { + // no need + escaping = false + } else if (reSpecials[c] + && !(c === '^' && inClass)) { + re += '\\' + } + + re += c + + } // switch + } // for + + // handle the case where we left a class open. + // "[abc" is valid, equivalent to "\[abc" + if (inClass) { + // split where the last [ was, and escape it + // this is a huge pita. We now have to re-walk + // the contents of the would-be class to re-translate + // any characters that were passed through as-is + cs = pattern.substr(classStart + 1) + sp = this.parse(cs, SUBPARSE) + re = re.substr(0, reClassStart) + '\\[' + sp[0] + hasMagic = hasMagic || sp[1] + } + + // handle the case where we had a +( thing at the *end* + // of the pattern. + // each pattern list stack adds 3 chars, and we need to go through + // and escape any | chars that were passed through as-is for the regexp. + // Go through and escape them, taking care not to double-escape any + // | chars that were already escaped. + for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) { + var tail = re.slice(pl.reStart + pl.open.length) + this.debug('setting tail', re, pl) + // maybe some even number of \, then maybe 1 \, followed by a | + tail = tail.replace(/((?:\\{2}){0,64})(\\?)\|/g, function (_, $1, $2) { + if (!$2) { + // the | isn't already escaped, so escape it. + $2 = '\\' + } + + // need to escape all those slashes *again*, without escaping the + // one that we need for escaping the | character. As it works out, + // escaping an even number of slashes can be done by simply repeating + // it exactly after itself. That's why this trick works. + // + // I am sorry that you have to see this. + return $1 + $1 + $2 + '|' + }) + + this.debug('tail=%j\n %s', tail, tail, pl, re) + var t = pl.type === '*' ? star + : pl.type === '?' ? qmark + : '\\' + pl.type + + hasMagic = true + re = re.slice(0, pl.reStart) + t + '\\(' + tail + } + + // handle trailing things that only matter at the very end. + clearStateChar() + if (escaping) { + // trailing \\ + re += '\\\\' + } + + // only need to apply the nodot start if the re starts with + // something that could conceivably capture a dot + var addPatternStart = false + switch (re.charAt(0)) { + case '.': + case '[': + case '(': addPatternStart = true + } + + // Hack to work around lack of negative lookbehind in JS + // A pattern like: *.!(x).!(y|z) needs to ensure that a name + // like 'a.xyz.yz' doesn't match. So, the first negative + // lookahead, has to look ALL the way ahead, to the end of + // the pattern. + for (var n = negativeLists.length - 1; n > -1; n--) { + var nl = negativeLists[n] + + var nlBefore = re.slice(0, nl.reStart) + var nlFirst = re.slice(nl.reStart, nl.reEnd - 8) + var nlLast = re.slice(nl.reEnd - 8, nl.reEnd) + var nlAfter = re.slice(nl.reEnd) + + nlLast += nlAfter + + // Handle nested stuff like *(*.js|!(*.json)), where open parens + // mean that we should *not* include the ) in the bit that is considered + // "after" the negated section. + var openParensBefore = nlBefore.split('(').length - 1 + var cleanAfter = nlAfter + for (i = 0; i < openParensBefore; i++) { + cleanAfter = cleanAfter.replace(/\)[+*?]?/, '') + } + nlAfter = cleanAfter + + var dollar = '' + if (nlAfter === '' && isSub !== SUBPARSE) { + dollar = '$' + } + var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast + re = newRe + } + + // if the re is not "" at this point, then we need to make sure + // it doesn't match against an empty path part. + // Otherwise a/* will match a/, which it should not. + if (re !== '' && hasMagic) { + re = '(?=.)' + re + } + + if (addPatternStart) { + re = patternStart + re + } + + // parsing just a piece of a larger pattern. + if (isSub === SUBPARSE) { + return [re, hasMagic] + } + + // skip the regexp for non-magical patterns + // unescape anything in it, though, so that it'll be + // an exact match against a file etc. + if (!hasMagic) { + return globUnescape(pattern) + } + + var flags = options.nocase ? 'i' : '' + try { + var regExp = new RegExp('^' + re + '$', flags) + } catch (er) { + // If it was an invalid regular expression, then it can't match + // anything. This trick looks for a character after the end of + // the string, which is of course impossible, except in multi-line + // mode, but it's not a /m regex. + return new RegExp('$.') + } + + regExp._glob = pattern + regExp._src = re + + return regExp +} + +minimatch.makeRe = function (pattern, options) { + return new Minimatch(pattern, options || {}).makeRe() +} + +Minimatch.prototype.makeRe = makeRe +function makeRe () { + if (this.regexp || this.regexp === false) return this.regexp + + // at this point, this.set is a 2d array of partial + // pattern strings, or "**". + // + // It's better to use .match(). This function shouldn't + // be used, really, but it's pretty convenient sometimes, + // when you just want to work with a regex. + var set = this.set + + if (!set.length) { + this.regexp = false + return this.regexp + } + var options = this.options + + var twoStar = options.noglobstar ? star + : options.dot ? twoStarDot + : twoStarNoDot + var flags = options.nocase ? 'i' : '' + + var re = set.map(function (pattern) { + return pattern.map(function (p) { + return (p === GLOBSTAR) ? twoStar + : (typeof p === 'string') ? regExpEscape(p) + : p._src + }).join('\\\/') + }).join('|') + + // must match entire pattern + // ending in a * or ** will make it less strict. + re = '^(?:' + re + ')$' + + // can match anything, as long as it's not this. + if (this.negate) re = '^(?!' + re + ').*$' + + try { + this.regexp = new RegExp(re, flags) + } catch (ex) { + this.regexp = false + } + return this.regexp +} + +minimatch.match = function (list, pattern, options) { + options = options || {} + var mm = new Minimatch(pattern, options) + list = list.filter(function (f) { + return mm.match(f) + }) + if (mm.options.nonull && !list.length) { + list.push(pattern) + } + return list +} + +Minimatch.prototype.match = match +function match (f, partial) { + this.debug('match', f, this.pattern) + // short-circuit in the case of busted things. + // comments, etc. + if (this.comment) return false + if (this.empty) return f === '' + + if (f === '/' && partial) return true + + var options = this.options + + // windows: need to use /, not \ + if (path.sep !== '/') { + f = f.split(path.sep).join('/') + } + + // treat the test path as a set of pathparts. + f = f.split(slashSplit) + this.debug(this.pattern, 'split', f) + + // just ONE of the pattern sets in this.set needs to match + // in order for it to be valid. If negating, then just one + // match means that we have failed. + // Either way, return on the first hit. + + var set = this.set + this.debug(this.pattern, 'set', set) + + // Find the basename of the path by looking for the last non-empty segment + var filename + var i + for (i = f.length - 1; i >= 0; i--) { + filename = f[i] + if (filename) break + } + + for (i = 0; i < set.length; i++) { + var pattern = set[i] + var file = f + if (options.matchBase && pattern.length === 1) { + file = [filename] + } + var hit = this.matchOne(file, pattern, partial) + if (hit) { + if (options.flipNegate) return true + return !this.negate + } + } + + // didn't get any hits. this is success if it's a negative + // pattern, failure otherwise. + if (options.flipNegate) return false + return this.negate +} + +// set partial to true to test if, for example, +// "/a/b" matches the start of "/*/b/*/d" +// Partial means, if you run out of file before you run +// out of pattern, then that's fine, as long as all +// the parts match. +Minimatch.prototype.matchOne = function (file, pattern, partial) { + var options = this.options + + this.debug('matchOne', + { 'this': this, file: file, pattern: pattern }) + + this.debug('matchOne', file.length, pattern.length) + + for (var fi = 0, + pi = 0, + fl = file.length, + pl = pattern.length + ; (fi < fl) && (pi < pl) + ; fi++, pi++) { + this.debug('matchOne loop') + var p = pattern[pi] + var f = file[fi] + + this.debug(pattern, p, f) + + // should be impossible. + // some invalid regexp stuff in the set. + if (p === false) return false + + if (p === GLOBSTAR) { + this.debug('GLOBSTAR', [pattern, p, f]) + + // "**" + // a/**/b/**/c would match the following: + // a/b/x/y/z/c + // a/x/y/z/b/c + // a/b/x/b/x/c + // a/b/c + // To do this, take the rest of the pattern after + // the **, and see if it would match the file remainder. + // If so, return success. + // If not, the ** "swallows" a segment, and try again. + // This is recursively awful. + // + // a/**/b/**/c matching a/b/x/y/z/c + // - a matches a + // - doublestar + // - matchOne(b/x/y/z/c, b/**/c) + // - b matches b + // - doublestar + // - matchOne(x/y/z/c, c) -> no + // - matchOne(y/z/c, c) -> no + // - matchOne(z/c, c) -> no + // - matchOne(c, c) yes, hit + var fr = fi + var pr = pi + 1 + if (pr === pl) { + this.debug('** at the end') + // a ** at the end will just swallow the rest. + // We have found a match. + // however, it will not swallow /.x, unless + // options.dot is set. + // . and .. are *never* matched by **, for explosively + // exponential reasons. + for (; fi < fl; fi++) { + if (file[fi] === '.' || file[fi] === '..' || + (!options.dot && file[fi].charAt(0) === '.')) return false + } + return true + } + + // ok, let's see if we can swallow whatever we can. + while (fr < fl) { + var swallowee = file[fr] + + this.debug('\nglobstar while', file, fr, pattern, pr, swallowee) + + // XXX remove this slice. Just pass the start index. + if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) { + this.debug('globstar found match!', fr, fl, swallowee) + // found a match. + return true + } else { + // can't swallow "." or ".." ever. + // can only swallow ".foo" when explicitly asked. + if (swallowee === '.' || swallowee === '..' || + (!options.dot && swallowee.charAt(0) === '.')) { + this.debug('dot detected!', file, fr, pattern, pr) + break + } + + // ** swallows a segment, and continue. + this.debug('globstar swallow a segment, and continue') + fr++ + } + } + + // no match was found. + // However, in partial mode, we can't say this is necessarily over. + // If there's more *pattern* left, then + if (partial) { + // ran out of file + this.debug('\n>>> no match, partial?', file, fr, pattern, pr) + if (fr === fl) return true + } + return false + } + + // something other than ** + // non-magic patterns just have to match exactly + // patterns with magic have been turned into regexps. + var hit + if (typeof p === 'string') { + if (options.nocase) { + hit = f.toLowerCase() === p.toLowerCase() + } else { + hit = f === p + } + this.debug('string match', p, f, hit) + } else { + hit = f.match(p) + this.debug('pattern match', p, f, hit) + } + + if (!hit) return false + } + + // Note: ending in / means that we'll get a final "" + // at the end of the pattern. This can only match a + // corresponding "" at the end of the file. + // If the file ends in /, then it can only match a + // a pattern that ends in /, unless the pattern just + // doesn't have any more for it. But, a/b/ should *not* + // match "a/b/*", even though "" matches against the + // [^/]*? pattern, except in partial mode, where it might + // simply not be reached yet. + // However, a/b/ should still satisfy a/* + + // now either we fell off the end of the pattern, or we're done. + if (fi === fl && pi === pl) { + // ran out of pattern and filename at the same time. + // an exact hit! + return true + } else if (fi === fl) { + // ran out of file, but still had pattern left. + // this is ok if we're doing the match as part of + // a glob fs traversal. + return partial + } else if (pi === pl) { + // ran out of pattern, still have file left. + // this is only acceptable if we're on the very last + // empty segment of a file with a trailing slash. + // a/* should match a/b/ + var emptyFileEnd = (fi === fl - 1) && (file[fi] === '') + return emptyFileEnd + } + + // should be unreachable. + throw new Error('wtf?') +} + +// replace stuff like \* with * +function globUnescape (s) { + return s.replace(/\\(.)/g, '$1') +} + +function regExpEscape (s) { + return s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&') +} + +},{"brace-expansion":11,"path":22}],21:[function(require,module,exports){ +var wrappy = require('wrappy') +module.exports = wrappy(once) +module.exports.strict = wrappy(onceStrict) + +once.proto = once(function () { + Object.defineProperty(Function.prototype, 'once', { + value: function () { + return once(this) + }, + configurable: true + }) + + Object.defineProperty(Function.prototype, 'onceStrict', { + value: function () { + return onceStrict(this) + }, + configurable: true + }) +}) + +function once (fn) { + var f = function () { + if (f.called) return f.value + f.called = true + return f.value = fn.apply(this, arguments) + } + f.called = false + return f +} + +function onceStrict (fn) { + var f = function () { + if (f.called) + throw new Error(f.onceError) + f.called = true + return f.value = fn.apply(this, arguments) + } + var name = fn.name || 'Function wrapped with `once`' + f.onceError = name + " shouldn't be called more than once" + f.called = false + return f +} + +},{"wrappy":29}],22:[function(require,module,exports){ +(function (process){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +// resolves . and .. elements in a path array with directory names there +// must be no slashes, empty elements, or device names (c:\) in the array +// (so also no leading and trailing slashes - it does not distinguish +// relative and absolute paths) +function normalizeArray(parts, allowAboveRoot) { + // if the path tries to go above the root, `up` ends up > 0 + var up = 0; + for (var i = parts.length - 1; i >= 0; i--) { + var last = parts[i]; + if (last === '.') { + parts.splice(i, 1); + } else if (last === '..') { + parts.splice(i, 1); + up++; + } else if (up) { + parts.splice(i, 1); + up--; + } + } + + // if the path is allowed to go above the root, restore leading ..s + if (allowAboveRoot) { + for (; up--; up) { + parts.unshift('..'); + } + } + + return parts; +} + +// Split a filename into [root, dir, basename, ext], unix version +// 'root' is just a slash, or nothing. +var splitPathRe = + /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/; +var splitPath = function(filename) { + return splitPathRe.exec(filename).slice(1); +}; + +// path.resolve([from ...], to) +// posix version +exports.resolve = function() { + var resolvedPath = '', + resolvedAbsolute = false; + + for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) { + var path = (i >= 0) ? arguments[i] : process.cwd(); + + // Skip empty and invalid entries + if (typeof path !== 'string') { + throw new TypeError('Arguments to path.resolve must be strings'); + } else if (!path) { + continue; + } + + resolvedPath = path + '/' + resolvedPath; + resolvedAbsolute = path.charAt(0) === '/'; + } + + // At this point the path should be resolved to a full absolute path, but + // handle relative paths to be safe (might happen when process.cwd() fails) + + // Normalize the path + resolvedPath = normalizeArray(filter(resolvedPath.split('/'), function(p) { + return !!p; + }), !resolvedAbsolute).join('/'); + + return ((resolvedAbsolute ? '/' : '') + resolvedPath) || '.'; +}; + +// path.normalize(path) +// posix version +exports.normalize = function(path) { + var isAbsolute = exports.isAbsolute(path), + trailingSlash = substr(path, -1) === '/'; + + // Normalize the path + path = normalizeArray(filter(path.split('/'), function(p) { + return !!p; + }), !isAbsolute).join('/'); + + if (!path && !isAbsolute) { + path = '.'; + } + if (path && trailingSlash) { + path += '/'; + } + + return (isAbsolute ? '/' : '') + path; +}; + +// posix version +exports.isAbsolute = function(path) { + return path.charAt(0) === '/'; +}; + +// posix version +exports.join = function() { + var paths = Array.prototype.slice.call(arguments, 0); + return exports.normalize(filter(paths, function(p, index) { + if (typeof p !== 'string') { + throw new TypeError('Arguments to path.join must be strings'); + } + return p; + }).join('/')); +}; + + +// path.relative(from, to) +// posix version +exports.relative = function(from, to) { + from = exports.resolve(from).substr(1); + to = exports.resolve(to).substr(1); + + function trim(arr) { + var start = 0; + for (; start < arr.length; start++) { + if (arr[start] !== '') break; + } + + var end = arr.length - 1; + for (; end >= 0; end--) { + if (arr[end] !== '') break; + } + + if (start > end) return []; + return arr.slice(start, end - start + 1); + } + + var fromParts = trim(from.split('/')); + var toParts = trim(to.split('/')); + + var length = Math.min(fromParts.length, toParts.length); + var samePartsLength = length; + for (var i = 0; i < length; i++) { + if (fromParts[i] !== toParts[i]) { + samePartsLength = i; + break; + } + } + + var outputParts = []; + for (var i = samePartsLength; i < fromParts.length; i++) { + outputParts.push('..'); + } + + outputParts = outputParts.concat(toParts.slice(samePartsLength)); + + return outputParts.join('/'); +}; + +exports.sep = '/'; +exports.delimiter = ':'; + +exports.dirname = function(path) { + var result = splitPath(path), + root = result[0], + dir = result[1]; + + if (!root && !dir) { + // No dirname whatsoever + return '.'; + } + + if (dir) { + // It has a dirname, strip trailing slash + dir = dir.substr(0, dir.length - 1); + } + + return root + dir; +}; + + +exports.basename = function(path, ext) { + var f = splitPath(path)[2]; + // TODO: make this comparison case-insensitive on windows? + if (ext && f.substr(-1 * ext.length) === ext) { + f = f.substr(0, f.length - ext.length); + } + return f; +}; + + +exports.extname = function(path) { + return splitPath(path)[3]; +}; + +function filter (xs, f) { + if (xs.filter) return xs.filter(f); + var res = []; + for (var i = 0; i < xs.length; i++) { + if (f(xs[i], i, xs)) res.push(xs[i]); + } + return res; +} + +// String.prototype.substr - negative index don't work in IE8 +var substr = 'ab'.substr(-1) === 'b' + ? function (str, start, len) { return str.substr(start, len) } + : function (str, start, len) { + if (start < 0) start = str.length + start; + return str.substr(start, len); + } +; + +}).call(this,require('_process')) +},{"_process":24}],23:[function(require,module,exports){ +(function (process){ +'use strict'; + +function posix(path) { + return path.charAt(0) === '/'; +} + +function win32(path) { + // https://github.com/nodejs/node/blob/b3fcc245fb25539909ef1d5eaa01dbf92e168633/lib/path.js#L56 + var splitDeviceRe = /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?([\\\/])?([\s\S]*?)$/; + var result = splitDeviceRe.exec(path); + var device = result[1] || ''; + var isUnc = Boolean(device && device.charAt(1) !== ':'); + + // UNC paths are always absolute + return Boolean(result[2] || isUnc); +} + +module.exports = process.platform === 'win32' ? win32 : posix; +module.exports.posix = posix; +module.exports.win32 = win32; + +}).call(this,require('_process')) +},{"_process":24}],24:[function(require,module,exports){ +// shim for using process in browser +var process = module.exports = {}; + +// cached from whatever global is present so that test runners that stub it +// don't break things. But we need to wrap it in a try catch in case it is +// wrapped in strict mode code which doesn't define any globals. It's inside a +// function because try/catches deoptimize in certain engines. + +var cachedSetTimeout; +var cachedClearTimeout; + +function defaultSetTimout() { + throw new Error('setTimeout has not been defined'); +} +function defaultClearTimeout () { + throw new Error('clearTimeout has not been defined'); +} +(function () { + try { + if (typeof setTimeout === 'function') { + cachedSetTimeout = setTimeout; + } else { + cachedSetTimeout = defaultSetTimout; + } + } catch (e) { + cachedSetTimeout = defaultSetTimout; + } + try { + if (typeof clearTimeout === 'function') { + cachedClearTimeout = clearTimeout; + } else { + cachedClearTimeout = defaultClearTimeout; + } + } catch (e) { + cachedClearTimeout = defaultClearTimeout; + } +} ()) +function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + // if setTimeout wasn't available but was latter defined + if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { + cachedSetTimeout = setTimeout; + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + +} +function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + // if clearTimeout wasn't available but was latter defined + if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { + cachedClearTimeout = clearTimeout; + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + +} +var queue = []; +var draining = false; +var currentQueue; +var queueIndex = -1; + +function cleanUpNextTick() { + if (!draining || !currentQueue) { + return; + } + draining = false; + if (currentQueue.length) { + queue = currentQueue.concat(queue); + } else { + queueIndex = -1; + } + if (queue.length) { + drainQueue(); + } +} + +function drainQueue() { + if (draining) { + return; + } + var timeout = runTimeout(cleanUpNextTick); + draining = true; + + var len = queue.length; + while(len) { + currentQueue = queue; + queue = []; + while (++queueIndex < len) { + if (currentQueue) { + currentQueue[queueIndex].run(); + } + } + queueIndex = -1; + len = queue.length; + } + currentQueue = null; + draining = false; + runClearTimeout(timeout); +} + +process.nextTick = function (fun) { + var args = new Array(arguments.length - 1); + if (arguments.length > 1) { + for (var i = 1; i < arguments.length; i++) { + args[i - 1] = arguments[i]; + } + } + queue.push(new Item(fun, args)); + if (queue.length === 1 && !draining) { + runTimeout(drainQueue); + } +}; + +// v8 likes predictible objects +function Item(fun, array) { + this.fun = fun; + this.array = array; +} +Item.prototype.run = function () { + this.fun.apply(null, this.array); +}; +process.title = 'browser'; +process.browser = true; +process.env = {}; +process.argv = []; +process.version = ''; // empty string to avoid regexp issues +process.versions = {}; + +function noop() {} + +process.on = noop; +process.addListener = noop; +process.once = noop; +process.off = noop; +process.removeListener = noop; +process.removeAllListeners = noop; +process.emit = noop; +process.prependListener = noop; +process.prependOnceListener = noop; + +process.listeners = function (name) { return [] } + +process.binding = function (name) { + throw new Error('process.binding is not supported'); +}; + +process.cwd = function () { return '/' }; +process.chdir = function (dir) { + throw new Error('process.chdir is not supported'); +}; +process.umask = function() { return 0; }; + +},{}],25:[function(require,module,exports){ +// Underscore.js 1.8.3 +// http://underscorejs.org +// (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors +// Underscore may be freely distributed under the MIT license. + +(function() { + + // Baseline setup + // -------------- + + // Establish the root object, `window` in the browser, or `exports` on the server. + var root = this; + + // Save the previous value of the `_` variable. + var previousUnderscore = root._; + + // Save bytes in the minified (but not gzipped) version: + var ArrayProto = Array.prototype, ObjProto = Object.prototype, FuncProto = Function.prototype; + + // Create quick reference variables for speed access to core prototypes. + var + push = ArrayProto.push, + slice = ArrayProto.slice, + toString = ObjProto.toString, + hasOwnProperty = ObjProto.hasOwnProperty; + + // All **ECMAScript 5** native function implementations that we hope to use + // are declared here. + var + nativeIsArray = Array.isArray, + nativeKeys = Object.keys, + nativeBind = FuncProto.bind, + nativeCreate = Object.create; + + // Naked function reference for surrogate-prototype-swapping. + var Ctor = function(){}; + + // Create a safe reference to the Underscore object for use below. + var _ = function(obj) { + if (obj instanceof _) return obj; + if (!(this instanceof _)) return new _(obj); + this._wrapped = obj; + }; + + // Export the Underscore object for **Node.js**, with + // backwards-compatibility for the old `require()` API. If we're in + // the browser, add `_` as a global object. + if (typeof exports !== 'undefined') { + if (typeof module !== 'undefined' && module.exports) { + exports = module.exports = _; + } + exports._ = _; + } else { + root._ = _; + } + + // Current version. + _.VERSION = '1.8.3'; + + // Internal function that returns an efficient (for current engines) version + // of the passed-in callback, to be repeatedly applied in other Underscore + // functions. + var optimizeCb = function(func, context, argCount) { + if (context === void 0) return func; + switch (argCount == null ? 3 : argCount) { + case 1: return function(value) { + return func.call(context, value); + }; + case 2: return function(value, other) { + return func.call(context, value, other); + }; + case 3: return function(value, index, collection) { + return func.call(context, value, index, collection); + }; + case 4: return function(accumulator, value, index, collection) { + return func.call(context, accumulator, value, index, collection); + }; + } + return function() { + return func.apply(context, arguments); + }; + }; + + // A mostly-internal function to generate callbacks that can be applied + // to each element in a collection, returning the desired result — either + // identity, an arbitrary callback, a property matcher, or a property accessor. + var cb = function(value, context, argCount) { + if (value == null) return _.identity; + if (_.isFunction(value)) return optimizeCb(value, context, argCount); + if (_.isObject(value)) return _.matcher(value); + return _.property(value); + }; + _.iteratee = function(value, context) { + return cb(value, context, Infinity); + }; + + // An internal function for creating assigner functions. + var createAssigner = function(keysFunc, undefinedOnly) { + return function(obj) { + var length = arguments.length; + if (length < 2 || obj == null) return obj; + for (var index = 1; index < length; index++) { + var source = arguments[index], + keys = keysFunc(source), + l = keys.length; + for (var i = 0; i < l; i++) { + var key = keys[i]; + if (!undefinedOnly || obj[key] === void 0) obj[key] = source[key]; + } + } + return obj; + }; + }; + + // An internal function for creating a new object that inherits from another. + var baseCreate = function(prototype) { + if (!_.isObject(prototype)) return {}; + if (nativeCreate) return nativeCreate(prototype); + Ctor.prototype = prototype; + var result = new Ctor; + Ctor.prototype = null; + return result; + }; + + var property = function(key) { + return function(obj) { + return obj == null ? void 0 : obj[key]; + }; + }; + + // Helper for collection methods to determine whether a collection + // should be iterated as an array or as an object + // Related: http://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength + // Avoids a very nasty iOS 8 JIT bug on ARM-64. #2094 + var MAX_ARRAY_INDEX = Math.pow(2, 53) - 1; + var getLength = property('length'); + var isArrayLike = function(collection) { + var length = getLength(collection); + return typeof length == 'number' && length >= 0 && length <= MAX_ARRAY_INDEX; + }; + + // Collection Functions + // -------------------- + + // The cornerstone, an `each` implementation, aka `forEach`. + // Handles raw objects in addition to array-likes. Treats all + // sparse array-likes as if they were dense. + _.each = _.forEach = function(obj, iteratee, context) { + iteratee = optimizeCb(iteratee, context); + var i, length; + if (isArrayLike(obj)) { + for (i = 0, length = obj.length; i < length; i++) { + iteratee(obj[i], i, obj); + } + } else { + var keys = _.keys(obj); + for (i = 0, length = keys.length; i < length; i++) { + iteratee(obj[keys[i]], keys[i], obj); + } + } + return obj; + }; + + // Return the results of applying the iteratee to each element. + _.map = _.collect = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length, + results = Array(length); + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + results[index] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + }; + + // Create a reducing function iterating left or right. + function createReduce(dir) { + // Optimized iterator function as using arguments.length + // in the main function will deoptimize the, see #1991. + function iterator(obj, iteratee, memo, keys, index, length) { + for (; index >= 0 && index < length; index += dir) { + var currentKey = keys ? keys[index] : index; + memo = iteratee(memo, obj[currentKey], currentKey, obj); + } + return memo; + } + + return function(obj, iteratee, memo, context) { + iteratee = optimizeCb(iteratee, context, 4); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length, + index = dir > 0 ? 0 : length - 1; + // Determine the initial value if none is provided. + if (arguments.length < 3) { + memo = obj[keys ? keys[index] : index]; + index += dir; + } + return iterator(obj, iteratee, memo, keys, index, length); + }; + } + + // **Reduce** builds up a single result from a list of values, aka `inject`, + // or `foldl`. + _.reduce = _.foldl = _.inject = createReduce(1); + + // The right-associative version of reduce, also known as `foldr`. + _.reduceRight = _.foldr = createReduce(-1); + + // Return the first value which passes a truth test. Aliased as `detect`. + _.find = _.detect = function(obj, predicate, context) { + var key; + if (isArrayLike(obj)) { + key = _.findIndex(obj, predicate, context); + } else { + key = _.findKey(obj, predicate, context); + } + if (key !== void 0 && key !== -1) return obj[key]; + }; + + // Return all the elements that pass a truth test. + // Aliased as `select`. + _.filter = _.select = function(obj, predicate, context) { + var results = []; + predicate = cb(predicate, context); + _.each(obj, function(value, index, list) { + if (predicate(value, index, list)) results.push(value); + }); + return results; + }; + + // Return all the elements for which a truth test fails. + _.reject = function(obj, predicate, context) { + return _.filter(obj, _.negate(cb(predicate)), context); + }; + + // Determine whether all of the elements match a truth test. + // Aliased as `all`. + _.every = _.all = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + if (!predicate(obj[currentKey], currentKey, obj)) return false; + } + return true; + }; + + // Determine if at least one element in the object matches a truth test. + // Aliased as `any`. + _.some = _.any = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = !isArrayLike(obj) && _.keys(obj), + length = (keys || obj).length; + for (var index = 0; index < length; index++) { + var currentKey = keys ? keys[index] : index; + if (predicate(obj[currentKey], currentKey, obj)) return true; + } + return false; + }; + + // Determine if the array or object contains a given item (using `===`). + // Aliased as `includes` and `include`. + _.contains = _.includes = _.include = function(obj, item, fromIndex, guard) { + if (!isArrayLike(obj)) obj = _.values(obj); + if (typeof fromIndex != 'number' || guard) fromIndex = 0; + return _.indexOf(obj, item, fromIndex) >= 0; + }; + + // Invoke a method (with arguments) on every item in a collection. + _.invoke = function(obj, method) { + var args = slice.call(arguments, 2); + var isFunc = _.isFunction(method); + return _.map(obj, function(value) { + var func = isFunc ? method : value[method]; + return func == null ? func : func.apply(value, args); + }); + }; + + // Convenience version of a common use case of `map`: fetching a property. + _.pluck = function(obj, key) { + return _.map(obj, _.property(key)); + }; + + // Convenience version of a common use case of `filter`: selecting only objects + // containing specific `key:value` pairs. + _.where = function(obj, attrs) { + return _.filter(obj, _.matcher(attrs)); + }; + + // Convenience version of a common use case of `find`: getting the first object + // containing specific `key:value` pairs. + _.findWhere = function(obj, attrs) { + return _.find(obj, _.matcher(attrs)); + }; + + // Return the maximum element (or element-based computation). + _.max = function(obj, iteratee, context) { + var result = -Infinity, lastComputed = -Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = isArrayLike(obj) ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value > result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed > lastComputed || computed === -Infinity && result === -Infinity) { + result = value; + lastComputed = computed; + } + }); + } + return result; + }; + + // Return the minimum element (or element-based computation). + _.min = function(obj, iteratee, context) { + var result = Infinity, lastComputed = Infinity, + value, computed; + if (iteratee == null && obj != null) { + obj = isArrayLike(obj) ? obj : _.values(obj); + for (var i = 0, length = obj.length; i < length; i++) { + value = obj[i]; + if (value < result) { + result = value; + } + } + } else { + iteratee = cb(iteratee, context); + _.each(obj, function(value, index, list) { + computed = iteratee(value, index, list); + if (computed < lastComputed || computed === Infinity && result === Infinity) { + result = value; + lastComputed = computed; + } + }); + } + return result; + }; + + // Shuffle a collection, using the modern version of the + // [Fisher-Yates shuffle](http://en.wikipedia.org/wiki/Fisher–Yates_shuffle). + _.shuffle = function(obj) { + var set = isArrayLike(obj) ? obj : _.values(obj); + var length = set.length; + var shuffled = Array(length); + for (var index = 0, rand; index < length; index++) { + rand = _.random(0, index); + if (rand !== index) shuffled[index] = shuffled[rand]; + shuffled[rand] = set[index]; + } + return shuffled; + }; + + // Sample **n** random values from a collection. + // If **n** is not specified, returns a single random element. + // The internal `guard` argument allows it to work with `map`. + _.sample = function(obj, n, guard) { + if (n == null || guard) { + if (!isArrayLike(obj)) obj = _.values(obj); + return obj[_.random(obj.length - 1)]; + } + return _.shuffle(obj).slice(0, Math.max(0, n)); + }; + + // Sort the object's values by a criterion produced by an iteratee. + _.sortBy = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + return _.pluck(_.map(obj, function(value, index, list) { + return { + value: value, + index: index, + criteria: iteratee(value, index, list) + }; + }).sort(function(left, right) { + var a = left.criteria; + var b = right.criteria; + if (a !== b) { + if (a > b || a === void 0) return 1; + if (a < b || b === void 0) return -1; + } + return left.index - right.index; + }), 'value'); + }; + + // An internal function used for aggregate "group by" operations. + var group = function(behavior) { + return function(obj, iteratee, context) { + var result = {}; + iteratee = cb(iteratee, context); + _.each(obj, function(value, index) { + var key = iteratee(value, index, obj); + behavior(result, value, key); + }); + return result; + }; + }; + + // Groups the object's values by a criterion. Pass either a string attribute + // to group by, or a function that returns the criterion. + _.groupBy = group(function(result, value, key) { + if (_.has(result, key)) result[key].push(value); else result[key] = [value]; + }); + + // Indexes the object's values by a criterion, similar to `groupBy`, but for + // when you know that your index values will be unique. + _.indexBy = group(function(result, value, key) { + result[key] = value; + }); + + // Counts instances of an object that group by a certain criterion. Pass + // either a string attribute to count by, or a function that returns the + // criterion. + _.countBy = group(function(result, value, key) { + if (_.has(result, key)) result[key]++; else result[key] = 1; + }); + + // Safely create a real, live array from anything iterable. + _.toArray = function(obj) { + if (!obj) return []; + if (_.isArray(obj)) return slice.call(obj); + if (isArrayLike(obj)) return _.map(obj, _.identity); + return _.values(obj); + }; + + // Return the number of elements in an object. + _.size = function(obj) { + if (obj == null) return 0; + return isArrayLike(obj) ? obj.length : _.keys(obj).length; + }; + + // Split a collection into two arrays: one whose elements all satisfy the given + // predicate, and one whose elements all do not satisfy the predicate. + _.partition = function(obj, predicate, context) { + predicate = cb(predicate, context); + var pass = [], fail = []; + _.each(obj, function(value, key, obj) { + (predicate(value, key, obj) ? pass : fail).push(value); + }); + return [pass, fail]; + }; + + // Array Functions + // --------------- + + // Get the first element of an array. Passing **n** will return the first N + // values in the array. Aliased as `head` and `take`. The **guard** check + // allows it to work with `_.map`. + _.first = _.head = _.take = function(array, n, guard) { + if (array == null) return void 0; + if (n == null || guard) return array[0]; + return _.initial(array, array.length - n); + }; + + // Returns everything but the last entry of the array. Especially useful on + // the arguments object. Passing **n** will return all the values in + // the array, excluding the last N. + _.initial = function(array, n, guard) { + return slice.call(array, 0, Math.max(0, array.length - (n == null || guard ? 1 : n))); + }; + + // Get the last element of an array. Passing **n** will return the last N + // values in the array. + _.last = function(array, n, guard) { + if (array == null) return void 0; + if (n == null || guard) return array[array.length - 1]; + return _.rest(array, Math.max(0, array.length - n)); + }; + + // Returns everything but the first entry of the array. Aliased as `tail` and `drop`. + // Especially useful on the arguments object. Passing an **n** will return + // the rest N values in the array. + _.rest = _.tail = _.drop = function(array, n, guard) { + return slice.call(array, n == null || guard ? 1 : n); + }; + + // Trim out all falsy values from an array. + _.compact = function(array) { + return _.filter(array, _.identity); + }; + + // Internal implementation of a recursive `flatten` function. + var flatten = function(input, shallow, strict, startIndex) { + var output = [], idx = 0; + for (var i = startIndex || 0, length = getLength(input); i < length; i++) { + var value = input[i]; + if (isArrayLike(value) && (_.isArray(value) || _.isArguments(value))) { + //flatten current level of array or arguments object + if (!shallow) value = flatten(value, shallow, strict); + var j = 0, len = value.length; + output.length += len; + while (j < len) { + output[idx++] = value[j++]; + } + } else if (!strict) { + output[idx++] = value; + } + } + return output; + }; + + // Flatten out an array, either recursively (by default), or just one level. + _.flatten = function(array, shallow) { + return flatten(array, shallow, false); + }; + + // Return a version of the array that does not contain the specified value(s). + _.without = function(array) { + return _.difference(array, slice.call(arguments, 1)); + }; + + // Produce a duplicate-free version of the array. If the array has already + // been sorted, you have the option of using a faster algorithm. + // Aliased as `unique`. + _.uniq = _.unique = function(array, isSorted, iteratee, context) { + if (!_.isBoolean(isSorted)) { + context = iteratee; + iteratee = isSorted; + isSorted = false; + } + if (iteratee != null) iteratee = cb(iteratee, context); + var result = []; + var seen = []; + for (var i = 0, length = getLength(array); i < length; i++) { + var value = array[i], + computed = iteratee ? iteratee(value, i, array) : value; + if (isSorted) { + if (!i || seen !== computed) result.push(value); + seen = computed; + } else if (iteratee) { + if (!_.contains(seen, computed)) { + seen.push(computed); + result.push(value); + } + } else if (!_.contains(result, value)) { + result.push(value); + } + } + return result; + }; + + // Produce an array that contains the union: each distinct element from all of + // the passed-in arrays. + _.union = function() { + return _.uniq(flatten(arguments, true, true)); + }; + + // Produce an array that contains every item shared between all the + // passed-in arrays. + _.intersection = function(array) { + var result = []; + var argsLength = arguments.length; + for (var i = 0, length = getLength(array); i < length; i++) { + var item = array[i]; + if (_.contains(result, item)) continue; + for (var j = 1; j < argsLength; j++) { + if (!_.contains(arguments[j], item)) break; + } + if (j === argsLength) result.push(item); + } + return result; + }; + + // Take the difference between one array and a number of other arrays. + // Only the elements present in just the first array will remain. + _.difference = function(array) { + var rest = flatten(arguments, true, true, 1); + return _.filter(array, function(value){ + return !_.contains(rest, value); + }); + }; + + // Zip together multiple lists into a single array -- elements that share + // an index go together. + _.zip = function() { + return _.unzip(arguments); + }; + + // Complement of _.zip. Unzip accepts an array of arrays and groups + // each array's elements on shared indices + _.unzip = function(array) { + var length = array && _.max(array, getLength).length || 0; + var result = Array(length); + + for (var index = 0; index < length; index++) { + result[index] = _.pluck(array, index); + } + return result; + }; + + // Converts lists into objects. Pass either a single array of `[key, value]` + // pairs, or two parallel arrays of the same length -- one of keys, and one of + // the corresponding values. + _.object = function(list, values) { + var result = {}; + for (var i = 0, length = getLength(list); i < length; i++) { + if (values) { + result[list[i]] = values[i]; + } else { + result[list[i][0]] = list[i][1]; + } + } + return result; + }; + + // Generator function to create the findIndex and findLastIndex functions + function createPredicateIndexFinder(dir) { + return function(array, predicate, context) { + predicate = cb(predicate, context); + var length = getLength(array); + var index = dir > 0 ? 0 : length - 1; + for (; index >= 0 && index < length; index += dir) { + if (predicate(array[index], index, array)) return index; + } + return -1; + }; + } + + // Returns the first index on an array-like that passes a predicate test + _.findIndex = createPredicateIndexFinder(1); + _.findLastIndex = createPredicateIndexFinder(-1); + + // Use a comparator function to figure out the smallest index at which + // an object should be inserted so as to maintain order. Uses binary search. + _.sortedIndex = function(array, obj, iteratee, context) { + iteratee = cb(iteratee, context, 1); + var value = iteratee(obj); + var low = 0, high = getLength(array); + while (low < high) { + var mid = Math.floor((low + high) / 2); + if (iteratee(array[mid]) < value) low = mid + 1; else high = mid; + } + return low; + }; + + // Generator function to create the indexOf and lastIndexOf functions + function createIndexFinder(dir, predicateFind, sortedIndex) { + return function(array, item, idx) { + var i = 0, length = getLength(array); + if (typeof idx == 'number') { + if (dir > 0) { + i = idx >= 0 ? idx : Math.max(idx + length, i); + } else { + length = idx >= 0 ? Math.min(idx + 1, length) : idx + length + 1; + } + } else if (sortedIndex && idx && length) { + idx = sortedIndex(array, item); + return array[idx] === item ? idx : -1; + } + if (item !== item) { + idx = predicateFind(slice.call(array, i, length), _.isNaN); + return idx >= 0 ? idx + i : -1; + } + for (idx = dir > 0 ? i : length - 1; idx >= 0 && idx < length; idx += dir) { + if (array[idx] === item) return idx; + } + return -1; + }; + } + + // Return the position of the first occurrence of an item in an array, + // or -1 if the item is not included in the array. + // If the array is large and already in sort order, pass `true` + // for **isSorted** to use binary search. + _.indexOf = createIndexFinder(1, _.findIndex, _.sortedIndex); + _.lastIndexOf = createIndexFinder(-1, _.findLastIndex); + + // Generate an integer Array containing an arithmetic progression. A port of + // the native Python `range()` function. See + // [the Python documentation](http://docs.python.org/library/functions.html#range). + _.range = function(start, stop, step) { + if (stop == null) { + stop = start || 0; + start = 0; + } + step = step || 1; + + var length = Math.max(Math.ceil((stop - start) / step), 0); + var range = Array(length); + + for (var idx = 0; idx < length; idx++, start += step) { + range[idx] = start; + } + + return range; + }; + + // Function (ahem) Functions + // ------------------ + + // Determines whether to execute a function as a constructor + // or a normal function with the provided arguments + var executeBound = function(sourceFunc, boundFunc, context, callingContext, args) { + if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args); + var self = baseCreate(sourceFunc.prototype); + var result = sourceFunc.apply(self, args); + if (_.isObject(result)) return result; + return self; + }; + + // Create a function bound to a given object (assigning `this`, and arguments, + // optionally). Delegates to **ECMAScript 5**'s native `Function.bind` if + // available. + _.bind = function(func, context) { + if (nativeBind && func.bind === nativeBind) return nativeBind.apply(func, slice.call(arguments, 1)); + if (!_.isFunction(func)) throw new TypeError('Bind must be called on a function'); + var args = slice.call(arguments, 2); + var bound = function() { + return executeBound(func, bound, context, this, args.concat(slice.call(arguments))); + }; + return bound; + }; + + // Partially apply a function by creating a version that has had some of its + // arguments pre-filled, without changing its dynamic `this` context. _ acts + // as a placeholder, allowing any combination of arguments to be pre-filled. + _.partial = function(func) { + var boundArgs = slice.call(arguments, 1); + var bound = function() { + var position = 0, length = boundArgs.length; + var args = Array(length); + for (var i = 0; i < length; i++) { + args[i] = boundArgs[i] === _ ? arguments[position++] : boundArgs[i]; + } + while (position < arguments.length) args.push(arguments[position++]); + return executeBound(func, bound, this, this, args); + }; + return bound; + }; + + // Bind a number of an object's methods to that object. Remaining arguments + // are the method names to be bound. Useful for ensuring that all callbacks + // defined on an object belong to it. + _.bindAll = function(obj) { + var i, length = arguments.length, key; + if (length <= 1) throw new Error('bindAll must be passed function names'); + for (i = 1; i < length; i++) { + key = arguments[i]; + obj[key] = _.bind(obj[key], obj); + } + return obj; + }; + + // Memoize an expensive function by storing its results. + _.memoize = function(func, hasher) { + var memoize = function(key) { + var cache = memoize.cache; + var address = '' + (hasher ? hasher.apply(this, arguments) : key); + if (!_.has(cache, address)) cache[address] = func.apply(this, arguments); + return cache[address]; + }; + memoize.cache = {}; + return memoize; + }; + + // Delays a function for the given number of milliseconds, and then calls + // it with the arguments supplied. + _.delay = function(func, wait) { + var args = slice.call(arguments, 2); + return setTimeout(function(){ + return func.apply(null, args); + }, wait); + }; + + // Defers a function, scheduling it to run after the current call stack has + // cleared. + _.defer = _.partial(_.delay, _, 1); + + // Returns a function, that, when invoked, will only be triggered at most once + // during a given window of time. Normally, the throttled function will run + // as much as it can, without ever going more than once per `wait` duration; + // but if you'd like to disable the execution on the leading edge, pass + // `{leading: false}`. To disable execution on the trailing edge, ditto. + _.throttle = function(func, wait, options) { + var context, args, result; + var timeout = null; + var previous = 0; + if (!options) options = {}; + var later = function() { + previous = options.leading === false ? 0 : _.now(); + timeout = null; + result = func.apply(context, args); + if (!timeout) context = args = null; + }; + return function() { + var now = _.now(); + if (!previous && options.leading === false) previous = now; + var remaining = wait - (now - previous); + context = this; + args = arguments; + if (remaining <= 0 || remaining > wait) { + if (timeout) { + clearTimeout(timeout); + timeout = null; + } + previous = now; + result = func.apply(context, args); + if (!timeout) context = args = null; + } else if (!timeout && options.trailing !== false) { + timeout = setTimeout(later, remaining); + } + return result; + }; + }; + + // Returns a function, that, as long as it continues to be invoked, will not + // be triggered. The function will be called after it stops being called for + // N milliseconds. If `immediate` is passed, trigger the function on the + // leading edge, instead of the trailing. + _.debounce = function(func, wait, immediate) { + var timeout, args, context, timestamp, result; + + var later = function() { + var last = _.now() - timestamp; + + if (last < wait && last >= 0) { + timeout = setTimeout(later, wait - last); + } else { + timeout = null; + if (!immediate) { + result = func.apply(context, args); + if (!timeout) context = args = null; + } + } + }; + + return function() { + context = this; + args = arguments; + timestamp = _.now(); + var callNow = immediate && !timeout; + if (!timeout) timeout = setTimeout(later, wait); + if (callNow) { + result = func.apply(context, args); + context = args = null; + } + + return result; + }; + }; + + // Returns the first function passed as an argument to the second, + // allowing you to adjust arguments, run code before and after, and + // conditionally execute the original function. + _.wrap = function(func, wrapper) { + return _.partial(wrapper, func); + }; + + // Returns a negated version of the passed-in predicate. + _.negate = function(predicate) { + return function() { + return !predicate.apply(this, arguments); + }; + }; + + // Returns a function that is the composition of a list of functions, each + // consuming the return value of the function that follows. + _.compose = function() { + var args = arguments; + var start = args.length - 1; + return function() { + var i = start; + var result = args[start].apply(this, arguments); + while (i--) result = args[i].call(this, result); + return result; + }; + }; + + // Returns a function that will only be executed on and after the Nth call. + _.after = function(times, func) { + return function() { + if (--times < 1) { + return func.apply(this, arguments); + } + }; + }; + + // Returns a function that will only be executed up to (but not including) the Nth call. + _.before = function(times, func) { + var memo; + return function() { + if (--times > 0) { + memo = func.apply(this, arguments); + } + if (times <= 1) func = null; + return memo; + }; + }; + + // Returns a function that will be executed at most one time, no matter how + // often you call it. Useful for lazy initialization. + _.once = _.partial(_.before, 2); + + // Object Functions + // ---------------- + + // Keys in IE < 9 that won't be iterated by `for key in ...` and thus missed. + var hasEnumBug = !{toString: null}.propertyIsEnumerable('toString'); + var nonEnumerableProps = ['valueOf', 'isPrototypeOf', 'toString', + 'propertyIsEnumerable', 'hasOwnProperty', 'toLocaleString']; + + function collectNonEnumProps(obj, keys) { + var nonEnumIdx = nonEnumerableProps.length; + var constructor = obj.constructor; + var proto = (_.isFunction(constructor) && constructor.prototype) || ObjProto; + + // Constructor is a special case. + var prop = 'constructor'; + if (_.has(obj, prop) && !_.contains(keys, prop)) keys.push(prop); + + while (nonEnumIdx--) { + prop = nonEnumerableProps[nonEnumIdx]; + if (prop in obj && obj[prop] !== proto[prop] && !_.contains(keys, prop)) { + keys.push(prop); + } + } + } + + // Retrieve the names of an object's own properties. + // Delegates to **ECMAScript 5**'s native `Object.keys` + _.keys = function(obj) { + if (!_.isObject(obj)) return []; + if (nativeKeys) return nativeKeys(obj); + var keys = []; + for (var key in obj) if (_.has(obj, key)) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + }; + + // Retrieve all the property names of an object. + _.allKeys = function(obj) { + if (!_.isObject(obj)) return []; + var keys = []; + for (var key in obj) keys.push(key); + // Ahem, IE < 9. + if (hasEnumBug) collectNonEnumProps(obj, keys); + return keys; + }; + + // Retrieve the values of an object's properties. + _.values = function(obj) { + var keys = _.keys(obj); + var length = keys.length; + var values = Array(length); + for (var i = 0; i < length; i++) { + values[i] = obj[keys[i]]; + } + return values; + }; + + // Returns the results of applying the iteratee to each element of the object + // In contrast to _.map it returns an object + _.mapObject = function(obj, iteratee, context) { + iteratee = cb(iteratee, context); + var keys = _.keys(obj), + length = keys.length, + results = {}, + currentKey; + for (var index = 0; index < length; index++) { + currentKey = keys[index]; + results[currentKey] = iteratee(obj[currentKey], currentKey, obj); + } + return results; + }; + + // Convert an object into a list of `[key, value]` pairs. + _.pairs = function(obj) { + var keys = _.keys(obj); + var length = keys.length; + var pairs = Array(length); + for (var i = 0; i < length; i++) { + pairs[i] = [keys[i], obj[keys[i]]]; + } + return pairs; + }; + + // Invert the keys and values of an object. The values must be serializable. + _.invert = function(obj) { + var result = {}; + var keys = _.keys(obj); + for (var i = 0, length = keys.length; i < length; i++) { + result[obj[keys[i]]] = keys[i]; + } + return result; + }; + + // Return a sorted list of the function names available on the object. + // Aliased as `methods` + _.functions = _.methods = function(obj) { + var names = []; + for (var key in obj) { + if (_.isFunction(obj[key])) names.push(key); + } + return names.sort(); + }; + + // Extend a given object with all the properties in passed-in object(s). + _.extend = createAssigner(_.allKeys); + + // Assigns a given object with all the own properties in the passed-in object(s) + // (https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object/assign) + _.extendOwn = _.assign = createAssigner(_.keys); + + // Returns the first key on an object that passes a predicate test + _.findKey = function(obj, predicate, context) { + predicate = cb(predicate, context); + var keys = _.keys(obj), key; + for (var i = 0, length = keys.length; i < length; i++) { + key = keys[i]; + if (predicate(obj[key], key, obj)) return key; + } + }; + + // Return a copy of the object only containing the whitelisted properties. + _.pick = function(object, oiteratee, context) { + var result = {}, obj = object, iteratee, keys; + if (obj == null) return result; + if (_.isFunction(oiteratee)) { + keys = _.allKeys(obj); + iteratee = optimizeCb(oiteratee, context); + } else { + keys = flatten(arguments, false, false, 1); + iteratee = function(value, key, obj) { return key in obj; }; + obj = Object(obj); + } + for (var i = 0, length = keys.length; i < length; i++) { + var key = keys[i]; + var value = obj[key]; + if (iteratee(value, key, obj)) result[key] = value; + } + return result; + }; + + // Return a copy of the object without the blacklisted properties. + _.omit = function(obj, iteratee, context) { + if (_.isFunction(iteratee)) { + iteratee = _.negate(iteratee); + } else { + var keys = _.map(flatten(arguments, false, false, 1), String); + iteratee = function(value, key) { + return !_.contains(keys, key); + }; + } + return _.pick(obj, iteratee, context); + }; + + // Fill in a given object with default properties. + _.defaults = createAssigner(_.allKeys, true); + + // Creates an object that inherits from the given prototype object. + // If additional properties are provided then they will be added to the + // created object. + _.create = function(prototype, props) { + var result = baseCreate(prototype); + if (props) _.extendOwn(result, props); + return result; + }; + + // Create a (shallow-cloned) duplicate of an object. + _.clone = function(obj) { + if (!_.isObject(obj)) return obj; + return _.isArray(obj) ? obj.slice() : _.extend({}, obj); + }; + + // Invokes interceptor with the obj, and then returns obj. + // The primary purpose of this method is to "tap into" a method chain, in + // order to perform operations on intermediate results within the chain. + _.tap = function(obj, interceptor) { + interceptor(obj); + return obj; + }; + + // Returns whether an object has a given set of `key:value` pairs. + _.isMatch = function(object, attrs) { + var keys = _.keys(attrs), length = keys.length; + if (object == null) return !length; + var obj = Object(object); + for (var i = 0; i < length; i++) { + var key = keys[i]; + if (attrs[key] !== obj[key] || !(key in obj)) return false; + } + return true; + }; + + + // Internal recursive comparison function for `isEqual`. + var eq = function(a, b, aStack, bStack) { + // Identical objects are equal. `0 === -0`, but they aren't identical. + // See the [Harmony `egal` proposal](http://wiki.ecmascript.org/doku.php?id=harmony:egal). + if (a === b) return a !== 0 || 1 / a === 1 / b; + // A strict comparison is necessary because `null == undefined`. + if (a == null || b == null) return a === b; + // Unwrap any wrapped objects. + if (a instanceof _) a = a._wrapped; + if (b instanceof _) b = b._wrapped; + // Compare `[[Class]]` names. + var className = toString.call(a); + if (className !== toString.call(b)) return false; + switch (className) { + // Strings, numbers, regular expressions, dates, and booleans are compared by value. + case '[object RegExp]': + // RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i') + case '[object String]': + // Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is + // equivalent to `new String("5")`. + return '' + a === '' + b; + case '[object Number]': + // `NaN`s are equivalent, but non-reflexive. + // Object(NaN) is equivalent to NaN + if (+a !== +a) return +b !== +b; + // An `egal` comparison is performed for other numeric values. + return +a === 0 ? 1 / +a === 1 / b : +a === +b; + case '[object Date]': + case '[object Boolean]': + // Coerce dates and booleans to numeric primitive values. Dates are compared by their + // millisecond representations. Note that invalid dates with millisecond representations + // of `NaN` are not equivalent. + return +a === +b; + } + + var areArrays = className === '[object Array]'; + if (!areArrays) { + if (typeof a != 'object' || typeof b != 'object') return false; + + // Objects with different constructors are not equivalent, but `Object`s or `Array`s + // from different frames are. + var aCtor = a.constructor, bCtor = b.constructor; + if (aCtor !== bCtor && !(_.isFunction(aCtor) && aCtor instanceof aCtor && + _.isFunction(bCtor) && bCtor instanceof bCtor) + && ('constructor' in a && 'constructor' in b)) { + return false; + } + } + // Assume equality for cyclic structures. The algorithm for detecting cyclic + // structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`. + + // Initializing stack of traversed objects. + // It's done here since we only need them for objects and arrays comparison. + aStack = aStack || []; + bStack = bStack || []; + var length = aStack.length; + while (length--) { + // Linear search. Performance is inversely proportional to the number of + // unique nested structures. + if (aStack[length] === a) return bStack[length] === b; + } + + // Add the first object to the stack of traversed objects. + aStack.push(a); + bStack.push(b); + + // Recursively compare objects and arrays. + if (areArrays) { + // Compare array lengths to determine if a deep comparison is necessary. + length = a.length; + if (length !== b.length) return false; + // Deep compare the contents, ignoring non-numeric properties. + while (length--) { + if (!eq(a[length], b[length], aStack, bStack)) return false; + } + } else { + // Deep compare objects. + var keys = _.keys(a), key; + length = keys.length; + // Ensure that both objects contain the same number of properties before comparing deep equality. + if (_.keys(b).length !== length) return false; + while (length--) { + // Deep compare each member + key = keys[length]; + if (!(_.has(b, key) && eq(a[key], b[key], aStack, bStack))) return false; + } + } + // Remove the first object from the stack of traversed objects. + aStack.pop(); + bStack.pop(); + return true; + }; + + // Perform a deep comparison to check if two objects are equal. + _.isEqual = function(a, b) { + return eq(a, b); + }; + + // Is a given array, string, or object empty? + // An "empty" object has no enumerable own-properties. + _.isEmpty = function(obj) { + if (obj == null) return true; + if (isArrayLike(obj) && (_.isArray(obj) || _.isString(obj) || _.isArguments(obj))) return obj.length === 0; + return _.keys(obj).length === 0; + }; + + // Is a given value a DOM element? + _.isElement = function(obj) { + return !!(obj && obj.nodeType === 1); + }; + + // Is a given value an array? + // Delegates to ECMA5's native Array.isArray + _.isArray = nativeIsArray || function(obj) { + return toString.call(obj) === '[object Array]'; + }; + + // Is a given variable an object? + _.isObject = function(obj) { + var type = typeof obj; + return type === 'function' || type === 'object' && !!obj; + }; + + // Add some isType methods: isArguments, isFunction, isString, isNumber, isDate, isRegExp, isError. + _.each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp', 'Error'], function(name) { + _['is' + name] = function(obj) { + return toString.call(obj) === '[object ' + name + ']'; + }; + }); + + // Define a fallback version of the method in browsers (ahem, IE < 9), where + // there isn't any inspectable "Arguments" type. + if (!_.isArguments(arguments)) { + _.isArguments = function(obj) { + return _.has(obj, 'callee'); + }; + } + + // Optimize `isFunction` if appropriate. Work around some typeof bugs in old v8, + // IE 11 (#1621), and in Safari 8 (#1929). + if (typeof /./ != 'function' && typeof Int8Array != 'object') { + _.isFunction = function(obj) { + return typeof obj == 'function' || false; + }; + } + + // Is a given object a finite number? + _.isFinite = function(obj) { + return isFinite(obj) && !isNaN(parseFloat(obj)); + }; + + // Is the given value `NaN`? (NaN is the only number which does not equal itself). + _.isNaN = function(obj) { + return _.isNumber(obj) && obj !== +obj; + }; + + // Is a given value a boolean? + _.isBoolean = function(obj) { + return obj === true || obj === false || toString.call(obj) === '[object Boolean]'; + }; + + // Is a given value equal to null? + _.isNull = function(obj) { + return obj === null; + }; + + // Is a given variable undefined? + _.isUndefined = function(obj) { + return obj === void 0; + }; + + // Shortcut function for checking if an object has a given property directly + // on itself (in other words, not on a prototype). + _.has = function(obj, key) { + return obj != null && hasOwnProperty.call(obj, key); + }; + + // Utility Functions + // ----------------- + + // Run Underscore.js in *noConflict* mode, returning the `_` variable to its + // previous owner. Returns a reference to the Underscore object. + _.noConflict = function() { + root._ = previousUnderscore; + return this; + }; + + // Keep the identity function around for default iteratees. + _.identity = function(value) { + return value; + }; + + // Predicate-generating functions. Often useful outside of Underscore. + _.constant = function(value) { + return function() { + return value; + }; + }; + + _.noop = function(){}; + + _.property = property; + + // Generates a function for a given object that returns a given property. + _.propertyOf = function(obj) { + return obj == null ? function(){} : function(key) { + return obj[key]; + }; + }; + + // Returns a predicate for checking whether an object has a given set of + // `key:value` pairs. + _.matcher = _.matches = function(attrs) { + attrs = _.extendOwn({}, attrs); + return function(obj) { + return _.isMatch(obj, attrs); + }; + }; + + // Run a function **n** times. + _.times = function(n, iteratee, context) { + var accum = Array(Math.max(0, n)); + iteratee = optimizeCb(iteratee, context, 1); + for (var i = 0; i < n; i++) accum[i] = iteratee(i); + return accum; + }; + + // Return a random integer between min and max (inclusive). + _.random = function(min, max) { + if (max == null) { + max = min; + min = 0; + } + return min + Math.floor(Math.random() * (max - min + 1)); + }; + + // A (possibly faster) way to get the current timestamp as an integer. + _.now = Date.now || function() { + return new Date().getTime(); + }; + + // List of HTML entities for escaping. + var escapeMap = { + '&': '&', + '<': '<', + '>': '>', + '"': '"', + "'": ''', + '`': '`' + }; + var unescapeMap = _.invert(escapeMap); + + // Functions for escaping and unescaping strings to/from HTML interpolation. + var createEscaper = function(map) { + var escaper = function(match) { + return map[match]; + }; + // Regexes for identifying a key that needs to be escaped + var source = '(?:' + _.keys(map).join('|') + ')'; + var testRegexp = RegExp(source); + var replaceRegexp = RegExp(source, 'g'); + return function(string) { + string = string == null ? '' : '' + string; + return testRegexp.test(string) ? string.replace(replaceRegexp, escaper) : string; + }; + }; + _.escape = createEscaper(escapeMap); + _.unescape = createEscaper(unescapeMap); + + // If the value of the named `property` is a function then invoke it with the + // `object` as context; otherwise, return it. + _.result = function(object, property, fallback) { + var value = object == null ? void 0 : object[property]; + if (value === void 0) { + value = fallback; + } + return _.isFunction(value) ? value.call(object) : value; + }; + + // Generate a unique integer id (unique within the entire client session). + // Useful for temporary DOM ids. + var idCounter = 0; + _.uniqueId = function(prefix) { + var id = ++idCounter + ''; + return prefix ? prefix + id : id; + }; + + // By default, Underscore uses ERB-style template delimiters, change the + // following template settings to use alternative delimiters. + _.templateSettings = { + evaluate : /<%([\s\S]+?)%>/g, + interpolate : /<%=([\s\S]+?)%>/g, + escape : /<%-([\s\S]+?)%>/g + }; + + // When customizing `templateSettings`, if you don't want to define an + // interpolation, evaluation or escaping regex, we need one that is + // guaranteed not to match. + var noMatch = /(.)^/; + + // Certain characters need to be escaped so that they can be put into a + // string literal. + var escapes = { + "'": "'", + '\\': '\\', + '\r': 'r', + '\n': 'n', + '\u2028': 'u2028', + '\u2029': 'u2029' + }; + + var escaper = /\\|'|\r|\n|\u2028|\u2029/g; + + var escapeChar = function(match) { + return '\\' + escapes[match]; + }; + + // JavaScript micro-templating, similar to John Resig's implementation. + // Underscore templating handles arbitrary delimiters, preserves whitespace, + // and correctly escapes quotes within interpolated code. + // NB: `oldSettings` only exists for backwards compatibility. + _.template = function(text, settings, oldSettings) { + if (!settings && oldSettings) settings = oldSettings; + settings = _.defaults({}, settings, _.templateSettings); + + // Combine delimiters into one regular expression via alternation. + var matcher = RegExp([ + (settings.escape || noMatch).source, + (settings.interpolate || noMatch).source, + (settings.evaluate || noMatch).source + ].join('|') + '|$', 'g'); + + // Compile the template source, escaping string literals appropriately. + var index = 0; + var source = "__p+='"; + text.replace(matcher, function(match, escape, interpolate, evaluate, offset) { + source += text.slice(index, offset).replace(escaper, escapeChar); + index = offset + match.length; + + if (escape) { + source += "'+\n((__t=(" + escape + "))==null?'':_.escape(__t))+\n'"; + } else if (interpolate) { + source += "'+\n((__t=(" + interpolate + "))==null?'':__t)+\n'"; + } else if (evaluate) { + source += "';\n" + evaluate + "\n__p+='"; + } + + // Adobe VMs need the match returned to produce the correct offest. + return match; + }); + source += "';\n"; + + // If a variable is not specified, place data values in local scope. + if (!settings.variable) source = 'with(obj||{}){\n' + source + '}\n'; + + source = "var __t,__p='',__j=Array.prototype.join," + + "print=function(){__p+=__j.call(arguments,'');};\n" + + source + 'return __p;\n'; + + try { + var render = new Function(settings.variable || 'obj', '_', source); + } catch (e) { + e.source = source; + throw e; + } + + var template = function(data) { + return render.call(this, data, _); + }; + + // Provide the compiled source as a convenience for precompilation. + var argument = settings.variable || 'obj'; + template.source = 'function(' + argument + '){\n' + source + '}'; + + return template; + }; + + // Add a "chain" function. Start chaining a wrapped Underscore object. + _.chain = function(obj) { + var instance = _(obj); + instance._chain = true; + return instance; + }; + + // OOP + // --------------- + // If Underscore is called as a function, it returns a wrapped object that + // can be used OO-style. This wrapper holds altered versions of all the + // underscore functions. Wrapped objects may be chained. + + // Helper function to continue chaining intermediate results. + var result = function(instance, obj) { + return instance._chain ? _(obj).chain() : obj; + }; + + // Add your own custom functions to the Underscore object. + _.mixin = function(obj) { + _.each(_.functions(obj), function(name) { + var func = _[name] = obj[name]; + _.prototype[name] = function() { + var args = [this._wrapped]; + push.apply(args, arguments); + return result(this, func.apply(_, args)); + }; + }); + }; + + // Add all of the Underscore functions to the wrapper object. + _.mixin(_); + + // Add all mutator Array functions to the wrapper. + _.each(['pop', 'push', 'reverse', 'shift', 'sort', 'splice', 'unshift'], function(name) { + var method = ArrayProto[name]; + _.prototype[name] = function() { + var obj = this._wrapped; + method.apply(obj, arguments); + if ((name === 'shift' || name === 'splice') && obj.length === 0) delete obj[0]; + return result(this, obj); + }; + }); + + // Add all accessor Array functions to the wrapper. + _.each(['concat', 'join', 'slice'], function(name) { + var method = ArrayProto[name]; + _.prototype[name] = function() { + return result(this, method.apply(this._wrapped, arguments)); + }; + }); + + // Extracts the result from a wrapped and chained object. + _.prototype.value = function() { + return this._wrapped; + }; + + // Provide unwrapping proxy for some methods used in engine operations + // such as arithmetic and JSON stringification. + _.prototype.valueOf = _.prototype.toJSON = _.prototype.value; + + _.prototype.toString = function() { + return '' + this._wrapped; + }; + + // AMD registration happens at the end for compatibility with AMD loaders + // that may not enforce next-turn semantics on modules. Even though general + // practice for AMD registration is to be anonymous, underscore registers + // as a named module because, like jQuery, it is a base library that is + // popular enough to be bundled in a third party lib, but not be part of + // an AMD load request. Those cases could generate an error when an + // anonymous define() is called outside of a loader request. + if (typeof define === 'function' && define.amd) { + define('underscore', [], function() { + return _; + }); + } +}.call(this)); + +},{}],26:[function(require,module,exports){ +arguments[4][19][0].apply(exports,arguments) +},{"dup":19}],27:[function(require,module,exports){ +module.exports = function isBuffer(arg) { + return arg && typeof arg === 'object' + && typeof arg.copy === 'function' + && typeof arg.fill === 'function' + && typeof arg.readUInt8 === 'function'; +} +},{}],28:[function(require,module,exports){ +(function (process,global){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +var formatRegExp = /%[sdj%]/g; +exports.format = function(f) { + if (!isString(f)) { + var objects = []; + for (var i = 0; i < arguments.length; i++) { + objects.push(inspect(arguments[i])); + } + return objects.join(' '); + } + + var i = 1; + var args = arguments; + var len = args.length; + var str = String(f).replace(formatRegExp, function(x) { + if (x === '%%') return '%'; + if (i >= len) return x; + switch (x) { + case '%s': return String(args[i++]); + case '%d': return Number(args[i++]); + case '%j': + try { + return JSON.stringify(args[i++]); + } catch (_) { + return '[Circular]'; + } + default: + return x; + } + }); + for (var x = args[i]; i < len; x = args[++i]) { + if (isNull(x) || !isObject(x)) { + str += ' ' + x; + } else { + str += ' ' + inspect(x); + } + } + return str; +}; + + +// Mark that a method should not be used. +// Returns a modified function which warns once by default. +// If --no-deprecation is set, then it is a no-op. +exports.deprecate = function(fn, msg) { + // Allow for deprecating things in the process of starting up. + if (isUndefined(global.process)) { + return function() { + return exports.deprecate(fn, msg).apply(this, arguments); + }; + } + + if (process.noDeprecation === true) { + return fn; + } + + var warned = false; + function deprecated() { + if (!warned) { + if (process.throwDeprecation) { + throw new Error(msg); + } else if (process.traceDeprecation) { + console.trace(msg); + } else { + console.error(msg); + } + warned = true; + } + return fn.apply(this, arguments); + } + + return deprecated; +}; + + +var debugs = {}; +var debugEnviron; +exports.debuglog = function(set) { + if (isUndefined(debugEnviron)) + debugEnviron = process.env.NODE_DEBUG || ''; + set = set.toUpperCase(); + if (!debugs[set]) { + if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) { + var pid = process.pid; + debugs[set] = function() { + var msg = exports.format.apply(exports, arguments); + console.error('%s %d: %s', set, pid, msg); + }; + } else { + debugs[set] = function() {}; + } + } + return debugs[set]; +}; + + +/** + * Echos the value of a value. Trys to print the value out + * in the best way possible given the different types. + * + * @param {Object} obj The object to print out. + * @param {Object} opts Optional options object that alters the output. + */ +/* legacy: obj, showHidden, depth, colors*/ +function inspect(obj, opts) { + // default options + var ctx = { + seen: [], + stylize: stylizeNoColor + }; + // legacy... + if (arguments.length >= 3) ctx.depth = arguments[2]; + if (arguments.length >= 4) ctx.colors = arguments[3]; + if (isBoolean(opts)) { + // legacy... + ctx.showHidden = opts; + } else if (opts) { + // got an "options" object + exports._extend(ctx, opts); + } + // set default options + if (isUndefined(ctx.showHidden)) ctx.showHidden = false; + if (isUndefined(ctx.depth)) ctx.depth = 2; + if (isUndefined(ctx.colors)) ctx.colors = false; + if (isUndefined(ctx.customInspect)) ctx.customInspect = true; + if (ctx.colors) ctx.stylize = stylizeWithColor; + return formatValue(ctx, obj, ctx.depth); +} +exports.inspect = inspect; + + +// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics +inspect.colors = { + 'bold' : [1, 22], + 'italic' : [3, 23], + 'underline' : [4, 24], + 'inverse' : [7, 27], + 'white' : [37, 39], + 'grey' : [90, 39], + 'black' : [30, 39], + 'blue' : [34, 39], + 'cyan' : [36, 39], + 'green' : [32, 39], + 'magenta' : [35, 39], + 'red' : [31, 39], + 'yellow' : [33, 39] +}; + +// Don't use 'blue' not visible on cmd.exe +inspect.styles = { + 'special': 'cyan', + 'number': 'yellow', + 'boolean': 'yellow', + 'undefined': 'grey', + 'null': 'bold', + 'string': 'green', + 'date': 'magenta', + // "name": intentionally not styling + 'regexp': 'red' +}; + + +function stylizeWithColor(str, styleType) { + var style = inspect.styles[styleType]; + + if (style) { + return '\u001b[' + inspect.colors[style][0] + 'm' + str + + '\u001b[' + inspect.colors[style][1] + 'm'; + } else { + return str; + } +} + + +function stylizeNoColor(str, styleType) { + return str; +} + + +function arrayToHash(array) { + var hash = {}; + + array.forEach(function(val, idx) { + hash[val] = true; + }); + + return hash; +} + + +function formatValue(ctx, value, recurseTimes) { + // Provide a hook for user-specified inspect functions. + // Check that value is an object with an inspect function on it + if (ctx.customInspect && + value && + isFunction(value.inspect) && + // Filter out the util module, it's inspect function is special + value.inspect !== exports.inspect && + // Also filter out any prototype objects using the circular check. + !(value.constructor && value.constructor.prototype === value)) { + var ret = value.inspect(recurseTimes, ctx); + if (!isString(ret)) { + ret = formatValue(ctx, ret, recurseTimes); + } + return ret; + } + + // Primitive types cannot have properties + var primitive = formatPrimitive(ctx, value); + if (primitive) { + return primitive; + } + + // Look up the keys of the object. + var keys = Object.keys(value); + var visibleKeys = arrayToHash(keys); + + if (ctx.showHidden) { + keys = Object.getOwnPropertyNames(value); + } + + // IE doesn't make error fields non-enumerable + // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx + if (isError(value) + && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) { + return formatError(value); + } + + // Some type of object without properties can be shortcutted. + if (keys.length === 0) { + if (isFunction(value)) { + var name = value.name ? ': ' + value.name : ''; + return ctx.stylize('[Function' + name + ']', 'special'); + } + if (isRegExp(value)) { + return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); + } + if (isDate(value)) { + return ctx.stylize(Date.prototype.toString.call(value), 'date'); + } + if (isError(value)) { + return formatError(value); + } + } + + var base = '', array = false, braces = ['{', '}']; + + // Make Array say that they are Array + if (isArray(value)) { + array = true; + braces = ['[', ']']; + } + + // Make functions say that they are functions + if (isFunction(value)) { + var n = value.name ? ': ' + value.name : ''; + base = ' [Function' + n + ']'; + } + + // Make RegExps say that they are RegExps + if (isRegExp(value)) { + base = ' ' + RegExp.prototype.toString.call(value); + } + + // Make dates with properties first say the date + if (isDate(value)) { + base = ' ' + Date.prototype.toUTCString.call(value); + } + + // Make error with message first say the error + if (isError(value)) { + base = ' ' + formatError(value); + } + + if (keys.length === 0 && (!array || value.length == 0)) { + return braces[0] + base + braces[1]; + } + + if (recurseTimes < 0) { + if (isRegExp(value)) { + return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp'); + } else { + return ctx.stylize('[Object]', 'special'); + } + } + + ctx.seen.push(value); + + var output; + if (array) { + output = formatArray(ctx, value, recurseTimes, visibleKeys, keys); + } else { + output = keys.map(function(key) { + return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array); + }); + } + + ctx.seen.pop(); + + return reduceToSingleString(output, base, braces); +} + + +function formatPrimitive(ctx, value) { + if (isUndefined(value)) + return ctx.stylize('undefined', 'undefined'); + if (isString(value)) { + var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '') + .replace(/'/g, "\\'") + .replace(/\\"/g, '"') + '\''; + return ctx.stylize(simple, 'string'); + } + if (isNumber(value)) + return ctx.stylize('' + value, 'number'); + if (isBoolean(value)) + return ctx.stylize('' + value, 'boolean'); + // For some reason typeof null is "object", so special case here. + if (isNull(value)) + return ctx.stylize('null', 'null'); +} + + +function formatError(value) { + return '[' + Error.prototype.toString.call(value) + ']'; +} + + +function formatArray(ctx, value, recurseTimes, visibleKeys, keys) { + var output = []; + for (var i = 0, l = value.length; i < l; ++i) { + if (hasOwnProperty(value, String(i))) { + output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, + String(i), true)); + } else { + output.push(''); + } + } + keys.forEach(function(key) { + if (!key.match(/^\d+$/)) { + output.push(formatProperty(ctx, value, recurseTimes, visibleKeys, + key, true)); + } + }); + return output; +} + + +function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) { + var name, str, desc; + desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] }; + if (desc.get) { + if (desc.set) { + str = ctx.stylize('[Getter/Setter]', 'special'); + } else { + str = ctx.stylize('[Getter]', 'special'); + } + } else { + if (desc.set) { + str = ctx.stylize('[Setter]', 'special'); + } + } + if (!hasOwnProperty(visibleKeys, key)) { + name = '[' + key + ']'; + } + if (!str) { + if (ctx.seen.indexOf(desc.value) < 0) { + if (isNull(recurseTimes)) { + str = formatValue(ctx, desc.value, null); + } else { + str = formatValue(ctx, desc.value, recurseTimes - 1); + } + if (str.indexOf('\n') > -1) { + if (array) { + str = str.split('\n').map(function(line) { + return ' ' + line; + }).join('\n').substr(2); + } else { + str = '\n' + str.split('\n').map(function(line) { + return ' ' + line; + }).join('\n'); + } + } + } else { + str = ctx.stylize('[Circular]', 'special'); + } + } + if (isUndefined(name)) { + if (array && key.match(/^\d+$/)) { + return str; + } + name = JSON.stringify('' + key); + if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) { + name = name.substr(1, name.length - 2); + name = ctx.stylize(name, 'name'); + } else { + name = name.replace(/'/g, "\\'") + .replace(/\\"/g, '"') + .replace(/(^"|"$)/g, "'"); + name = ctx.stylize(name, 'string'); + } + } + + return name + ': ' + str; +} + + +function reduceToSingleString(output, base, braces) { + var numLinesEst = 0; + var length = output.reduce(function(prev, cur) { + numLinesEst++; + if (cur.indexOf('\n') >= 0) numLinesEst++; + return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1; + }, 0); + + if (length > 60) { + return braces[0] + + (base === '' ? '' : base + '\n ') + + ' ' + + output.join(',\n ') + + ' ' + + braces[1]; + } + + return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1]; +} + + +// NOTE: These type checking functions intentionally don't use `instanceof` +// because it is fragile and can be easily faked with `Object.create()`. +function isArray(ar) { + return Array.isArray(ar); +} +exports.isArray = isArray; + +function isBoolean(arg) { + return typeof arg === 'boolean'; +} +exports.isBoolean = isBoolean; + +function isNull(arg) { + return arg === null; +} +exports.isNull = isNull; + +function isNullOrUndefined(arg) { + return arg == null; +} +exports.isNullOrUndefined = isNullOrUndefined; + +function isNumber(arg) { + return typeof arg === 'number'; +} +exports.isNumber = isNumber; + +function isString(arg) { + return typeof arg === 'string'; +} +exports.isString = isString; + +function isSymbol(arg) { + return typeof arg === 'symbol'; +} +exports.isSymbol = isSymbol; + +function isUndefined(arg) { + return arg === void 0; +} +exports.isUndefined = isUndefined; + +function isRegExp(re) { + return isObject(re) && objectToString(re) === '[object RegExp]'; +} +exports.isRegExp = isRegExp; + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} +exports.isObject = isObject; + +function isDate(d) { + return isObject(d) && objectToString(d) === '[object Date]'; +} +exports.isDate = isDate; + +function isError(e) { + return isObject(e) && + (objectToString(e) === '[object Error]' || e instanceof Error); +} +exports.isError = isError; + +function isFunction(arg) { + return typeof arg === 'function'; +} +exports.isFunction = isFunction; + +function isPrimitive(arg) { + return arg === null || + typeof arg === 'boolean' || + typeof arg === 'number' || + typeof arg === 'string' || + typeof arg === 'symbol' || // ES6 symbol + typeof arg === 'undefined'; +} +exports.isPrimitive = isPrimitive; + +exports.isBuffer = require('./support/isBuffer'); + +function objectToString(o) { + return Object.prototype.toString.call(o); +} + + +function pad(n) { + return n < 10 ? '0' + n.toString(10) : n.toString(10); +} + + +var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', + 'Oct', 'Nov', 'Dec']; + +// 26 Feb 16:19:34 +function timestamp() { + var d = new Date(); + var time = [pad(d.getHours()), + pad(d.getMinutes()), + pad(d.getSeconds())].join(':'); + return [d.getDate(), months[d.getMonth()], time].join(' '); +} + + +// log is just a thin wrapper to console.log that prepends a timestamp +exports.log = function() { + console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments)); +}; + + +/** + * Inherit the prototype methods from one constructor into another. + * + * The Function.prototype.inherits from lang.js rewritten as a standalone + * function (not on Function.prototype). NOTE: If this file is to be loaded + * during bootstrapping this function needs to be rewritten using some native + * functions as prototype setup using normal JavaScript does not work as + * expected during bootstrapping (see mirror.js in r114903). + * + * @param {function} ctor Constructor function which needs to inherit the + * prototype. + * @param {function} superCtor Constructor function to inherit prototype from. + */ +exports.inherits = require('inherits'); + +exports._extend = function(origin, add) { + // Don't do anything if add isn't an object + if (!add || !isObject(add)) return origin; + + var keys = Object.keys(add); + var i = keys.length; + while (i--) { + origin[keys[i]] = add[keys[i]]; + } + return origin; +}; + +function hasOwnProperty(obj, prop) { + return Object.prototype.hasOwnProperty.call(obj, prop); +} + +}).call(this,require('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{"./support/isBuffer":27,"_process":24,"inherits":26}],29:[function(require,module,exports){ +// Returns a wrapper function that returns a wrapped callback +// The wrapper function should do some stuff, and return a +// presumably different callback function. +// This makes sure that own properties are retained, so that +// decorations and such are not lost along the way. +module.exports = wrappy +function wrappy (fn, cb) { + if (fn && cb) return wrappy(fn)(cb) + + if (typeof fn !== 'function') + throw new TypeError('need wrapper function') + + Object.keys(fn).forEach(function (k) { + wrapper[k] = fn[k] + }) + + return wrapper + + function wrapper() { + var args = new Array(arguments.length) + for (var i = 0; i < args.length; i++) { + args[i] = arguments[i] + } + var ret = fn.apply(this, args) + var cb = args[args.length-1] + if (typeof ret === 'function' && ret !== cb) { + Object.keys(cb).forEach(function (k) { + ret[k] = cb[k] + }) + } + return ret + } +} + +},{}]},{},[7])(7) +}); \ No newline at end of file diff --git a/1.0.X/assets/javascripts/workers/search.1e90e0fb.min.js b/1.0.X/assets/javascripts/workers/search.1e90e0fb.min.js new file mode 100755 index 0000000..ff43aed --- /dev/null +++ b/1.0.X/assets/javascripts/workers/search.1e90e0fb.min.js @@ -0,0 +1,2 @@ +"use strict";(()=>{var xe=Object.create;var G=Object.defineProperty,ve=Object.defineProperties,Se=Object.getOwnPropertyDescriptor,Te=Object.getOwnPropertyDescriptors,Qe=Object.getOwnPropertyNames,Y=Object.getOwnPropertySymbols,Ee=Object.getPrototypeOf,X=Object.prototype.hasOwnProperty,be=Object.prototype.propertyIsEnumerable;var Z=Math.pow,J=(t,e,r)=>e in t?G(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,_=(t,e)=>{for(var r in e||(e={}))X.call(e,r)&&J(t,r,e[r]);if(Y)for(var r of Y(e))be.call(e,r)&&J(t,r,e[r]);return t},B=(t,e)=>ve(t,Te(e));var Le=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var we=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Qe(e))!X.call(t,i)&&i!==r&&G(t,i,{get:()=>e[i],enumerable:!(n=Se(e,i))||n.enumerable});return t};var Pe=(t,e,r)=>(r=t!=null?xe(Ee(t)):{},we(e||!t||!t.__esModule?G(r,"default",{value:t,enumerable:!0}):r,t));var W=(t,e,r)=>new Promise((n,i)=>{var s=u=>{try{a(r.next(u))}catch(c){i(c)}},o=u=>{try{a(r.throw(u))}catch(c){i(c)}},a=u=>u.done?n(u.value):Promise.resolve(u.value).then(s,o);a((r=r.apply(t,e)).next())});var te=Le((K,ee)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var f=t.utils.clone(r)||{};f.position=[a,c],f.index=s.length,s.push(new t.Token(n.slice(a,o),f))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(ou?f+=2:a==u&&(r+=n[c+1]*i[f+1],c+=2,f+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new t.TokenSet;s.node.edges["*"]=u}if(s.str.length==0&&(u.final=!0),i.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}s.str.length==1&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var f=s.str.charAt(0),g=s.str.charAt(1),l;g in s.node.edges?l=s.node.edges[g]:(l=new t.TokenSet,s.node.edges[g]=l),s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:f+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof K=="object"?ee.exports=r():e.lunr=r()}(this,function(){return t})})()});var de=Pe(te());function re(t,e=document){let r=ke(t,e);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${t}" to be present`);return r}function ke(t,e=document){return e.querySelector(t)||void 0}Object.entries||(Object.entries=function(t){let e=[];for(let r of Object.keys(t))e.push([r,t[r]]);return e});Object.values||(Object.values=function(t){let e=[];for(let r of Object.keys(t))e.push(t[r]);return e});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(t,e){typeof t=="object"?(this.scrollLeft=t.left,this.scrollTop=t.top):(this.scrollLeft=t,this.scrollTop=e)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...t){let e=this.parentNode;if(e){t.length===0&&e.removeChild(this);for(let r=t.length-1;r>=0;r--){let n=t[r];typeof n=="string"?n=document.createTextNode(n):n.parentNode&&n.parentNode.removeChild(n),r?e.insertBefore(this.previousSibling,n):e.replaceChild(n,this)}}}));function ne(t){let e=new Map;for(let r of t){let[n]=r.location.split("#"),i=e.get(n);typeof i=="undefined"?e.set(n,r):(e.set(r.location,r),r.parent=i)}return e}function H(t,e,r){var s;e=new RegExp(e,"g");let n,i=0;do{n=e.exec(t);let o=(s=n==null?void 0:n.index)!=null?s:t.length;if(in?e(r,1,n,n=i):t.charAt(i)===">"&&(t.charAt(n+1)==="/"?--s===0&&e(r++,2,n,i+1):t.charAt(i-1)!=="/"&&s++===0&&e(r,0,n,i+1),n=i+1);i>n&&e(r,1,n,i)}function se(t,e,r,n=!1){return q([t],e,r,n).pop()}function q(t,e,r,n=!1){let i=[0];for(let s=1;s>>2&1023,c=a[0]>>>12;i.push(+(u>c)+i[i.length-1])}return t.map((s,o)=>{let a=0,u=new Map;for(let f of r.sort((g,l)=>g-l)){let g=f&1048575,l=f>>>20;if(i[l]!==o)continue;let m=u.get(l);typeof m=="undefined"&&u.set(l,m=[]),m.push(g)}if(u.size===0)return s;let c=[];for(let[f,g]of u){let l=e[f],m=l[0]>>>12,x=l[l.length-1]>>>12,v=l[l.length-1]>>>2&1023;n&&m>a&&c.push(s.slice(a,m));let d=s.slice(m,x+v);for(let y of g.sort((b,E)=>E-b)){let b=(l[y]>>>12)-m,E=(l[y]>>>2&1023)+b;d=[d.slice(0,b),"",d.slice(b,E),"",d.slice(E)].join("")}if(a=x+v,c.push(d)===2)break}return n&&a{var f;switch(i[f=o+=s]||(i[f]=[]),a){case 0:case 2:i[o].push(u<<12|c-u<<2|a);break;case 1:let g=r[n].slice(u,c);H(g,lunr.tokenizer.separator,(l,m)=>{if(typeof lunr.segmenter!="undefined"){let x=g.slice(l,m);if(/^[MHIK]$/.test(lunr.segmenter.ctype_(x))){let v=lunr.segmenter.segment(x);for(let d=0,y=0;dr){return t.trim().split(/"([^"]+)"/g).map((r,n)=>n&1?r.replace(/^\b|^(?![^\x00-\x7F]|$)|\s+/g," +"):r).join("").replace(/"|(?:^|\s+)[*+\-:^~]+(?=\s+|$)/g,"").split(/\s+/g).reduce((r,n)=>{let i=e(n);return[...r,...Array.isArray(i)?i:[i]]},[]).map(r=>/([~^]$)/.test(r)?`${r}1`:r).map(r=>/(^[+-]|[~^]\d+$)/.test(r)?r:`${r}*`).join(" ")}function ue(t){return ae(t,e=>{let r=[],n=new lunr.QueryLexer(e);n.run();for(let{type:i,str:s,start:o,end:a}of n.lexemes)switch(i){case"FIELD":["title","text","tags"].includes(s)||(e=[e.slice(0,a)," ",e.slice(a+1)].join(""));break;case"TERM":H(s,lunr.tokenizer.separator,(...u)=>{r.push([e.slice(0,o),s.slice(...u),e.slice(a)].join(""))})}return r})}function ce(t){let e=new lunr.Query(["title","text","tags"]);new lunr.QueryParser(t,e).parse();for(let n of e.clauses)n.usePipeline=!0,n.term.startsWith("*")&&(n.wildcard=lunr.Query.wildcard.LEADING,n.term=n.term.slice(1)),n.term.endsWith("*")&&(n.wildcard=lunr.Query.wildcard.TRAILING,n.term=n.term.slice(0,-1));return e.clauses}function le(t,e){var i;let r=new Set(t),n={};for(let s=0;s0;){let o=i[--s];for(let u=1;un[o]-u&&(r.add(t.slice(o,o+u)),i[s++]=o+u);let a=o+n[o];n[a]&&ar=>{if(typeof r[e]=="undefined")return;let n=[r.location,e].join(":");return t.set(n,lunr.tokenizer.table=[]),r[e]}}function Re(t,e){let[r,n]=[new Set(t),new Set(e)];return[...new Set([...r].filter(i=>!n.has(i)))]}var U=class{constructor({config:e,docs:r,options:n}){let i=Oe(this.table=new Map);this.map=ne(r),this.options=n,this.index=lunr(function(){this.metadataWhitelist=["position"],this.b(0),e.lang.length===1&&e.lang[0]!=="en"?this.use(lunr[e.lang[0]]):e.lang.length>1&&this.use(lunr.multiLanguage(...e.lang)),this.tokenizer=oe,lunr.tokenizer.separator=new RegExp(e.separator),lunr.segmenter="TinySegmenter"in lunr?new lunr.TinySegmenter:void 0;let s=Re(["trimmer","stopWordFilter","stemmer"],e.pipeline);for(let o of e.lang.map(a=>a==="en"?lunr:lunr[a]))for(let a of s)this.pipeline.remove(o[a]),this.searchPipeline.remove(o[a]);this.ref("location");for(let[o,a]of Object.entries(e.fields))this.field(o,B(_({},a),{extractor:i(o)}));for(let o of r)this.add(o,{boost:o.boost})})}search(e){if(e=e.replace(new RegExp("\\p{sc=Han}+","gu"),s=>[...he(s,this.index.invertedIndex)].join("* ")),e=ue(e),!e)return{items:[]};let r=ce(e).filter(s=>s.presence!==lunr.Query.presence.PROHIBITED),n=this.index.search(e).reduce((s,{ref:o,score:a,matchData:u})=>{let c=this.map.get(o);if(typeof c!="undefined"){c=_({},c),c.tags&&(c.tags=[...c.tags]);let f=le(r,Object.keys(u.metadata));for(let l of this.index.fields){if(typeof c[l]=="undefined")continue;let m=[];for(let d of Object.values(u.metadata))typeof d[l]!="undefined"&&m.push(...d[l].position);if(!m.length)continue;let x=this.table.get([c.location,l].join(":")),v=Array.isArray(c[l])?q:se;c[l]=v(c[l],x,m,l!=="text")}let g=+!c.parent+Object.values(f).filter(l=>l).length/Object.keys(f).length;s.push(B(_({},c),{score:a*(1+Z(g,2)),terms:f}))}return s},[]).sort((s,o)=>o.score-s.score).reduce((s,o)=>{let a=this.map.get(o.location);if(typeof a!="undefined"){let u=a.parent?a.parent.location:a.location;s.set(u,[...s.get(u)||[],o])}return s},new Map);for(let[s,o]of n)if(!o.find(a=>a.location===s)){let a=this.map.get(s);o.push(B(_({},a),{score:0,terms:{}}))}let i;if(this.options.suggest){let s=this.index.query(o=>{for(let a of r)o.term(a.term,{fields:["title"],presence:lunr.Query.presence.REQUIRED,wildcard:lunr.Query.wildcard.TRAILING})});i=s.length?Object.keys(s[0].matchData.metadata):[]}return _({items:[...n.values()]},typeof i!="undefined"&&{suggest:i})}};var fe;function Ie(t){return W(this,null,function*(){let e="../lunr";if(typeof parent!="undefined"&&"IFrameWorker"in parent){let n=re("script[src]"),[i]=n.src.split("/worker");e=e.replace("..",i)}let r=[];for(let n of t.lang){switch(n){case"ja":r.push(`${e}/tinyseg.js`);break;case"hi":case"th":r.push(`${e}/wordcut.js`);break}n!=="en"&&r.push(`${e}/min/lunr.${n}.min.js`)}t.lang.length>1&&r.push(`${e}/min/lunr.multi.min.js`),r.length&&(yield importScripts(`${e}/min/lunr.stemmer.support.min.js`,...r))})}function Fe(t){return W(this,null,function*(){switch(t.type){case 0:return yield Ie(t.data.config),fe=new U(t.data),{type:1};case 2:let e=t.data;try{return{type:3,data:fe.search(e)}}catch(r){return console.warn(`Invalid query: ${e} \u2013 see https://bit.ly/2s3ChXG`),console.warn(r),{type:3,data:{items:[]}}}default:throw new TypeError("Invalid message type")}})}self.lunr=de.default;addEventListener("message",t=>W(void 0,null,function*(){postMessage(yield Fe(t.data))}));})(); diff --git a/1.0.X/assets/logo.png b/1.0.X/assets/logo.png new file mode 100755 index 0000000000000000000000000000000000000000..b50609b795192097d99bcf86b8c7801be1c2f8d4 GIT binary patch literal 6919 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 OOS+my56d+iBK`*~K!ipB literal 0 HcmV?d00001 diff --git a/1.0.X/assets/stylesheets/glightbox.min.css b/1.0.X/assets/stylesheets/glightbox.min.css new file mode 100755 index 0000000..3c9ff87 --- /dev/null +++ b/1.0.X/assets/stylesheets/glightbox.min.css @@ -0,0 +1 @@ +.glightbox-container{width:100%;height:100%;position:fixed;top:0;left:0;z-index:999999!important;overflow:hidden;-ms-touch-action:none;touch-action:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;outline:0}.glightbox-container.inactive{display:none}.glightbox-container .gcontainer{position:relative;width:100%;height:100%;z-index:9999;overflow:hidden}.glightbox-container .gslider{-webkit-transition:-webkit-transform .4s ease;transition:-webkit-transform .4s ease;transition:transform .4s ease;transition:transform .4s ease,-webkit-transform .4s ease;height:100%;left:0;top:0;width:100%;position:relative;overflow:hidden;display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.glightbox-container .gslide{width:100%;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;opacity:0}.glightbox-container .gslide.current{opacity:1;z-index:99999;position:relative}.glightbox-container .gslide.prev{opacity:1;z-index:9999}.glightbox-container .gslide-inner-content{width:100%}.glightbox-container .ginner-container{position:relative;width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;margin:auto;height:100vh}.glightbox-container .ginner-container.gvideo-container{width:100%}.glightbox-container .ginner-container.desc-bottom,.glightbox-container .ginner-container.desc-top{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.glightbox-container .ginner-container.desc-left,.glightbox-container .ginner-container.desc-right{max-width:100%!important}.gslide iframe,.gslide video{outline:0!important;border:none;min-height:165px;-webkit-overflow-scrolling:touch;-ms-touch-action:auto;touch-action:auto}.gslide:not(.current){pointer-events:none}.gslide-image{-webkit-box-align:center;-ms-flex-align:center;align-items:center}.gslide-image img{max-height:100vh;display:block;padding:0;float:none;outline:0;border:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-width:100vw;width:auto;height:auto;-o-object-fit:cover;object-fit:cover;-ms-touch-action:none;touch-action:none;margin:auto;min-width:200px}.desc-bottom .gslide-image img,.desc-top .gslide-image img{width:auto}.desc-left .gslide-image img,.desc-right .gslide-image img{width:auto;max-width:100%}.gslide-image img.zoomable{position:relative}.gslide-image img.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.gslide-video{position:relative;max-width:100vh;width:100%!important}.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster{display:none}.gslide-video .gvideo-wrapper{width:100%;margin:auto}.gslide-video::before{content:'';position:absolute;width:100%;height:100%;background:rgba(255,0,0,.34);display:none}.gslide-video.playing::before{display:none}.gslide-video.fullscreen{max-width:100%!important;min-width:100%;height:75vh}.gslide-video.fullscreen video{max-width:100%!important;width:100%!important}.gslide-inline{background:#fff;text-align:left;max-height:calc(100vh - 40px);overflow:auto;max-width:100%;margin:auto}.gslide-inline .ginlined-content{padding:20px;width:100%}.gslide-inline .dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;-webkit-transition:none;transition:none}.ginlined-content{overflow:auto;display:block!important;opacity:1}.gslide-external{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%;min-width:100%;background:#fff;padding:0;overflow:auto;max-height:75vh;height:100%}.gslide-media{display:-webkit-box;display:-ms-flexbox;display:flex;width:auto}.zoomed .gslide-media{-webkit-box-shadow:none!important;box-shadow:none!important}.desc-bottom .gslide-media,.desc-top .gslide-media{margin:0 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gslide-description{position:relative;-webkit-box-flex:1;-ms-flex:1 0 100%;flex:1 0 100%}.gslide-description.description-left,.gslide-description.description-right{max-width:100%}.gslide-description.description-bottom,.gslide-description.description-top{margin:0 auto;width:100%}.gslide-description p{margin-bottom:12px}.gslide-description p:last-child{margin-bottom:0}.zoomed .gslide-description{display:none}.glightbox-button-hidden{display:none}.glightbox-mobile .glightbox-container .gslide-description{height:auto!important;width:100%;position:absolute;bottom:0;padding:19px 11px;max-width:100vw!important;-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important;max-height:78vh;overflow:auto!important;background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);-webkit-transition:opacity .3s linear;transition:opacity .3s linear;padding-bottom:50px}.glightbox-mobile .glightbox-container .gslide-title{color:#fff;font-size:1em}.glightbox-mobile .glightbox-container .gslide-desc{color:#a1a1a1}.glightbox-mobile .glightbox-container .gslide-desc a{color:#fff;font-weight:700}.glightbox-mobile .glightbox-container .gslide-desc *{color:inherit}.glightbox-mobile .glightbox-container .gslide-desc .desc-more{color:#fff;opacity:.4}.gdesc-open .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:.4}.gdesc-open .gdesc-inner{padding-bottom:30px}.gdesc-closed .gslide-media{-webkit-transition:opacity .5s ease;transition:opacity .5s ease;opacity:1}.greset{-webkit-transition:all .3s ease;transition:all .3s ease}.gabsolute{position:absolute}.grelative{position:relative}.glightbox-desc{display:none!important}.glightbox-open{overflow:hidden}.gloader{height:25px;width:25px;-webkit-animation:lightboxLoader .8s infinite linear;animation:lightboxLoader .8s infinite linear;border:2px solid #fff;border-right-color:transparent;border-radius:50%;position:absolute;display:block;z-index:9999;left:0;right:0;margin:0 auto;top:47%}.goverlay{width:100%;height:calc(100vh + 1px);position:fixed;top:-1px;left:0;background:#000;will-change:opacity}.glightbox-mobile .goverlay{background:#000}.gclose,.gnext,.gprev{z-index:99999;cursor:pointer;width:26px;height:44px;border:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.gclose svg,.gnext svg,.gprev svg{display:block;width:25px;height:auto;margin:0;padding:0}.gclose.disabled,.gnext.disabled,.gprev.disabled{opacity:.1}.gclose .garrow,.gnext .garrow,.gprev .garrow{stroke:#fff}.gbtn.focused{outline:2px solid #0f3d81}iframe.wait-autoplay{opacity:0}.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev{opacity:0!important}.glightbox-clean .gslide-description{background:#fff}.glightbox-clean .gdesc-inner{padding:22px 20px}.glightbox-clean .gslide-title{font-size:1em;font-weight:400;font-family:arial;color:#000;margin-bottom:19px;line-height:1.4em}.glightbox-clean .gslide-desc{font-size:.86em;margin-bottom:0;font-family:arial;line-height:1.4em}.glightbox-clean .gslide-video{background:#000}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.75);border-radius:4px}.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path{fill:#fff}.glightbox-clean .gprev{position:absolute;top:-100%;left:30px;width:40px;height:50px}.glightbox-clean .gnext{position:absolute;top:-100%;right:30px;width:40px;height:50px}.glightbox-clean .gclose{width:35px;height:35px;top:15px;right:10px;position:absolute}.glightbox-clean .gclose svg{width:18px;height:auto}.glightbox-clean .gclose:hover{opacity:1}.gfadeIn{-webkit-animation:gfadeIn .5s ease;animation:gfadeIn .5s ease}.gfadeOut{-webkit-animation:gfadeOut .5s ease;animation:gfadeOut .5s ease}.gslideOutLeft{-webkit-animation:gslideOutLeft .3s ease;animation:gslideOutLeft .3s ease}.gslideInLeft{-webkit-animation:gslideInLeft .3s ease;animation:gslideInLeft .3s ease}.gslideOutRight{-webkit-animation:gslideOutRight .3s ease;animation:gslideOutRight .3s ease}.gslideInRight{-webkit-animation:gslideInRight .3s ease;animation:gslideInRight .3s ease}.gzoomIn{-webkit-animation:gzoomIn .5s ease;animation:gzoomIn .5s ease}.gzoomOut{-webkit-animation:gzoomOut .5s ease;animation:gzoomOut .5s ease}@-webkit-keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes lightboxLoader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes gfadeIn{from{opacity:0}to{opacity:1}}@keyframes gfadeIn{from{opacity:0}to{opacity:1}}@-webkit-keyframes gfadeOut{from{opacity:1}to{opacity:0}}@keyframes gfadeOut{from{opacity:1}to{opacity:0}}@-webkit-keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInLeft{from{opacity:0;-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0)}to{visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@keyframes gslideOutLeft{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-60%,0,0);transform:translate3d(-60%,0,0);opacity:0;visibility:hidden}}@-webkit-keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@keyframes gslideInRight{from{opacity:0;visibility:visible;-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);opacity:1}}@-webkit-keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@keyframes gslideOutRight{from{opacity:1;visibility:visible;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(60%,0,0);transform:translate3d(60%,0,0);opacity:0}}@-webkit-keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@keyframes gzoomIn{from{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:1}}@-webkit-keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes gzoomOut{from{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@media (min-width:769px){.glightbox-container .ginner-container{width:auto;height:auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.glightbox-container .ginner-container.desc-top .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.glightbox-container .ginner-container.desc-left .gslide-description{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.glightbox-container .ginner-container.desc-left .gslide-image{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.gslide-image img{max-height:97vh;max-width:100%}.gslide-image img.zoomable{cursor:-webkit-zoom-in;cursor:zoom-in}.zoomed .gslide-image img.zoomable{cursor:-webkit-grab;cursor:grab}.gslide-inline{max-height:95vh}.gslide-external{max-height:100vh}.gslide-description.description-left,.gslide-description.description-right{max-width:275px}.glightbox-open{height:auto}.goverlay{background:rgba(0,0,0,.92)}.glightbox-clean .gslide-media{-webkit-box-shadow:1px 2px 9px 0 rgba(0,0,0,.65);box-shadow:1px 2px 9px 0 rgba(0,0,0,.65)}.glightbox-clean .description-left .gdesc-inner,.glightbox-clean .description-right .gdesc-inner{position:absolute;height:100%;overflow-y:auto}.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev{background-color:rgba(0,0,0,.32)}.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover{background-color:rgba(0,0,0,.7)}.glightbox-clean .gprev{top:45%}.glightbox-clean .gnext{top:45%}}@media (min-width:992px){.glightbox-clean .gclose{opacity:.7;right:20px}}@media screen and (max-height:420px){.goverlay{background:#000}} \ No newline at end of file diff --git a/1.0.X/assets/stylesheets/main.46e89654.min.css b/1.0.X/assets/stylesheets/main.46e89654.min.css new file mode 100755 index 0000000..6214277 --- /dev/null +++ b/1.0.X/assets/stylesheets/main.46e89654.min.css @@ -0,0 +1 @@ +@charset "UTF-8";html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;box-sizing:border-box}*,:after,:before{box-sizing:inherit}@media (prefers-reduced-motion){*,:after,:before{transition:none!important}}body{margin:0}a,button,input,label{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}hr{border:0;box-sizing:initial;display:block;height:.05rem;overflow:visible;padding:0}small{font-size:80%}sub,sup{line-height:1em}img{border-style:none}table{border-collapse:initial;border-spacing:0}td,th{font-weight:400;vertical-align:top}button{background:#0000;border:0;font-family:inherit;font-size:inherit;margin:0;padding:0}input{border:0;outline:none}:root{--md-primary-fg-color:#4051b5;--md-primary-fg-color--light:#5d6cc0;--md-primary-fg-color--dark:#303fa1;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-accent-fg-color:#526cfe;--md-accent-fg-color--transparent:#526cfe1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-scheme=default]{color-scheme:light}[data-md-color-scheme=default] img[src$="#gh-dark-mode-only"],[data-md-color-scheme=default] img[src$="#only-dark"]{display:none}:root,[data-md-color-scheme=default]{--md-hue:225deg;--md-default-fg-color:#000000de;--md-default-fg-color--light:#0000008a;--md-default-fg-color--lighter:#00000052;--md-default-fg-color--lightest:#00000012;--md-default-bg-color:#fff;--md-default-bg-color--light:#ffffffb3;--md-default-bg-color--lighter:#ffffff4d;--md-default-bg-color--lightest:#ffffff1f;--md-code-fg-color:#36464e;--md-code-bg-color:#f5f5f5;--md-code-bg-color--light:#f5f5f5b3;--md-code-bg-color--lighter:#f5f5f54d;--md-code-hl-color:#4287ff;--md-code-hl-color--light:#4287ff1a;--md-code-hl-number-color:#d52a2a;--md-code-hl-special-color:#db1457;--md-code-hl-function-color:#a846b9;--md-code-hl-constant-color:#6e59d9;--md-code-hl-keyword-color:#3f6ec6;--md-code-hl-string-color:#1c7d4d;--md-code-hl-name-color:var(--md-code-fg-color);--md-code-hl-operator-color:var(--md-default-fg-color--light);--md-code-hl-punctuation-color:var(--md-default-fg-color--light);--md-code-hl-comment-color:var(--md-default-fg-color--light);--md-code-hl-generic-color:var(--md-default-fg-color--light);--md-code-hl-variable-color:var(--md-default-fg-color--light);--md-typeset-color:var(--md-default-fg-color);--md-typeset-a-color:var(--md-primary-fg-color);--md-typeset-del-color:#f5503d26;--md-typeset-ins-color:#0bd57026;--md-typeset-kbd-color:#fafafa;--md-typeset-kbd-accent-color:#fff;--md-typeset-kbd-border-color:#b8b8b8;--md-typeset-mark-color:#ffff0080;--md-typeset-table-color:#0000001f;--md-typeset-table-color--light:rgba(0,0,0,.035);--md-admonition-fg-color:var(--md-default-fg-color);--md-admonition-bg-color:var(--md-default-bg-color);--md-warning-fg-color:#000000de;--md-warning-bg-color:#ff9;--md-footer-fg-color:#fff;--md-footer-fg-color--light:#ffffffb3;--md-footer-fg-color--lighter:#ffffff73;--md-footer-bg-color:#000000de;--md-footer-bg-color--dark:#00000052;--md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;--md-shadow-z2:0 0.2rem 0.5rem #0000001a,0 0 0.05rem #00000040;--md-shadow-z3:0 0.2rem 0.5rem #0003,0 0 0.05rem #00000059}.md-icon svg{fill:currentcolor;display:block;height:1.2rem;width:1.2rem}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--md-text-font-family:var(--md-text-font,_),-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;--md-code-font-family:var(--md-code-font,_),SFMono-Regular,Consolas,Menlo,monospace}aside,body,input{font-feature-settings:"kern","liga";color:var(--md-typeset-color);font-family:var(--md-text-font-family)}code,kbd,pre{font-feature-settings:"kern";font-family:var(--md-code-font-family)}:root{--md-typeset-table-sort-icon:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--asc:url('data:image/svg+xml;charset=utf-8,');--md-typeset-table-sort-icon--desc:url('data:image/svg+xml;charset=utf-8,')}.md-typeset{-webkit-print-color-adjust:exact;color-adjust:exact;font-size:.8rem;line-height:1.6}@media print{.md-typeset{font-size:.68rem}}.md-typeset blockquote,.md-typeset dl,.md-typeset figure,.md-typeset ol,.md-typeset pre,.md-typeset ul{margin-bottom:1em;margin-top:1em}.md-typeset h1{color:var(--md-default-fg-color--light);font-size:2em;line-height:1.3;margin:0 0 1.25em}.md-typeset h1,.md-typeset h2{font-weight:300;letter-spacing:-.01em}.md-typeset h2{font-size:1.5625em;line-height:1.4;margin:1.6em 0 .64em}.md-typeset h3{font-size:1.25em;font-weight:400;letter-spacing:-.01em;line-height:1.5;margin:1.6em 0 .8em}.md-typeset h2+h3{margin-top:.8em}.md-typeset h4{font-weight:700;letter-spacing:-.01em;margin:1em 0}.md-typeset h5,.md-typeset h6{color:var(--md-default-fg-color--light);font-size:.8em;font-weight:700;letter-spacing:-.01em;margin:1.25em 0}.md-typeset h5{text-transform:uppercase}.md-typeset hr{border-bottom:.05rem solid var(--md-default-fg-color--lightest);display:flow-root;margin:1.5em 0}.md-typeset a{color:var(--md-typeset-a-color);word-break:break-word}.md-typeset a,.md-typeset a:before{transition:color 125ms}.md-typeset a:focus,.md-typeset a:hover{color:var(--md-accent-fg-color)}.md-typeset a:focus code,.md-typeset a:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset a code{color:var(--md-typeset-a-color)}.md-typeset a.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset code,.md-typeset kbd,.md-typeset pre{color:var(--md-code-fg-color);direction:ltr;font-variant-ligatures:none;transition:background-color 125ms}@media print{.md-typeset code,.md-typeset kbd,.md-typeset pre{white-space:pre-wrap}}.md-typeset code{background-color:var(--md-code-bg-color);border-radius:.1rem;-webkit-box-decoration-break:clone;box-decoration-break:clone;font-size:.85em;padding:0 .2941176471em;transition:color 125ms,background-color 125ms;word-break:break-word}.md-typeset code:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-typeset pre{display:flow-root;line-height:1.4;position:relative}.md-typeset pre>code{-webkit-box-decoration-break:slice;box-decoration-break:slice;box-shadow:none;display:block;margin:0;outline-color:var(--md-accent-fg-color);overflow:auto;padding:.7720588235em 1.1764705882em;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:auto;word-break:normal}.md-typeset pre>code:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-typeset pre>code::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset pre>code::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset pre>code::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset kbd{background-color:var(--md-typeset-kbd-color);border-radius:.1rem;box-shadow:0 .1rem 0 .05rem var(--md-typeset-kbd-border-color),0 .1rem 0 var(--md-typeset-kbd-border-color),0 -.1rem .2rem var(--md-typeset-kbd-accent-color) inset;color:var(--md-default-fg-color);display:inline-block;font-size:.75em;padding:0 .6666666667em;vertical-align:text-top;word-break:break-word}.md-typeset mark{background-color:var(--md-typeset-mark-color);-webkit-box-decoration-break:clone;box-decoration-break:clone;color:inherit;word-break:break-word}.md-typeset abbr{cursor:help;text-decoration:none}.md-typeset [data-preview],.md-typeset abbr{border-bottom:.05rem dotted var(--md-default-fg-color--light)}.md-typeset small{opacity:.75}[dir=ltr] .md-typeset sub,[dir=ltr] .md-typeset sup{margin-left:.078125em}[dir=rtl] .md-typeset sub,[dir=rtl] .md-typeset sup{margin-right:.078125em}[dir=ltr] .md-typeset blockquote{padding-left:.6rem}[dir=rtl] .md-typeset blockquote{padding-right:.6rem}[dir=ltr] .md-typeset blockquote{border-left:.2rem solid var(--md-default-fg-color--lighter)}[dir=rtl] .md-typeset blockquote{border-right:.2rem solid var(--md-default-fg-color--lighter)}.md-typeset blockquote{color:var(--md-default-fg-color--light);margin-left:0;margin-right:0}.md-typeset ul{list-style-type:disc}[dir=ltr] .md-typeset ol,[dir=ltr] .md-typeset ul{margin-left:.625em}[dir=rtl] .md-typeset ol,[dir=rtl] .md-typeset ul{margin-right:.625em}.md-typeset ol,.md-typeset ul{padding:0}.md-typeset ol:not([hidden]),.md-typeset ul:not([hidden]){display:flow-root}.md-typeset ol ol,.md-typeset ul ol{list-style-type:lower-alpha}.md-typeset ol ol ol,.md-typeset ul ol ol{list-style-type:lower-roman}[dir=ltr] .md-typeset ol li,[dir=ltr] .md-typeset ul li{margin-left:1.25em}[dir=rtl] .md-typeset ol li,[dir=rtl] .md-typeset ul li{margin-right:1.25em}.md-typeset ol li,.md-typeset ul li{margin-bottom:.5em}.md-typeset ol li blockquote,.md-typeset ol li p,.md-typeset ul li blockquote,.md-typeset ul li p{margin:.5em 0}.md-typeset ol li:last-child,.md-typeset ul li:last-child{margin-bottom:0}[dir=ltr] .md-typeset ol li ol,[dir=ltr] .md-typeset ol li ul,[dir=ltr] .md-typeset ul li ol,[dir=ltr] .md-typeset ul li ul{margin-left:.625em}[dir=rtl] .md-typeset ol li ol,[dir=rtl] .md-typeset ol li ul,[dir=rtl] .md-typeset ul li ol,[dir=rtl] .md-typeset ul li ul{margin-right:.625em}.md-typeset ol li ol,.md-typeset ol li ul,.md-typeset ul li ol,.md-typeset ul li ul{margin-bottom:.5em;margin-top:.5em}[dir=ltr] .md-typeset dd{margin-left:1.875em}[dir=rtl] .md-typeset dd{margin-right:1.875em}.md-typeset dd{margin-bottom:1.5em;margin-top:1em}.md-typeset img,.md-typeset svg,.md-typeset video{height:auto;max-width:100%}.md-typeset img[align=left]{margin:1em 1em 1em 0}.md-typeset img[align=right]{margin:1em 0 1em 1em}.md-typeset img[align]:only-child{margin-top:0}.md-typeset figure{display:flow-root;margin:1em auto;max-width:100%;text-align:center;width:-moz-fit-content;width:fit-content}.md-typeset figure img{display:block;margin:0 auto}.md-typeset figcaption{font-style:italic;margin:1em auto;max-width:24rem}.md-typeset iframe{max-width:100%}.md-typeset table:not([class]){background-color:var(--md-default-bg-color);border:.05rem solid var(--md-typeset-table-color);border-radius:.1rem;display:inline-block;font-size:.64rem;max-width:100%;overflow:auto;touch-action:auto}@media print{.md-typeset table:not([class]){display:table}}.md-typeset table:not([class])+*{margin-top:1.5em}.md-typeset table:not([class]) td>:first-child,.md-typeset table:not([class]) th>:first-child{margin-top:0}.md-typeset table:not([class]) td>:last-child,.md-typeset table:not([class]) th>:last-child{margin-bottom:0}.md-typeset table:not([class]) td:not([align]),.md-typeset table:not([class]) th:not([align]){text-align:left}[dir=rtl] .md-typeset table:not([class]) td:not([align]),[dir=rtl] .md-typeset table:not([class]) th:not([align]){text-align:right}.md-typeset table:not([class]) th{font-weight:700;min-width:5rem;padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) td{border-top:.05rem solid var(--md-typeset-table-color);padding:.9375em 1.25em;vertical-align:top}.md-typeset table:not([class]) tbody tr{transition:background-color 125ms}.md-typeset table:not([class]) tbody tr:hover{background-color:var(--md-typeset-table-color--light);box-shadow:0 .05rem 0 var(--md-default-bg-color) inset}.md-typeset table:not([class]) a{word-break:normal}.md-typeset table th[role=columnheader]{cursor:pointer}[dir=ltr] .md-typeset table th[role=columnheader]:after{margin-left:.5em}[dir=rtl] .md-typeset table th[role=columnheader]:after{margin-right:.5em}.md-typeset table th[role=columnheader]:after{content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-typeset-table-sort-icon);mask-image:var(--md-typeset-table-sort-icon);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset table th[role=columnheader]:hover:after{background-color:var(--md-default-fg-color--lighter)}.md-typeset table th[role=columnheader][aria-sort=ascending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--asc);mask-image:var(--md-typeset-table-sort-icon--asc)}.md-typeset table th[role=columnheader][aria-sort=descending]:after{background-color:var(--md-default-fg-color--light);-webkit-mask-image:var(--md-typeset-table-sort-icon--desc);mask-image:var(--md-typeset-table-sort-icon--desc)}.md-typeset__scrollwrap{margin:1em -.8rem;overflow-x:auto;touch-action:auto}.md-typeset__table{display:inline-block;margin-bottom:.5em;padding:0 .8rem}@media print{.md-typeset__table{display:block}}html .md-typeset__table table{display:table;margin:0;overflow:hidden;width:100%}@media screen and (max-width:44.984375em){.md-content__inner>pre{margin:1em -.8rem}.md-content__inner>pre code{border-radius:0}}.md-typeset .md-author{border-radius:100%;display:block;flex-shrink:0;height:1.6rem;overflow:hidden;position:relative;transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .md-author img{display:block}.md-typeset .md-author--more{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .md-author--long{height:2.4rem;width:2.4rem}.md-typeset a.md-author{transform:scale(1)}.md-typeset a.md-author img{border-radius:100%;filter:grayscale(100%) opacity(75%);transition:filter 125ms}.md-typeset a.md-author:focus,.md-typeset a.md-author:hover{transform:scale(1.1);z-index:1}.md-typeset a.md-author:focus img,.md-typeset a.md-author:hover img{filter:grayscale(0)}.md-banner{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color);overflow:auto}@media print{.md-banner{display:none}}.md-banner--warning{background-color:var(--md-warning-bg-color);color:var(--md-warning-fg-color)}.md-banner__inner{font-size:.7rem;margin:.6rem auto;padding:0 .8rem}[dir=ltr] .md-banner__button{float:right}[dir=rtl] .md-banner__button{float:left}.md-banner__button{color:inherit;cursor:pointer;transition:opacity .25s}.no-js .md-banner__button{display:none}.md-banner__button:hover{opacity:.7}html{font-size:125%;height:100%;overflow-x:hidden}@media screen and (min-width:100em){html{font-size:137.5%}}@media screen and (min-width:125em){html{font-size:150%}}body{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;font-size:.5rem;min-height:100%;position:relative;width:100%}@media print{body{display:block}}@media screen and (max-width:59.984375em){body[data-md-scrolllock]{position:fixed}}.md-grid{margin-left:auto;margin-right:auto;max-width:61rem}.md-container{display:flex;flex-direction:column;flex-grow:1}@media print{.md-container{display:block}}.md-main{flex-grow:1}.md-main__inner{display:flex;height:100%;margin-top:1.5rem}.md-ellipsis{overflow:hidden;text-overflow:ellipsis}.md-toggle{display:none}.md-option{height:0;opacity:0;position:absolute;width:0}.md-option:checked+label:not([hidden]){display:block}.md-option.focus-visible+label{outline-color:var(--md-accent-fg-color);outline-style:auto}.md-skip{background-color:var(--md-default-fg-color);border-radius:.1rem;color:var(--md-default-bg-color);font-size:.64rem;margin:.5rem;opacity:0;outline-color:var(--md-accent-fg-color);padding:.3rem .5rem;position:fixed;transform:translateY(.4rem);z-index:-1}.md-skip:focus{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 175ms 75ms;z-index:10}@page{margin:25mm}:root{--md-clipboard-icon:url('data:image/svg+xml;charset=utf-8,')}.md-clipboard{border-radius:.1rem;color:var(--md-default-fg-color--lightest);cursor:pointer;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;transition:color .25s;width:1.5em;z-index:1}@media print{.md-clipboard{display:none}}.md-clipboard:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}:hover>.md-clipboard{color:var(--md-default-fg-color--light)}.md-clipboard:focus,.md-clipboard:hover{color:var(--md-accent-fg-color)}.md-clipboard:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-image:var(--md-clipboard-icon);mask-image:var(--md-clipboard-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-clipboard--inline{cursor:pointer}.md-clipboard--inline code{transition:color .25s,background-color .25s}.md-clipboard--inline:focus code,.md-clipboard--inline:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}:root{--md-code-select-icon:url('data:image/svg+xml;charset=utf-8,');--md-code-copy-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-code__content{display:grid}.md-code__nav{background-color:var(--md-code-bg-color--lighter);border-radius:.1rem;display:flex;gap:.2rem;padding:.2rem;position:absolute;right:.25em;top:.25em;transition:background-color .25s;z-index:1}:hover>.md-code__nav{background-color:var(--md-code-bg-color--light)}.md-code__button{color:var(--md-default-fg-color--lightest);cursor:pointer;display:block;height:1.5em;outline-color:var(--md-accent-fg-color);outline-offset:.1rem;transition:color .25s;width:1.5em}:hover>*>.md-code__button{color:var(--md-default-fg-color--light)}.md-code__button.focus-visible,.md-code__button:hover{color:var(--md-accent-fg-color)}.md-code__button--active{color:var(--md-default-fg-color)!important}.md-code__button:after{background-color:currentcolor;content:"";display:block;height:1.125em;margin:0 auto;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:1.125em}.md-code__button[data-md-type=select]:after{-webkit-mask-image:var(--md-code-select-icon);mask-image:var(--md-code-select-icon)}.md-code__button[data-md-type=copy]:after{-webkit-mask-image:var(--md-code-copy-icon);mask-image:var(--md-code-copy-icon)}@keyframes consent{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes overlay{0%{opacity:0}to{opacity:1}}.md-consent__overlay{animation:overlay .25s both;-webkit-backdrop-filter:blur(.1rem);backdrop-filter:blur(.1rem);background-color:#0000008a;height:100%;opacity:1;position:fixed;top:0;width:100%;z-index:5}.md-consent__inner{animation:consent .5s cubic-bezier(.1,.7,.1,1) both;background-color:var(--md-default-bg-color);border:0;border-radius:.1rem;bottom:0;box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;max-height:100%;overflow:auto;padding:0;position:fixed;width:100%;z-index:5}.md-consent__form{padding:.8rem}.md-consent__settings{display:none;margin:1em 0}input:checked+.md-consent__settings{display:block}.md-consent__controls{margin-bottom:.8rem}.md-typeset .md-consent__controls .md-button{display:inline}@media screen and (max-width:44.984375em){.md-typeset .md-consent__controls .md-button{display:block;margin-top:.4rem;text-align:center;width:100%}}.md-consent label{cursor:pointer}.md-content{flex-grow:1;min-width:0}.md-content__inner{margin:0 .8rem 1.2rem;padding-top:.6rem}@media screen and (min-width:76.25em){[dir=ltr] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}[dir=ltr] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner,[dir=rtl] .md-sidebar--primary:not([hidden])~.md-content>.md-content__inner{margin-right:1.2rem}[dir=rtl] .md-sidebar--secondary:not([hidden])~.md-content>.md-content__inner{margin-left:1.2rem}}.md-content__inner:before{content:"";display:block;height:.4rem}.md-content__inner>:last-child{margin-bottom:0}[dir=ltr] .md-content__button{float:right}[dir=rtl] .md-content__button{float:left}[dir=ltr] .md-content__button{margin-left:.4rem}[dir=rtl] .md-content__button{margin-right:.4rem}.md-content__button{margin:.4rem 0;padding:0}@media print{.md-content__button{display:none}}.md-typeset .md-content__button{color:var(--md-default-fg-color--lighter)}.md-content__button svg{display:inline;vertical-align:top}[dir=rtl] .md-content__button svg{transform:scaleX(-1)}[dir=ltr] .md-dialog{right:.8rem}[dir=rtl] .md-dialog{left:.8rem}.md-dialog{background-color:var(--md-default-fg-color);border-radius:.1rem;bottom:.8rem;box-shadow:var(--md-shadow-z3);min-width:11.1rem;opacity:0;padding:.4rem .6rem;pointer-events:none;position:fixed;transform:translateY(100%);transition:transform 0ms .4s,opacity .4s;z-index:4}@media print{.md-dialog{display:none}}.md-dialog--active{opacity:1;pointer-events:auto;transform:translateY(0);transition:transform .4s cubic-bezier(.075,.85,.175,1),opacity .4s}.md-dialog__inner{color:var(--md-default-bg-color);font-size:.7rem}.md-feedback{margin:2em 0 1em;text-align:center}.md-feedback fieldset{border:none;margin:0;padding:0}.md-feedback__title{font-weight:700;margin:1em auto}.md-feedback__inner{position:relative}.md-feedback__list{display:flex;flex-wrap:wrap;place-content:baseline center;position:relative}.md-feedback__list:hover .md-icon:not(:disabled){color:var(--md-default-fg-color--lighter)}:disabled .md-feedback__list{min-height:1.8rem}.md-feedback__icon{color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;margin:0 .1rem;transition:color 125ms}.md-feedback__icon:not(:disabled).md-icon:hover{color:var(--md-accent-fg-color)}.md-feedback__icon:disabled{color:var(--md-default-fg-color--lightest);pointer-events:none}.md-feedback__note{opacity:0;position:relative;transform:translateY(.4rem);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-feedback__note>*{margin:0 auto;max-width:16rem}:disabled .md-feedback__note{opacity:1;transform:translateY(0)}.md-footer{background-color:var(--md-footer-bg-color);color:var(--md-footer-fg-color)}@media print{.md-footer{display:none}}.md-footer__inner{justify-content:space-between;overflow:auto;padding:.2rem}.md-footer__inner:not([hidden]){display:flex}.md-footer__link{align-items:end;display:flex;flex-grow:0.01;margin-bottom:.4rem;margin-top:1rem;max-width:100%;outline-color:var(--md-accent-fg-color);overflow:hidden;transition:opacity .25s}.md-footer__link:focus,.md-footer__link:hover{opacity:.7}[dir=rtl] .md-footer__link svg{transform:scaleX(-1)}@media screen and (max-width:44.984375em){.md-footer__link--prev{flex-shrink:0}.md-footer__link--prev .md-footer__title{display:none}}[dir=ltr] .md-footer__link--next{margin-left:auto}[dir=rtl] .md-footer__link--next{margin-right:auto}.md-footer__link--next{text-align:right}[dir=rtl] .md-footer__link--next{text-align:left}.md-footer__title{flex-grow:1;font-size:.9rem;margin-bottom:.7rem;max-width:calc(100% - 2.4rem);padding:0 1rem;white-space:nowrap}.md-footer__button{margin:.2rem;padding:.4rem}.md-footer__direction{font-size:.64rem;opacity:.7}.md-footer-meta{background-color:var(--md-footer-bg-color--dark)}.md-footer-meta__inner{display:flex;flex-wrap:wrap;justify-content:space-between;padding:.2rem}html .md-footer-meta.md-typeset a{color:var(--md-footer-fg-color--light)}html .md-footer-meta.md-typeset a:focus,html .md-footer-meta.md-typeset a:hover{color:var(--md-footer-fg-color)}.md-copyright{color:var(--md-footer-fg-color--lighter);font-size:.64rem;margin:auto .6rem;padding:.4rem 0;width:100%}@media screen and (min-width:45em){.md-copyright{width:auto}}.md-copyright__highlight{color:var(--md-footer-fg-color--light)}.md-social{display:inline-flex;gap:.2rem;margin:0 .4rem;padding:.2rem 0 .6rem}@media screen and (min-width:45em){.md-social{padding:.6rem 0}}.md-social__link{display:inline-block;height:1.6rem;text-align:center;width:1.6rem}.md-social__link:before{line-height:1.9}.md-social__link svg{fill:currentcolor;max-height:.8rem;vertical-align:-25%}.md-typeset .md-button{border:.1rem solid;border-radius:.1rem;color:var(--md-primary-fg-color);cursor:pointer;display:inline-block;font-weight:700;padding:.625em 2em;transition:color 125ms,background-color 125ms,border-color 125ms}.md-typeset .md-button--primary{background-color:var(--md-primary-fg-color);border-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color)}.md-typeset .md-button:focus,.md-typeset .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[dir=ltr] .md-typeset .md-input{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .md-input,[dir=rtl] .md-typeset .md-input{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .md-input{border-top-left-radius:.1rem}.md-typeset .md-input{border-bottom:.1rem solid var(--md-default-fg-color--lighter);box-shadow:var(--md-shadow-z1);font-size:.8rem;height:1.8rem;padding:0 .6rem;transition:border .25s,box-shadow .25s}.md-typeset .md-input:focus,.md-typeset .md-input:hover{border-bottom-color:var(--md-accent-fg-color);box-shadow:var(--md-shadow-z2)}.md-typeset .md-input--stretch{width:100%}.md-header{background-color:var(--md-primary-fg-color);box-shadow:0 0 .2rem #0000,0 .2rem .4rem #0000;color:var(--md-primary-bg-color);display:block;left:0;position:sticky;right:0;top:0;z-index:4}@media print{.md-header{display:none}}.md-header[hidden]{transform:translateY(-100%);transition:transform .25s cubic-bezier(.8,0,.6,1),box-shadow .25s}.md-header--shadow{box-shadow:0 0 .2rem #0000001a,0 .2rem .4rem #0003;transition:transform .25s cubic-bezier(.1,.7,.1,1),box-shadow .25s}.md-header__inner{align-items:center;display:flex;padding:0 .2rem}.md-header__button{color:currentcolor;cursor:pointer;margin:.2rem;outline-color:var(--md-accent-fg-color);padding:.4rem;position:relative;transition:opacity .25s;vertical-align:middle;z-index:1}.md-header__button:hover{opacity:.7}.md-header__button:not([hidden]){display:inline-block}.md-header__button:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}.md-header__button.md-logo{margin:.2rem;padding:.4rem}@media screen and (max-width:76.234375em){.md-header__button.md-logo{display:none}}.md-header__button.md-logo img,.md-header__button.md-logo svg{fill:currentcolor;display:block;height:1.2rem;width:auto}@media screen and (min-width:60em){.md-header__button[for=__search]{display:none}}.no-js .md-header__button[for=__search]{display:none}[dir=rtl] .md-header__button[for=__search] svg{transform:scaleX(-1)}@media screen and (min-width:76.25em){.md-header__button[for=__drawer]{display:none}}.md-header__topic{display:flex;max-width:100%;position:absolute;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;white-space:nowrap}.md-header__topic+.md-header__topic{opacity:0;pointer-events:none;transform:translateX(1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__topic+.md-header__topic{transform:translateX(-1.25rem)}.md-header__topic:first-child{font-weight:700}[dir=ltr] .md-header__title{margin-left:1rem;margin-right:.4rem}[dir=rtl] .md-header__title{margin-left:.4rem;margin-right:1rem}.md-header__title{flex-grow:1;font-size:.9rem;height:2.4rem;line-height:2.4rem}.md-header__title--active .md-header__topic{opacity:0;pointer-events:none;transform:translateX(-1.25rem);transition:transform .4s cubic-bezier(1,.7,.1,.1),opacity .15s;z-index:-1}[dir=rtl] .md-header__title--active .md-header__topic{transform:translateX(1.25rem)}.md-header__title--active .md-header__topic+.md-header__topic{opacity:1;pointer-events:auto;transform:translateX(0);transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .15s;z-index:0}.md-header__title>.md-header__ellipsis{height:100%;position:relative;width:100%}.md-header__option{display:flex;flex-shrink:0;max-width:100%;transition:max-width 0ms .25s,opacity .25s .25s;white-space:nowrap}[data-md-toggle=search]:checked~.md-header .md-header__option{max-width:0;opacity:0;transition:max-width 0ms,opacity 0ms}.md-header__option>input{bottom:0}.md-header__source{display:none}@media screen and (min-width:60em){[dir=ltr] .md-header__source{margin-left:1rem}[dir=rtl] .md-header__source{margin-right:1rem}.md-header__source{display:block;max-width:11.7rem;width:11.7rem}}@media screen and (min-width:76.25em){[dir=ltr] .md-header__source{margin-left:1.4rem}[dir=rtl] .md-header__source{margin-right:1.4rem}}.md-meta{color:var(--md-default-fg-color--light);font-size:.7rem;line-height:1.3}.md-meta__list{display:inline-flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.md-meta__item:not(:last-child):after{content:"·";margin-left:.2rem;margin-right:.2rem}.md-meta__link{color:var(--md-typeset-a-color)}.md-meta__link:focus,.md-meta__link:hover{color:var(--md-accent-fg-color)}.md-draft{background-color:#ff1744;border-radius:.125em;color:#fff;display:inline-block;font-weight:700;padding-left:.5714285714em;padding-right:.5714285714em}:root{--md-nav-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-nav-icon--next:url('data:image/svg+xml;charset=utf-8,');--md-toc-icon:url('data:image/svg+xml;charset=utf-8,')}.md-nav{font-size:.7rem;line-height:1.3}.md-nav__title{color:var(--md-default-fg-color--light);display:block;font-weight:700;overflow:hidden;padding:0 .6rem;text-overflow:ellipsis}.md-nav__title .md-nav__button{display:none}.md-nav__title .md-nav__button img{height:100%;width:auto}.md-nav__title .md-nav__button.md-logo img,.md-nav__title .md-nav__button.md-logo svg{fill:currentcolor;display:block;height:2.4rem;max-width:100%;object-fit:contain;width:auto}.md-nav__list{list-style:none;margin:0;padding:0}.md-nav__link{align-items:flex-start;display:flex;gap:.4rem;margin-top:.625em;scroll-snap-align:start;transition:color 125ms}.md-nav__link--passed,.md-nav__link--passed code{color:var(--md-default-fg-color--light)}.md-nav__item .md-nav__link--active,.md-nav__item .md-nav__link--active code{color:var(--md-typeset-a-color)}.md-nav__link .md-ellipsis{position:relative}.md-nav__link .md-ellipsis code{word-break:normal}[dir=ltr] .md-nav__link .md-icon:last-child{margin-left:auto}[dir=rtl] .md-nav__link .md-icon:last-child{margin-right:auto}.md-nav__link .md-typeset{font-size:.7rem;line-height:1.3}.md-nav__link svg{fill:currentcolor;flex-shrink:0;height:1.3em}.md-nav__link[for]:focus,.md-nav__link[for]:hover,.md-nav__link[href]:focus,.md-nav__link[href]:hover{color:var(--md-accent-fg-color);cursor:pointer}.md-nav__link[for]:focus code,.md-nav__link[for]:hover code,.md-nav__link[href]:focus code,.md-nav__link[href]:hover code{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-nav__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-nav--primary .md-nav__link[for=__toc]{display:none}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{background-color:currentcolor;display:block;height:100%;-webkit-mask-image:var(--md-toc-icon);mask-image:var(--md-toc-icon);width:100%}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:none}.md-nav__container>.md-nav__link{margin-top:0}.md-nav__container>.md-nav__link:first-child{flex-grow:1;min-width:0}.md-nav__icon{flex-shrink:0}.md-nav__source{display:none}@media screen and (max-width:76.234375em){.md-nav--primary,.md-nav--primary .md-nav{background-color:var(--md-default-bg-color);display:flex;flex-direction:column;height:100%;left:0;position:absolute;right:0;top:0;z-index:1}.md-nav--primary .md-nav__item,.md-nav--primary .md-nav__title{font-size:.8rem;line-height:1.5}.md-nav--primary .md-nav__title{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);cursor:pointer;height:5.6rem;line-height:2.4rem;padding:3rem .8rem .2rem;position:relative;white-space:nowrap}[dir=ltr] .md-nav--primary .md-nav__title .md-nav__icon{left:.4rem}[dir=rtl] .md-nav--primary .md-nav__title .md-nav__icon{right:.4rem}.md-nav--primary .md-nav__title .md-nav__icon{display:block;height:1.2rem;margin:.2rem;position:absolute;top:.4rem;width:1.2rem}.md-nav--primary .md-nav__title .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--prev);mask-image:var(--md-nav-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}.md-nav--primary .md-nav__title~.md-nav__list{background-color:var(--md-default-bg-color);box-shadow:0 .05rem 0 var(--md-default-fg-color--lightest) inset;overflow-y:auto;scroll-snap-type:y mandatory;touch-action:pan-y}.md-nav--primary .md-nav__title~.md-nav__list>:first-child{border-top:0}.md-nav--primary .md-nav__title[for=__drawer]{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);font-weight:700}.md-nav--primary .md-nav__title .md-logo{display:block;left:.2rem;margin:.2rem;padding:.4rem;position:absolute;right:.2rem;top:.2rem}.md-nav--primary .md-nav__list{flex:1}.md-nav--primary .md-nav__item{border-top:.05rem solid var(--md-default-fg-color--lightest)}.md-nav--primary .md-nav__item--active>.md-nav__link{color:var(--md-typeset-a-color)}.md-nav--primary .md-nav__item--active>.md-nav__link:focus,.md-nav--primary .md-nav__item--active>.md-nav__link:hover{color:var(--md-accent-fg-color)}.md-nav--primary .md-nav__link{margin-top:0;padding:.6rem .8rem}.md-nav--primary .md-nav__link svg{margin-top:.1em}.md-nav--primary .md-nav__link>.md-nav__link{padding:0}[dir=ltr] .md-nav--primary .md-nav__link .md-nav__icon{margin-right:-.2rem}[dir=rtl] .md-nav--primary .md-nav__link .md-nav__icon{margin-left:-.2rem}.md-nav--primary .md-nav__link .md-nav__icon{font-size:1.2rem;height:1.2rem;width:1.2rem}.md-nav--primary .md-nav__link .md-nav__icon:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-nav--primary .md-nav__icon:after{transform:scale(-1)}.md-nav--primary .md-nav--secondary .md-nav{background-color:initial;position:static}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-left:1.4rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav__link{padding-right:1.4rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-left:2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav__link{padding-right:2rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-left:2.6rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav__link{padding-right:2.6rem}[dir=ltr] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-left:3.2rem}[dir=rtl] .md-nav--primary .md-nav--secondary .md-nav .md-nav .md-nav .md-nav .md-nav__link{padding-right:3.2rem}.md-nav--secondary{background-color:initial}.md-nav__toggle~.md-nav{display:flex;opacity:0;transform:translateX(100%);transition:transform .25s cubic-bezier(.8,0,.6,1),opacity 125ms 50ms}[dir=rtl] .md-nav__toggle~.md-nav{transform:translateX(-100%)}.md-nav__toggle:checked~.md-nav{opacity:1;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity 125ms 125ms}.md-nav__toggle:checked~.md-nav>.md-nav__list{-webkit-backface-visibility:hidden;backface-visibility:hidden}}@media screen and (max-width:59.984375em){.md-nav--primary .md-nav__link[for=__toc]{display:flex}.md-nav--primary .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--primary .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--primary .md-nav__link[for=__toc]~.md-nav{display:flex}.md-nav__source{background-color:var(--md-primary-fg-color--dark);color:var(--md-primary-bg-color);display:block;padding:0 .2rem}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-nav--integrated .md-nav__link[for=__toc]{display:flex}.md-nav--integrated .md-nav__link[for=__toc] .md-icon:after{content:""}.md-nav--integrated .md-nav__link[for=__toc]+.md-nav__link{display:none}.md-nav--integrated .md-nav__link[for=__toc]~.md-nav{display:flex}}@media screen and (min-width:60em){.md-nav{margin-bottom:-.4rem}.md-nav--secondary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--secondary .md-nav__title[for=__toc]{scroll-snap-align:start}.md-nav--secondary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--secondary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--secondary .md-nav__list{padding-right:.6rem}.md-nav--secondary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--secondary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--secondary .md-nav__item>.md-nav__link{margin-left:.4rem}}@media screen and (min-width:76.25em){.md-nav{margin-bottom:-.4rem;transition:max-height .25s cubic-bezier(.86,0,.07,1)}.md-nav--primary .md-nav__title{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);position:sticky;top:0;z-index:1}.md-nav--primary .md-nav__title[for=__drawer]{scroll-snap-align:start}.md-nav--primary .md-nav__title .md-nav__icon{display:none}[dir=ltr] .md-nav--primary .md-nav__list{padding-left:.6rem}[dir=rtl] .md-nav--primary .md-nav__list{padding-right:.6rem}.md-nav--primary .md-nav__list{padding-bottom:.4rem}[dir=ltr] .md-nav--primary .md-nav__item>.md-nav__link{margin-right:.4rem}[dir=rtl] .md-nav--primary .md-nav__item>.md-nav__link{margin-left:.4rem}.md-nav__toggle~.md-nav{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .25s,visibility 0ms .25s;visibility:collapse}.md-nav__toggle~.md-nav>.md-nav__list{overflow:hidden}.md-nav__toggle.md-toggle--indeterminate~.md-nav,.md-nav__toggle:checked~.md-nav{grid-template-rows:1fr;opacity:1;transition:grid-template-rows .25s cubic-bezier(.86,0,.07,1),opacity .15s .1s,visibility 0ms;visibility:visible}.md-nav__toggle.md-toggle--indeterminate~.md-nav{transition:none}.md-nav__item--nested>.md-nav>.md-nav__title{display:none}.md-nav__item--section{display:block;margin:1.25em 0}.md-nav__item--section:last-child{margin-bottom:0}.md-nav__item--section>.md-nav__link{font-weight:700}.md-nav__item--section>.md-nav__link[for]{color:var(--md-default-fg-color--light)}.md-nav__item--section>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav__item--section>.md-nav__link .md-icon,.md-nav__item--section>.md-nav__link>[for]{display:none}[dir=ltr] .md-nav__item--section>.md-nav{margin-left:-.6rem}[dir=rtl] .md-nav__item--section>.md-nav{margin-right:-.6rem}.md-nav__item--section>.md-nav{display:block;opacity:1;visibility:visible}.md-nav__item--section>.md-nav>.md-nav__list>.md-nav__item{padding:0}.md-nav__icon{border-radius:100%;height:.9rem;transition:background-color .25s;width:.9rem}.md-nav__icon:hover{background-color:var(--md-accent-fg-color--transparent)}.md-nav__icon:after{background-color:currentcolor;border-radius:100%;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-nav-icon--next);mask-image:var(--md-nav-icon--next);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:transform .25s;vertical-align:-.1rem;width:100%}[dir=rtl] .md-nav__icon:after{transform:rotate(180deg)}.md-nav__item--nested .md-nav__toggle:checked~.md-nav__link .md-nav__icon:after,.md-nav__item--nested .md-toggle--indeterminate~.md-nav__link .md-nav__icon:after{transform:rotate(90deg)}.md-nav--lifted>.md-nav__list>.md-nav__item,.md-nav--lifted>.md-nav__title{display:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active{display:block}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link{background:var(--md-default-bg-color);box-shadow:0 0 .4rem .4rem var(--md-default-bg-color);margin-top:0;position:sticky;top:0;z-index:1}.md-nav--lifted>.md-nav__list>.md-nav__item--active>.md-nav__link:not(.md-nav__container){pointer-events:none}.md-nav--lifted>.md-nav__list>.md-nav__item--active.md-nav__item--section{margin:0}[dir=ltr] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav:not(.md-nav--secondary){margin-left:-.6rem}[dir=rtl] .md-nav--lifted>.md-nav__list>.md-nav__item>.md-nav:not(.md-nav--secondary){margin-right:-.6rem}.md-nav--lifted>.md-nav__list>.md-nav__item>[for]{color:var(--md-default-fg-color--light)}.md-nav--lifted .md-nav[data-md-level="1"]{grid-template-rows:1fr;opacity:1;visibility:visible}[dir=ltr] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-left:.05rem solid var(--md-primary-fg-color)}[dir=rtl] .md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{border-right:.05rem solid var(--md-primary-fg-color)}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary{display:block;margin-bottom:1.25em;opacity:1;visibility:visible}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__list{overflow:visible;padding-bottom:0}.md-nav--integrated>.md-nav__list>.md-nav__item--active .md-nav--secondary>.md-nav__title{display:none}}.md-pagination{font-size:.8rem;font-weight:700;gap:.4rem}.md-pagination,.md-pagination>*{align-items:center;display:flex;justify-content:center}.md-pagination>*{border-radius:.2rem;height:1.8rem;min-width:1.8rem;text-align:center}.md-pagination__current{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light)}.md-pagination__link{transition:color 125ms,background-color 125ms}.md-pagination__link:focus,.md-pagination__link:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-pagination__link:focus svg,.md-pagination__link:hover svg{color:var(--md-accent-fg-color)}.md-pagination__link.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-pagination__link svg{fill:currentcolor;color:var(--md-default-fg-color--lighter);display:block;max-height:100%;width:1.2rem}:root{--md-path-icon:url('data:image/svg+xml;charset=utf-8,')}.md-path{font-size:.7rem;margin:0 .8rem;overflow:auto;padding-top:1.2rem}.md-path:not([hidden]){display:block}@media screen and (min-width:76.25em){.md-path{margin:0 1.2rem}}.md-path__list{align-items:center;display:flex;gap:.2rem;list-style:none;margin:0;padding:0}.md-path__item:not(:first-child){display:inline-flex;gap:.2rem;white-space:nowrap}.md-path__item:not(:first-child):before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline;height:.8rem;-webkit-mask-image:var(--md-path-icon);mask-image:var(--md-path-icon);width:.8rem}.md-path__link{align-items:center;color:var(--md-default-fg-color--light);display:flex}.md-path__link:focus,.md-path__link:hover{color:var(--md-accent-fg-color)}:root{--md-post-pin-icon:url('data:image/svg+xml;charset=utf-8,')}.md-post__back{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin-bottom:1.2rem;padding-bottom:1.2rem}@media screen and (max-width:76.234375em){.md-post__back{display:none}}[dir=rtl] .md-post__back svg{transform:scaleX(-1)}.md-post__authors{display:flex;flex-direction:column;gap:.6rem;margin:0 .6rem 1.2rem}.md-post .md-post__meta a{transition:color 125ms}.md-post .md-post__meta a:focus,.md-post .md-post__meta a:hover{color:var(--md-accent-fg-color)}.md-post__title{color:var(--md-default-fg-color--light);font-weight:700}.md-post--excerpt{margin-bottom:3.2rem}.md-post--excerpt .md-post__header{align-items:center;display:flex;gap:.6rem;min-height:1.6rem}.md-post--excerpt .md-post__authors{align-items:center;display:inline-flex;flex-direction:row;gap:.2rem;margin:0;min-height:2.4rem}[dir=ltr] .md-post--excerpt .md-post__meta .md-meta__list{margin-right:.4rem}[dir=rtl] .md-post--excerpt .md-post__meta .md-meta__list{margin-left:.4rem}.md-post--excerpt .md-post__content>:first-child{--md-scroll-margin:6rem;margin-top:0}.md-post>.md-nav--secondary{margin:1em 0}.md-pin{background:var(--md-default-fg-color--lightest);border-radius:1rem;margin-top:-.05rem;padding:.2rem}.md-pin:after{background-color:currentcolor;content:"";display:block;height:.6rem;margin:0 auto;-webkit-mask-image:var(--md-post-pin-icon);mask-image:var(--md-post-pin-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.6rem}.md-profile{align-items:center;display:flex;font-size:.7rem;gap:.6rem;line-height:1.4;width:100%}.md-profile__description{flex-grow:1}.md-content--post{display:flex}@media screen and (max-width:76.234375em){.md-content--post{flex-flow:column-reverse}}.md-content--post>.md-content__inner{min-width:0}@media screen and (min-width:76.25em){[dir=ltr] .md-content--post>.md-content__inner{margin-left:1.2rem}[dir=rtl] .md-content--post>.md-content__inner{margin-right:1.2rem}}@media screen and (max-width:76.234375em){.md-sidebar.md-sidebar--post{padding:0;position:static;width:100%}.md-sidebar.md-sidebar--post .md-sidebar__scrollwrap{overflow:visible}.md-sidebar.md-sidebar--post .md-sidebar__inner{padding:0}.md-sidebar.md-sidebar--post .md-post__meta{margin-left:.6rem;margin-right:.6rem}.md-sidebar.md-sidebar--post .md-nav__item{border:none;display:inline}.md-sidebar.md-sidebar--post .md-nav__list{display:inline-flex;flex-wrap:wrap;gap:.6rem;padding-bottom:.6rem;padding-top:.6rem}.md-sidebar.md-sidebar--post .md-nav__link{padding:0}.md-sidebar.md-sidebar--post .md-nav{height:auto;margin-bottom:0;position:static}}:root{--md-progress-value:0;--md-progress-delay:400ms}.md-progress{background:var(--md-primary-bg-color);height:.075rem;opacity:min(clamp(0,var(--md-progress-value),1),clamp(0,100 - var(--md-progress-value),1));position:fixed;top:0;transform:scaleX(calc(var(--md-progress-value)*1%));transform-origin:left;transition:transform .5s cubic-bezier(.19,1,.22,1),opacity .25s var(--md-progress-delay);width:100%;z-index:4}:root{--md-search-result-icon:url('data:image/svg+xml;charset=utf-8,')}.md-search{position:relative}@media screen and (min-width:60em){.md-search{padding:.2rem 0}}.no-js .md-search{display:none}.md-search__overlay{opacity:0;z-index:1}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__overlay{left:-2.2rem}[dir=rtl] .md-search__overlay{right:-2.2rem}.md-search__overlay{background-color:var(--md-default-bg-color);border-radius:1rem;height:2rem;overflow:hidden;pointer-events:none;position:absolute;top:-1rem;transform-origin:center;transition:transform .3s .1s,opacity .2s .2s;width:2rem}[data-md-toggle=search]:checked~.md-header .md-search__overlay{opacity:1;transition:transform .4s,opacity .1s}}@media screen and (min-width:60em){[dir=ltr] .md-search__overlay{left:0}[dir=rtl] .md-search__overlay{right:0}.md-search__overlay{background-color:#0000008a;cursor:pointer;height:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0}[data-md-toggle=search]:checked~.md-header .md-search__overlay{height:200vh;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@media screen and (max-width:29.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(45)}}@media screen and (min-width:30em) and (max-width:44.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(60)}}@media screen and (min-width:45em) and (max-width:59.984375em){[data-md-toggle=search]:checked~.md-header .md-search__overlay{transform:scale(75)}}.md-search__inner{-webkit-backface-visibility:hidden;backface-visibility:hidden}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__inner{left:0}[dir=rtl] .md-search__inner{right:0}.md-search__inner{height:0;opacity:0;overflow:hidden;position:fixed;top:0;transform:translateX(5%);transition:width 0ms .3s,height 0ms .3s,transform .15s cubic-bezier(.4,0,.2,1) .15s,opacity .15s .15s;width:0;z-index:2}[dir=rtl] .md-search__inner{transform:translateX(-5%)}[data-md-toggle=search]:checked~.md-header .md-search__inner{height:100%;opacity:1;transform:translateX(0);transition:width 0ms 0ms,height 0ms 0ms,transform .15s cubic-bezier(.1,.7,.1,1) .15s,opacity .15s .15s;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__inner{float:right}[dir=rtl] .md-search__inner{float:left}.md-search__inner{padding:.1rem 0;position:relative;transition:width .25s cubic-bezier(.1,.7,.1,1);width:11.7rem}}@media screen and (min-width:60em) and (max-width:76.234375em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:23.4rem}}@media screen and (min-width:76.25em){[data-md-toggle=search]:checked~.md-header .md-search__inner{width:34.4rem}}.md-search__form{background-color:var(--md-default-bg-color);box-shadow:0 0 .6rem #0000;height:2.4rem;position:relative;transition:color .25s,background-color .25s;z-index:2}@media screen and (min-width:60em){.md-search__form{background-color:#00000042;border-radius:.1rem;height:1.8rem}.md-search__form:hover{background-color:#ffffff1f}}[data-md-toggle=search]:checked~.md-header .md-search__form{background-color:var(--md-default-bg-color);border-radius:.1rem .1rem 0 0;box-shadow:0 0 .6rem #00000012;color:var(--md-default-fg-color)}[dir=ltr] .md-search__input{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__input{padding-left:2.2rem;padding-right:3.6rem}.md-search__input{background:#0000;font-size:.9rem;height:100%;position:relative;text-overflow:ellipsis;width:100%;z-index:2}.md-search__input::placeholder{transition:color .25s}.md-search__input::placeholder,.md-search__input~.md-search__icon{color:var(--md-default-fg-color--light)}.md-search__input::-ms-clear{display:none}@media screen and (max-width:59.984375em){.md-search__input{font-size:.9rem;height:2.4rem;width:100%}}@media screen and (min-width:60em){[dir=ltr] .md-search__input{padding-left:2.2rem}[dir=rtl] .md-search__input{padding-right:2.2rem}.md-search__input{color:inherit;font-size:.8rem}.md-search__input::placeholder{color:var(--md-primary-bg-color--light)}.md-search__input+.md-search__icon{color:var(--md-primary-bg-color)}[data-md-toggle=search]:checked~.md-header .md-search__input{text-overflow:clip}[data-md-toggle=search]:checked~.md-header .md-search__input+.md-search__icon{color:var(--md-default-fg-color--light)}[data-md-toggle=search]:checked~.md-header .md-search__input::placeholder{color:#0000}}.md-search__icon{cursor:pointer;display:inline-block;height:1.2rem;transition:color .25s,opacity .25s;width:1.2rem}.md-search__icon:hover{opacity:.7}[dir=ltr] .md-search__icon[for=__search]{left:.5rem}[dir=rtl] .md-search__icon[for=__search]{right:.5rem}.md-search__icon[for=__search]{position:absolute;top:.3rem;z-index:2}[dir=rtl] .md-search__icon[for=__search] svg{transform:scaleX(-1)}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__icon[for=__search]{left:.8rem}[dir=rtl] .md-search__icon[for=__search]{right:.8rem}.md-search__icon[for=__search]{top:.6rem}.md-search__icon[for=__search] svg:first-child{display:none}}@media screen and (min-width:60em){.md-search__icon[for=__search]{pointer-events:none}.md-search__icon[for=__search] svg:last-child{display:none}}[dir=ltr] .md-search__options{right:.5rem}[dir=rtl] .md-search__options{left:.5rem}.md-search__options{pointer-events:none;position:absolute;top:.3rem;z-index:2}@media screen and (max-width:59.984375em){[dir=ltr] .md-search__options{right:.8rem}[dir=rtl] .md-search__options{left:.8rem}.md-search__options{top:.6rem}}[dir=ltr] .md-search__options>.md-icon{margin-left:.2rem}[dir=rtl] .md-search__options>.md-icon{margin-right:.2rem}.md-search__options>.md-icon{color:var(--md-default-fg-color--light);opacity:0;transform:scale(.75);transition:transform .15s cubic-bezier(.1,.7,.1,1),opacity .15s}.md-search__options>.md-icon:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon{opacity:1;pointer-events:auto;transform:scale(1)}[data-md-toggle=search]:checked~.md-header .md-search__input:valid~.md-search__options>.md-icon:hover{opacity:.7}[dir=ltr] .md-search__suggest{padding-left:3.6rem;padding-right:2.2rem}[dir=rtl] .md-search__suggest{padding-left:2.2rem;padding-right:3.6rem}.md-search__suggest{align-items:center;color:var(--md-default-fg-color--lighter);display:flex;font-size:.9rem;height:100%;opacity:0;position:absolute;top:0;transition:opacity 50ms;white-space:nowrap;width:100%}@media screen and (min-width:60em){[dir=ltr] .md-search__suggest{padding-left:2.2rem}[dir=rtl] .md-search__suggest{padding-right:2.2rem}.md-search__suggest{font-size:.8rem}}[data-md-toggle=search]:checked~.md-header .md-search__suggest{opacity:1;transition:opacity .3s .1s}[dir=ltr] .md-search__output{border-bottom-left-radius:.1rem}[dir=ltr] .md-search__output,[dir=rtl] .md-search__output{border-bottom-right-radius:.1rem}[dir=rtl] .md-search__output{border-bottom-left-radius:.1rem}.md-search__output{overflow:hidden;position:absolute;width:100%;z-index:1}@media screen and (max-width:59.984375em){.md-search__output{bottom:0;top:2.4rem}}@media screen and (min-width:60em){.md-search__output{opacity:0;top:1.9rem;transition:opacity .4s}[data-md-toggle=search]:checked~.md-header .md-search__output{box-shadow:var(--md-shadow-z3);opacity:1}}.md-search__scrollwrap{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);height:100%;overflow-y:auto;touch-action:pan-y}@media (-webkit-max-device-pixel-ratio:1),(max-resolution:1dppx){.md-search__scrollwrap{transform:translateZ(0)}}@media screen and (min-width:60em) and (max-width:76.234375em){.md-search__scrollwrap{width:23.4rem}}@media screen and (min-width:76.25em){.md-search__scrollwrap{width:34.4rem}}@media screen and (min-width:60em){.md-search__scrollwrap{max-height:0;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}[data-md-toggle=search]:checked~.md-header .md-search__scrollwrap{max-height:75vh}.md-search__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-search__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-search__scrollwrap::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-search__scrollwrap::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}}.md-search-result{color:var(--md-default-fg-color);word-break:break-word}.md-search-result__meta{background-color:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.8rem;padding:0 .8rem;scroll-snap-align:start}@media screen and (min-width:60em){[dir=ltr] .md-search-result__meta{padding-left:2.2rem}[dir=rtl] .md-search-result__meta{padding-right:2.2rem}}.md-search-result__list{list-style:none;margin:0;padding:0;-webkit-user-select:none;user-select:none}.md-search-result__item{box-shadow:0 -.05rem var(--md-default-fg-color--lightest)}.md-search-result__item:first-child{box-shadow:none}.md-search-result__link{display:block;outline:none;scroll-snap-align:start;transition:background-color .25s}.md-search-result__link:focus,.md-search-result__link:hover{background-color:var(--md-accent-fg-color--transparent)}.md-search-result__link:last-child p:last-child{margin-bottom:.6rem}.md-search-result__more>summary{cursor:pointer;display:block;outline:none;position:sticky;scroll-snap-align:start;top:0;z-index:1}.md-search-result__more>summary::marker{display:none}.md-search-result__more>summary::-webkit-details-marker{display:none}.md-search-result__more>summary>div{color:var(--md-typeset-a-color);font-size:.64rem;padding:.75em .8rem;transition:color .25s,background-color .25s}@media screen and (min-width:60em){[dir=ltr] .md-search-result__more>summary>div{padding-left:2.2rem}[dir=rtl] .md-search-result__more>summary>div{padding-right:2.2rem}}.md-search-result__more>summary:focus>div,.md-search-result__more>summary:hover>div{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-search-result__more[open]>summary{background-color:var(--md-default-bg-color)}.md-search-result__article{overflow:hidden;padding:0 .8rem;position:relative}@media screen and (min-width:60em){[dir=ltr] .md-search-result__article{padding-left:2.2rem}[dir=rtl] .md-search-result__article{padding-right:2.2rem}}[dir=ltr] .md-search-result__icon{left:0}[dir=rtl] .md-search-result__icon{right:0}.md-search-result__icon{color:var(--md-default-fg-color--light);height:1.2rem;margin:.5rem;position:absolute;width:1.2rem}@media screen and (max-width:59.984375em){.md-search-result__icon{display:none}}.md-search-result__icon:after{background-color:currentcolor;content:"";display:inline-block;height:100%;-webkit-mask-image:var(--md-search-result-icon);mask-image:var(--md-search-result-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:100%}[dir=rtl] .md-search-result__icon:after{transform:scaleX(-1)}.md-search-result .md-typeset{color:var(--md-default-fg-color--light);font-size:.64rem;line-height:1.6}.md-search-result .md-typeset h1{color:var(--md-default-fg-color);font-size:.8rem;font-weight:400;line-height:1.4;margin:.55rem 0}.md-search-result .md-typeset h1 mark{text-decoration:none}.md-search-result .md-typeset h2{color:var(--md-default-fg-color);font-size:.64rem;font-weight:700;line-height:1.6;margin:.5em 0}.md-search-result .md-typeset h2 mark{text-decoration:none}.md-search-result__terms{color:var(--md-default-fg-color);display:block;font-size:.64rem;font-style:italic;margin:.5em 0}.md-search-result mark{background-color:initial;color:var(--md-accent-fg-color);text-decoration:underline}.md-select{position:relative;z-index:1}.md-select__inner{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);left:50%;margin-top:.2rem;max-height:0;opacity:0;position:absolute;top:calc(100% - .2rem);transform:translate3d(-50%,.3rem,0);transition:transform .25s 375ms,opacity .25s .25s,max-height 0ms .5s}.md-select:focus-within .md-select__inner,.md-select:hover .md-select__inner{max-height:10rem;opacity:1;transform:translate3d(-50%,0,0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,max-height 0ms}.md-select__inner:after{border-bottom:.2rem solid #0000;border-bottom-color:var(--md-default-bg-color);border-left:.2rem solid #0000;border-right:.2rem solid #0000;border-top:0;content:"";height:0;left:50%;margin-left:-.2rem;margin-top:-.2rem;position:absolute;top:0;width:0}.md-select__list{border-radius:.1rem;font-size:.8rem;list-style-type:none;margin:0;max-height:inherit;overflow:auto;padding:0}.md-select__item{line-height:1.8rem}[dir=ltr] .md-select__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-select__link{padding-left:1.2rem;padding-right:.6rem}.md-select__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:background-color .25s,color .25s;width:100%}.md-select__link:focus,.md-select__link:hover{color:var(--md-accent-fg-color)}.md-select__link:focus{background-color:var(--md-default-fg-color--lightest)}.md-sidebar{align-self:flex-start;flex-shrink:0;padding:1.2rem 0;position:sticky;top:2.4rem;width:12.1rem}@media print{.md-sidebar{display:none}}@media screen and (max-width:76.234375em){[dir=ltr] .md-sidebar--primary{left:-12.1rem}[dir=rtl] .md-sidebar--primary{right:-12.1rem}.md-sidebar--primary{background-color:var(--md-default-bg-color);display:block;height:100%;position:fixed;top:0;transform:translateX(0);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;width:12.1rem;z-index:5}[data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{box-shadow:var(--md-shadow-z3);transform:translateX(12.1rem)}[dir=rtl] [data-md-toggle=drawer]:checked~.md-container .md-sidebar--primary{transform:translateX(-12.1rem)}.md-sidebar--primary .md-sidebar__scrollwrap{bottom:0;left:0;margin:0;overflow:hidden;position:absolute;right:0;scroll-snap-type:none;top:0}}@media screen and (min-width:76.25em){.md-sidebar{height:0}.no-js .md-sidebar{height:auto}.md-header--lifted~.md-container .md-sidebar{top:4.8rem}}.md-sidebar--secondary{display:none;order:2}@media screen and (min-width:60em){.md-sidebar--secondary{height:0}.no-js .md-sidebar--secondary{height:auto}.md-sidebar--secondary:not([hidden]){display:block}.md-sidebar--secondary .md-sidebar__scrollwrap{touch-action:pan-y}}.md-sidebar__scrollwrap{scrollbar-gutter:stable;-webkit-backface-visibility:hidden;backface-visibility:hidden;margin:0 .2rem;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin}.md-sidebar__scrollwrap::-webkit-scrollbar{height:.2rem;width:.2rem}.md-sidebar__scrollwrap:focus-within,.md-sidebar__scrollwrap:hover{scrollbar-color:var(--md-accent-fg-color) #0000}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-sidebar__scrollwrap:focus-within::-webkit-scrollbar-thumb:hover,.md-sidebar__scrollwrap:hover::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}@supports selector(::-webkit-scrollbar){.md-sidebar__scrollwrap{scrollbar-gutter:auto}[dir=ltr] .md-sidebar__inner{padding-right:calc(100% - 11.5rem)}[dir=rtl] .md-sidebar__inner{padding-left:calc(100% - 11.5rem)}}@media screen and (max-width:76.234375em){.md-overlay{background-color:#0000008a;height:0;opacity:0;position:fixed;top:0;transition:width 0ms .25s,height 0ms .25s,opacity .25s;width:0;z-index:5}[data-md-toggle=drawer]:checked~.md-overlay{height:100%;opacity:1;transition:width 0ms,height 0ms,opacity .25s;width:100%}}@keyframes facts{0%{height:0}to{height:.65rem}}@keyframes fact{0%{opacity:0;transform:translateY(100%)}50%{opacity:0}to{opacity:1;transform:translateY(0)}}:root{--md-source-forks-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-repositories-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-stars-icon:url('data:image/svg+xml;charset=utf-8,');--md-source-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-source{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:block;font-size:.65rem;line-height:1.2;outline-color:var(--md-accent-fg-color);transition:opacity .25s;white-space:nowrap}.md-source:hover{opacity:.7}.md-source__icon{display:inline-block;height:2.4rem;vertical-align:middle;width:2rem}[dir=ltr] .md-source__icon svg{margin-left:.6rem}[dir=rtl] .md-source__icon svg{margin-right:.6rem}.md-source__icon svg{margin-top:.6rem}[dir=ltr] .md-source__icon+.md-source__repository{padding-left:2rem}[dir=rtl] .md-source__icon+.md-source__repository{padding-right:2rem}[dir=ltr] .md-source__icon+.md-source__repository{margin-left:-2rem}[dir=rtl] .md-source__icon+.md-source__repository{margin-right:-2rem}[dir=ltr] .md-source__repository{margin-left:.6rem}[dir=rtl] .md-source__repository{margin-right:.6rem}.md-source__repository{display:inline-block;max-width:calc(100% - 1.2rem);overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.md-source__facts{display:flex;font-size:.55rem;gap:.4rem;list-style-type:none;margin:.1rem 0 0;opacity:.75;overflow:hidden;padding:0;width:100%}.md-source__repository--active .md-source__facts{animation:facts .25s ease-in}.md-source__fact{overflow:hidden;text-overflow:ellipsis}.md-source__repository--active .md-source__fact{animation:fact .4s ease-out}[dir=ltr] .md-source__fact:before{margin-right:.1rem}[dir=rtl] .md-source__fact:before{margin-left:.1rem}.md-source__fact:before{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-top;width:.6rem}.md-source__fact:nth-child(1n+2){flex-shrink:0}.md-source__fact--version:before{-webkit-mask-image:var(--md-source-version-icon);mask-image:var(--md-source-version-icon)}.md-source__fact--stars:before{-webkit-mask-image:var(--md-source-stars-icon);mask-image:var(--md-source-stars-icon)}.md-source__fact--forks:before{-webkit-mask-image:var(--md-source-forks-icon);mask-image:var(--md-source-forks-icon)}.md-source__fact--repositories:before{-webkit-mask-image:var(--md-source-repositories-icon);mask-image:var(--md-source-repositories-icon)}.md-source-file{margin:1em 0}[dir=ltr] .md-source-file__fact{margin-right:.6rem}[dir=rtl] .md-source-file__fact{margin-left:.6rem}.md-source-file__fact{align-items:center;color:var(--md-default-fg-color--light);display:inline-flex;font-size:.68rem;gap:.3rem}.md-source-file__fact .md-icon{flex-shrink:0;margin-bottom:.05rem}[dir=ltr] .md-source-file__fact .md-author{float:left}[dir=rtl] .md-source-file__fact .md-author{float:right}.md-source-file__fact .md-author{margin-right:.2rem}.md-source-file__fact svg{width:.9rem}:root{--md-status:url('data:image/svg+xml;charset=utf-8,');--md-status--new:url('data:image/svg+xml;charset=utf-8,');--md-status--deprecated:url('data:image/svg+xml;charset=utf-8,');--md-status--encrypted:url('data:image/svg+xml;charset=utf-8,')}.md-status:after{background-color:var(--md-default-fg-color--light);content:"";display:inline-block;height:1.125em;-webkit-mask-image:var(--md-status);mask-image:var(--md-status);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;vertical-align:text-bottom;width:1.125em}.md-status:hover:after{background-color:currentcolor}.md-status--new:after{-webkit-mask-image:var(--md-status--new);mask-image:var(--md-status--new)}.md-status--deprecated:after{-webkit-mask-image:var(--md-status--deprecated);mask-image:var(--md-status--deprecated)}.md-status--encrypted:after{-webkit-mask-image:var(--md-status--encrypted);mask-image:var(--md-status--encrypted)}.md-tabs{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block;line-height:1.3;overflow:auto;width:100%;z-index:3}@media print{.md-tabs{display:none}}@media screen and (max-width:76.234375em){.md-tabs{display:none}}.md-tabs[hidden]{pointer-events:none}[dir=ltr] .md-tabs__list{margin-left:.2rem}[dir=rtl] .md-tabs__list{margin-right:.2rem}.md-tabs__list{contain:content;display:flex;list-style:none;margin:0;overflow:auto;padding:0;scrollbar-width:none;white-space:nowrap}.md-tabs__list::-webkit-scrollbar{display:none}.md-tabs__item{height:2.4rem;padding-left:.6rem;padding-right:.6rem}.md-tabs__item--active .md-tabs__link{color:inherit;opacity:1}.md-tabs__link{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;font-size:.7rem;margin-top:.8rem;opacity:.7;outline-color:var(--md-accent-fg-color);outline-offset:.2rem;transition:transform .4s cubic-bezier(.1,.7,.1,1),opacity .25s}.md-tabs__link:focus,.md-tabs__link:hover{color:inherit;opacity:1}[dir=ltr] .md-tabs__link svg{margin-right:.4rem}[dir=rtl] .md-tabs__link svg{margin-left:.4rem}.md-tabs__link svg{fill:currentcolor;height:1.3em}.md-tabs__item:nth-child(2) .md-tabs__link{transition-delay:20ms}.md-tabs__item:nth-child(3) .md-tabs__link{transition-delay:40ms}.md-tabs__item:nth-child(4) .md-tabs__link{transition-delay:60ms}.md-tabs__item:nth-child(5) .md-tabs__link{transition-delay:80ms}.md-tabs__item:nth-child(6) .md-tabs__link{transition-delay:.1s}.md-tabs__item:nth-child(7) .md-tabs__link{transition-delay:.12s}.md-tabs__item:nth-child(8) .md-tabs__link{transition-delay:.14s}.md-tabs__item:nth-child(9) .md-tabs__link{transition-delay:.16s}.md-tabs__item:nth-child(10) .md-tabs__link{transition-delay:.18s}.md-tabs__item:nth-child(11) .md-tabs__link{transition-delay:.2s}.md-tabs__item:nth-child(12) .md-tabs__link{transition-delay:.22s}.md-tabs__item:nth-child(13) .md-tabs__link{transition-delay:.24s}.md-tabs__item:nth-child(14) .md-tabs__link{transition-delay:.26s}.md-tabs__item:nth-child(15) .md-tabs__link{transition-delay:.28s}.md-tabs__item:nth-child(16) .md-tabs__link{transition-delay:.3s}.md-tabs[hidden] .md-tabs__link{opacity:0;transform:translateY(50%);transition:transform 0ms .1s,opacity .1s}:root{--md-tag-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .md-tags:not([hidden]){display:inline-flex;flex-wrap:wrap;gap:.5em;margin-bottom:.75em;margin-top:-.125em}.md-typeset .md-tag{align-items:center;background:var(--md-default-fg-color--lightest);border-radius:2.4rem;display:inline-flex;font-size:.64rem;font-size:min(.8em,.64rem);font-weight:700;gap:.5em;letter-spacing:normal;line-height:1.6;padding:.3125em .78125em}.md-typeset .md-tag[href]{-webkit-tap-highlight-color:transparent;color:inherit;outline:none;transition:color 125ms,background-color 125ms}.md-typeset .md-tag[href]:focus,.md-typeset .md-tag[href]:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}[id]>.md-typeset .md-tag{vertical-align:text-top}.md-typeset .md-tag-shadow{opacity:.5}.md-typeset .md-tag-icon:before{background-color:var(--md-default-fg-color--lighter);content:"";display:inline-block;height:1.2em;-webkit-mask-image:var(--md-tag-icon);mask-image:var(--md-tag-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color 125ms;vertical-align:text-bottom;width:1.2em}.md-typeset .md-tag-icon[href]:focus:before,.md-typeset .md-tag-icon[href]:hover:before{background-color:var(--md-accent-bg-color)}@keyframes pulse{0%{transform:scale(.95)}75%{transform:scale(1)}to{transform:scale(.95)}}:root{--md-annotation-bg-icon:url('data:image/svg+xml;charset=utf-8,');--md-annotation-icon:url('data:image/svg+xml;charset=utf-8,')}.md-tooltip{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);font-family:var(--md-text-font-family);left:clamp(var(--md-tooltip-0,0rem) + .8rem,var(--md-tooltip-x),100vw + var(--md-tooltip-0,0rem) + .8rem - var(--md-tooltip-width) - 2 * .8rem);max-width:calc(100vw - 1.6rem);opacity:0;position:absolute;top:var(--md-tooltip-y);transform:translateY(-.4rem);transition:transform 0ms .25s,opacity .25s,z-index .25s;width:var(--md-tooltip-width);z-index:0}.md-tooltip--active{opacity:1;transform:translateY(0);transition:transform .25s cubic-bezier(.1,.7,.1,1),opacity .25s,z-index 0ms;z-index:2}.md-tooltip--inline{font-weight:700;-webkit-user-select:none;user-select:none;width:auto}.md-tooltip--inline:not(.md-tooltip--active){transform:translateY(.2rem) scale(.9)}.md-tooltip--inline .md-tooltip__inner{font-size:.5rem;padding:.2rem .4rem}[hidden]+.md-tooltip--inline{display:none}.focus-visible>.md-tooltip,.md-tooltip:target{outline:var(--md-accent-fg-color) auto}.md-tooltip__inner{font-size:.64rem;padding:.8rem}.md-tooltip__inner.md-typeset>:first-child{margin-top:0}.md-tooltip__inner.md-typeset>:last-child{margin-bottom:0}.md-annotation{font-weight:400;outline:none;vertical-align:text-bottom;white-space:normal}[dir=rtl] .md-annotation{direction:rtl}code .md-annotation{font-family:var(--md-code-font-family);font-size:inherit}.md-annotation:not([hidden]){display:inline-block;line-height:1.25}.md-annotation__index{border-radius:.01px;cursor:pointer;display:inline-block;margin-left:.4ch;margin-right:.4ch;outline:none;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;vertical-align:text-top;z-index:0}.md-annotation .md-annotation__index{transition:z-index .25s}@media screen{.md-annotation__index{width:2.2ch}[data-md-visible]>.md-annotation__index{animation:pulse 2s infinite}.md-annotation__index:before{background:var(--md-default-bg-color);-webkit-mask-image:var(--md-annotation-bg-icon);mask-image:var(--md-annotation-bg-icon)}.md-annotation__index:after,.md-annotation__index:before{content:"";height:2.2ch;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:-.1ch;width:2.2ch;z-index:-1}.md-annotation__index:after{background-color:var(--md-default-fg-color--lighter);-webkit-mask-image:var(--md-annotation-icon);mask-image:var(--md-annotation-icon);transform:scale(1.0001);transition:background-color .25s,transform .25s}.md-tooltip--active+.md-annotation__index:after{transform:rotate(45deg)}.md-tooltip--active+.md-annotation__index:after,:hover>.md-annotation__index:after{background-color:var(--md-accent-fg-color)}}.md-tooltip--active+.md-annotation__index{animation-play-state:paused;transition-duration:0ms;z-index:2}.md-annotation__index [data-md-annotation-id]{display:inline-block}@media print{.md-annotation__index [data-md-annotation-id]{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);font-weight:700;padding:0 .6ch;white-space:nowrap}.md-annotation__index [data-md-annotation-id]:after{content:attr(data-md-annotation-id)}}.md-typeset .md-annotation-list{counter-reset:xxx;list-style:none}.md-typeset .md-annotation-list li{position:relative}[dir=ltr] .md-typeset .md-annotation-list li:before{left:-2.125em}[dir=rtl] .md-typeset .md-annotation-list li:before{right:-2.125em}.md-typeset .md-annotation-list li:before{background:var(--md-default-fg-color--lighter);border-radius:2ch;color:var(--md-default-bg-color);content:counter(xxx);counter-increment:xxx;font-size:.8875em;font-weight:700;height:2ch;line-height:1.25;min-width:2ch;padding:0 .6ch;position:absolute;text-align:center;top:.25em}:root{--md-tooltip-width:20rem;--md-tooltip-tail:0.3rem}.md-tooltip2{-webkit-backface-visibility:hidden;backface-visibility:hidden;color:var(--md-default-fg-color);font-family:var(--md-text-font-family);opacity:0;pointer-events:none;position:absolute;top:calc(var(--md-tooltip-host-y) + var(--md-tooltip-y));transform:translateY(-.4rem);transform-origin:calc(var(--md-tooltip-host-x) + var(--md-tooltip-x)) 0;transition:transform 0ms .25s,opacity .25s,z-index .25s;width:100%;z-index:0}.md-tooltip2:before{border-left:var(--md-tooltip-tail) solid #0000;border-right:var(--md-tooltip-tail) solid #0000;content:"";display:block;left:clamp(1.5 * .8rem,var(--md-tooltip-host-x) + var(--md-tooltip-x) - var(--md-tooltip-tail),100vw - 2 * var(--md-tooltip-tail) - 1.5 * .8rem);position:absolute;z-index:1}.md-tooltip2--top:before{border-top:var(--md-tooltip-tail) solid var(--md-default-bg-color);bottom:calc(var(--md-tooltip-tail)*-1 + .025rem);filter:drop-shadow(0 1px 0 hsla(0,0%,0%,.05))}.md-tooltip2--bottom:before{border-bottom:var(--md-tooltip-tail) solid var(--md-default-bg-color);filter:drop-shadow(0 -1px 0 hsla(0,0%,0%,.05));top:calc(var(--md-tooltip-tail)*-1 + .025rem)}.md-tooltip2--active{opacity:1;transform:translateY(0);transition:transform .4s cubic-bezier(0,1,.5,1),opacity .25s,z-index 0ms;z-index:2}.md-tooltip2__inner{scrollbar-gutter:stable;background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);left:clamp(.8rem,var(--md-tooltip-host-x) - .8rem,100vw - var(--md-tooltip-width) - .8rem);max-height:40vh;max-width:calc(100vw - 1.6rem);position:relative;scrollbar-width:thin}.md-tooltip2__inner::-webkit-scrollbar{height:.2rem;width:.2rem}.md-tooltip2__inner::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-tooltip2__inner::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}[role=dialog]>.md-tooltip2__inner{font-size:.64rem;overflow:auto;padding:0 .8rem;pointer-events:auto;width:var(--md-tooltip-width)}[role=dialog]>.md-tooltip2__inner:after,[role=dialog]>.md-tooltip2__inner:before{content:"";display:block;height:.8rem;position:sticky;width:100%;z-index:10}[role=dialog]>.md-tooltip2__inner:before{background:linear-gradient(var(--md-default-bg-color),#0000 75%);top:0}[role=dialog]>.md-tooltip2__inner:after{background:linear-gradient(#0000,var(--md-default-bg-color) 75%);bottom:0}[role=tooltip]>.md-tooltip2__inner{font-size:.5rem;font-weight:700;left:clamp(.8rem,var(--md-tooltip-host-x) + var(--md-tooltip-x) - var(--md-tooltip-width)/2,100vw - var(--md-tooltip-width) - .8rem);max-width:min(100vw - 2 * .8rem,400px);padding:.2rem .4rem;-webkit-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}.md-tooltip2__inner.md-typeset>:first-child{margin-top:0}.md-tooltip2__inner.md-typeset>:last-child{margin-bottom:0}[dir=ltr] .md-top{margin-left:50%}[dir=rtl] .md-top{margin-right:50%}.md-top{background-color:var(--md-default-bg-color);border-radius:1.6rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color--light);cursor:pointer;display:block;font-size:.7rem;outline:none;padding:.4rem .8rem;position:fixed;top:3.2rem;transform:translate(-50%);transition:color 125ms,background-color 125ms,transform 125ms cubic-bezier(.4,0,.2,1),opacity 125ms;z-index:2}@media print{.md-top{display:none}}[dir=rtl] .md-top{transform:translate(50%)}.md-top[hidden]{opacity:0;pointer-events:none;transform:translate(-50%,.2rem);transition-duration:0ms}[dir=rtl] .md-top[hidden]{transform:translate(50%,.2rem)}.md-top:focus,.md-top:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.md-top svg{display:inline-block;vertical-align:-.5em}@keyframes hoverfix{0%{pointer-events:none}}:root{--md-version-icon:url('data:image/svg+xml;charset=utf-8,')}.md-version{flex-shrink:0;font-size:.8rem;height:2.4rem}[dir=ltr] .md-version__current{margin-left:1.4rem;margin-right:.4rem}[dir=rtl] .md-version__current{margin-left:.4rem;margin-right:1.4rem}.md-version__current{color:inherit;cursor:pointer;outline:none;position:relative;top:.05rem}[dir=ltr] .md-version__current:after{margin-left:.4rem}[dir=rtl] .md-version__current:after{margin-right:.4rem}.md-version__current:after{background-color:currentcolor;content:"";display:inline-block;height:.6rem;-webkit-mask-image:var(--md-version-icon);mask-image:var(--md-version-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.4rem}.md-version__list{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z2);color:var(--md-default-fg-color);list-style-type:none;margin:.2rem .8rem;max-height:0;opacity:0;overflow:auto;padding:0;position:absolute;scroll-snap-type:y mandatory;top:.15rem;transition:max-height 0ms .5s,opacity .25s .25s;z-index:3}.md-version:focus-within .md-version__list,.md-version:hover .md-version__list{max-height:10rem;opacity:1;transition:max-height 0ms,opacity .25s}@media (hover:none),(pointer:coarse){.md-version:hover .md-version__list{animation:hoverfix .25s forwards}.md-version:focus-within .md-version__list{animation:none}}.md-version__item{line-height:1.8rem}[dir=ltr] .md-version__link{padding-left:.6rem;padding-right:1.2rem}[dir=rtl] .md-version__link{padding-left:1.2rem;padding-right:.6rem}.md-version__link{cursor:pointer;display:block;outline:none;scroll-snap-align:start;transition:color .25s,background-color .25s;white-space:nowrap;width:100%}.md-version__link:focus,.md-version__link:hover{color:var(--md-accent-fg-color)}.md-version__link:focus{background-color:var(--md-default-fg-color--lightest)}:root{--md-admonition-icon--note:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--abstract:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--info:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--tip:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--success:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--question:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--warning:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--failure:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--danger:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--bug:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--example:url('data:image/svg+xml;charset=utf-8,');--md-admonition-icon--quote:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .admonition,.md-typeset details{background-color:var(--md-admonition-bg-color);border:.075rem solid #448aff;border-radius:.2rem;box-shadow:var(--md-shadow-z1);color:var(--md-admonition-fg-color);display:flow-root;font-size:.64rem;margin:1.5625em 0;padding:0 .6rem;page-break-inside:avoid;transition:box-shadow 125ms}@media print{.md-typeset .admonition,.md-typeset details{box-shadow:none}}.md-typeset .admonition:focus-within,.md-typeset details:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .admonition>*,.md-typeset details>*{box-sizing:border-box}.md-typeset .admonition .admonition,.md-typeset .admonition details,.md-typeset details .admonition,.md-typeset details details{margin-bottom:1em;margin-top:1em}.md-typeset .admonition .md-typeset__scrollwrap,.md-typeset details .md-typeset__scrollwrap{margin:1em -.6rem}.md-typeset .admonition .md-typeset__table,.md-typeset details .md-typeset__table{padding:0 .6rem}.md-typeset .admonition>.tabbed-set:only-child,.md-typeset details>.tabbed-set:only-child{margin-top:0}html .md-typeset .admonition>:last-child,html .md-typeset details>:last-child{margin-bottom:.6rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{padding-left:2rem;padding-right:.6rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{padding-left:.6rem;padding-right:2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-left-width:.2rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-right-width:.2rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .admonition-title,[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .admonition-title,[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset .admonition-title,.md-typeset summary{background-color:#448aff1a;border:none;font-weight:700;margin:0 -.6rem;padding-bottom:.4rem;padding-top:.4rem;position:relative}html .md-typeset .admonition-title:last-child,html .md-typeset summary:last-child{margin-bottom:0}[dir=ltr] .md-typeset .admonition-title:before,[dir=ltr] .md-typeset summary:before{left:.6rem}[dir=rtl] .md-typeset .admonition-title:before,[dir=rtl] .md-typeset summary:before{right:.6rem}.md-typeset .admonition-title:before,.md-typeset summary:before{background-color:#448aff;content:"";height:1rem;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;width:1rem}.md-typeset .admonition-title code,.md-typeset summary code{box-shadow:0 0 0 .05rem var(--md-default-fg-color--lightest)}.md-typeset .admonition.note,.md-typeset details.note{border-color:#448aff}.md-typeset .admonition.note:focus-within,.md-typeset details.note:focus-within{box-shadow:0 0 0 .2rem #448aff1a}.md-typeset .note>.admonition-title,.md-typeset .note>summary{background-color:#448aff1a}.md-typeset .note>.admonition-title:before,.md-typeset .note>summary:before{background-color:#448aff;-webkit-mask-image:var(--md-admonition-icon--note);mask-image:var(--md-admonition-icon--note)}.md-typeset .note>.admonition-title:after,.md-typeset .note>summary:after{color:#448aff}.md-typeset .admonition.abstract,.md-typeset details.abstract{border-color:#00b0ff}.md-typeset .admonition.abstract:focus-within,.md-typeset details.abstract:focus-within{box-shadow:0 0 0 .2rem #00b0ff1a}.md-typeset .abstract>.admonition-title,.md-typeset .abstract>summary{background-color:#00b0ff1a}.md-typeset .abstract>.admonition-title:before,.md-typeset .abstract>summary:before{background-color:#00b0ff;-webkit-mask-image:var(--md-admonition-icon--abstract);mask-image:var(--md-admonition-icon--abstract)}.md-typeset .abstract>.admonition-title:after,.md-typeset .abstract>summary:after{color:#00b0ff}.md-typeset .admonition.info,.md-typeset details.info{border-color:#00b8d4}.md-typeset .admonition.info:focus-within,.md-typeset details.info:focus-within{box-shadow:0 0 0 .2rem #00b8d41a}.md-typeset .info>.admonition-title,.md-typeset .info>summary{background-color:#00b8d41a}.md-typeset .info>.admonition-title:before,.md-typeset .info>summary:before{background-color:#00b8d4;-webkit-mask-image:var(--md-admonition-icon--info);mask-image:var(--md-admonition-icon--info)}.md-typeset .info>.admonition-title:after,.md-typeset .info>summary:after{color:#00b8d4}.md-typeset .admonition.tip,.md-typeset details.tip{border-color:#00bfa5}.md-typeset .admonition.tip:focus-within,.md-typeset details.tip:focus-within{box-shadow:0 0 0 .2rem #00bfa51a}.md-typeset .tip>.admonition-title,.md-typeset .tip>summary{background-color:#00bfa51a}.md-typeset .tip>.admonition-title:before,.md-typeset .tip>summary:before{background-color:#00bfa5;-webkit-mask-image:var(--md-admonition-icon--tip);mask-image:var(--md-admonition-icon--tip)}.md-typeset .tip>.admonition-title:after,.md-typeset .tip>summary:after{color:#00bfa5}.md-typeset .admonition.success,.md-typeset details.success{border-color:#00c853}.md-typeset .admonition.success:focus-within,.md-typeset details.success:focus-within{box-shadow:0 0 0 .2rem #00c8531a}.md-typeset .success>.admonition-title,.md-typeset .success>summary{background-color:#00c8531a}.md-typeset .success>.admonition-title:before,.md-typeset .success>summary:before{background-color:#00c853;-webkit-mask-image:var(--md-admonition-icon--success);mask-image:var(--md-admonition-icon--success)}.md-typeset .success>.admonition-title:after,.md-typeset .success>summary:after{color:#00c853}.md-typeset .admonition.question,.md-typeset details.question{border-color:#64dd17}.md-typeset .admonition.question:focus-within,.md-typeset details.question:focus-within{box-shadow:0 0 0 .2rem #64dd171a}.md-typeset .question>.admonition-title,.md-typeset .question>summary{background-color:#64dd171a}.md-typeset .question>.admonition-title:before,.md-typeset .question>summary:before{background-color:#64dd17;-webkit-mask-image:var(--md-admonition-icon--question);mask-image:var(--md-admonition-icon--question)}.md-typeset .question>.admonition-title:after,.md-typeset .question>summary:after{color:#64dd17}.md-typeset .admonition.warning,.md-typeset details.warning{border-color:#ff9100}.md-typeset .admonition.warning:focus-within,.md-typeset details.warning:focus-within{box-shadow:0 0 0 .2rem #ff91001a}.md-typeset .warning>.admonition-title,.md-typeset .warning>summary{background-color:#ff91001a}.md-typeset .warning>.admonition-title:before,.md-typeset .warning>summary:before{background-color:#ff9100;-webkit-mask-image:var(--md-admonition-icon--warning);mask-image:var(--md-admonition-icon--warning)}.md-typeset .warning>.admonition-title:after,.md-typeset .warning>summary:after{color:#ff9100}.md-typeset .admonition.failure,.md-typeset details.failure{border-color:#ff5252}.md-typeset .admonition.failure:focus-within,.md-typeset details.failure:focus-within{box-shadow:0 0 0 .2rem #ff52521a}.md-typeset .failure>.admonition-title,.md-typeset .failure>summary{background-color:#ff52521a}.md-typeset .failure>.admonition-title:before,.md-typeset .failure>summary:before{background-color:#ff5252;-webkit-mask-image:var(--md-admonition-icon--failure);mask-image:var(--md-admonition-icon--failure)}.md-typeset .failure>.admonition-title:after,.md-typeset .failure>summary:after{color:#ff5252}.md-typeset .admonition.danger,.md-typeset details.danger{border-color:#ff1744}.md-typeset .admonition.danger:focus-within,.md-typeset details.danger:focus-within{box-shadow:0 0 0 .2rem #ff17441a}.md-typeset .danger>.admonition-title,.md-typeset .danger>summary{background-color:#ff17441a}.md-typeset .danger>.admonition-title:before,.md-typeset .danger>summary:before{background-color:#ff1744;-webkit-mask-image:var(--md-admonition-icon--danger);mask-image:var(--md-admonition-icon--danger)}.md-typeset .danger>.admonition-title:after,.md-typeset .danger>summary:after{color:#ff1744}.md-typeset .admonition.bug,.md-typeset details.bug{border-color:#f50057}.md-typeset .admonition.bug:focus-within,.md-typeset details.bug:focus-within{box-shadow:0 0 0 .2rem #f500571a}.md-typeset .bug>.admonition-title,.md-typeset .bug>summary{background-color:#f500571a}.md-typeset .bug>.admonition-title:before,.md-typeset .bug>summary:before{background-color:#f50057;-webkit-mask-image:var(--md-admonition-icon--bug);mask-image:var(--md-admonition-icon--bug)}.md-typeset .bug>.admonition-title:after,.md-typeset .bug>summary:after{color:#f50057}.md-typeset .admonition.example,.md-typeset details.example{border-color:#7c4dff}.md-typeset .admonition.example:focus-within,.md-typeset details.example:focus-within{box-shadow:0 0 0 .2rem #7c4dff1a}.md-typeset .example>.admonition-title,.md-typeset .example>summary{background-color:#7c4dff1a}.md-typeset .example>.admonition-title:before,.md-typeset .example>summary:before{background-color:#7c4dff;-webkit-mask-image:var(--md-admonition-icon--example);mask-image:var(--md-admonition-icon--example)}.md-typeset .example>.admonition-title:after,.md-typeset .example>summary:after{color:#7c4dff}.md-typeset .admonition.quote,.md-typeset details.quote{border-color:#9e9e9e}.md-typeset .admonition.quote:focus-within,.md-typeset details.quote:focus-within{box-shadow:0 0 0 .2rem #9e9e9e1a}.md-typeset .quote>.admonition-title,.md-typeset .quote>summary{background-color:#9e9e9e1a}.md-typeset .quote>.admonition-title:before,.md-typeset .quote>summary:before{background-color:#9e9e9e;-webkit-mask-image:var(--md-admonition-icon--quote);mask-image:var(--md-admonition-icon--quote)}.md-typeset .quote>.admonition-title:after,.md-typeset .quote>summary:after{color:#9e9e9e}:root{--md-footnotes-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .footnote{color:var(--md-default-fg-color--light);font-size:.64rem}[dir=ltr] .md-typeset .footnote>ol{margin-left:0}[dir=rtl] .md-typeset .footnote>ol{margin-right:0}.md-typeset .footnote>ol>li{transition:color 125ms}.md-typeset .footnote>ol>li:target{color:var(--md-default-fg-color)}.md-typeset .footnote>ol>li:focus-within .footnote-backref{opacity:1;transform:translateX(0);transition:none}.md-typeset .footnote>ol>li:hover .footnote-backref,.md-typeset .footnote>ol>li:target .footnote-backref{opacity:1;transform:translateX(0)}.md-typeset .footnote>ol>li>:first-child{margin-top:0}.md-typeset .footnote-ref{font-size:.75em;font-weight:700}html .md-typeset .footnote-ref{outline-offset:.1rem}.md-typeset [id^="fnref:"]:target>.footnote-ref{outline:auto}.md-typeset .footnote-backref{color:var(--md-typeset-a-color);display:inline-block;font-size:0;opacity:0;transform:translateX(.25rem);transition:color .25s,transform .25s .25s,opacity 125ms .25s;vertical-align:text-bottom}@media print{.md-typeset .footnote-backref{color:var(--md-typeset-a-color);opacity:1;transform:translateX(0)}}[dir=rtl] .md-typeset .footnote-backref{transform:translateX(-.25rem)}.md-typeset .footnote-backref:hover{color:var(--md-accent-fg-color)}.md-typeset .footnote-backref:before{background-color:currentcolor;content:"";display:inline-block;height:.8rem;-webkit-mask-image:var(--md-footnotes-icon);mask-image:var(--md-footnotes-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;width:.8rem}[dir=rtl] .md-typeset .footnote-backref:before svg{transform:scaleX(-1)}[dir=ltr] .md-typeset .headerlink{margin-left:.5rem}[dir=rtl] .md-typeset .headerlink{margin-right:.5rem}.md-typeset .headerlink{color:var(--md-default-fg-color--lighter);display:inline-block;opacity:0;transition:color .25s,opacity 125ms}@media print{.md-typeset .headerlink{display:none}}.md-typeset .headerlink:focus,.md-typeset :hover>.headerlink,.md-typeset :target>.headerlink{opacity:1;transition:color .25s,opacity 125ms}.md-typeset .headerlink:focus,.md-typeset .headerlink:hover,.md-typeset :target>.headerlink{color:var(--md-accent-fg-color)}.md-typeset :target{--md-scroll-margin:3.6rem;--md-scroll-offset:0rem;scroll-margin-top:calc(var(--md-scroll-margin) - var(--md-scroll-offset))}@media screen and (min-width:76.25em){.md-header--lifted~.md-container .md-typeset :target{--md-scroll-margin:6rem}}.md-typeset h1:target,.md-typeset h2:target,.md-typeset h3:target{--md-scroll-offset:0.2rem}.md-typeset h4:target{--md-scroll-offset:0.15rem}.md-typeset div.arithmatex{overflow:auto}@media screen and (max-width:44.984375em){.md-typeset div.arithmatex{margin:0 -.8rem}.md-typeset div.arithmatex>*{width:min-content}}.md-typeset div.arithmatex>*{margin-left:auto!important;margin-right:auto!important;padding:0 .8rem;touch-action:auto}.md-typeset div.arithmatex>* mjx-container{margin:0!important}.md-typeset div.arithmatex mjx-assistive-mml{height:0}.md-typeset del.critic{background-color:var(--md-typeset-del-color)}.md-typeset del.critic,.md-typeset ins.critic{-webkit-box-decoration-break:clone;box-decoration-break:clone}.md-typeset ins.critic{background-color:var(--md-typeset-ins-color)}.md-typeset .critic.comment{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:var(--md-code-hl-comment-color)}.md-typeset .critic.comment:before{content:"/* "}.md-typeset .critic.comment:after{content:" */"}.md-typeset .critic.block{box-shadow:none;display:block;margin:1em 0;overflow:auto;padding-left:.8rem;padding-right:.8rem}.md-typeset .critic.block>:first-child{margin-top:.5em}.md-typeset .critic.block>:last-child{margin-bottom:.5em}:root{--md-details-icon:url('data:image/svg+xml;charset=utf-8,')}.md-typeset details{display:flow-root;overflow:visible;padding-top:0}.md-typeset details[open]>summary:after{transform:rotate(90deg)}.md-typeset details:not([open]){box-shadow:none;padding-bottom:0}.md-typeset details:not([open])>summary{border-radius:.1rem}[dir=ltr] .md-typeset summary{padding-right:1.8rem}[dir=rtl] .md-typeset summary{padding-left:1.8rem}[dir=ltr] .md-typeset summary{border-top-left-radius:.1rem}[dir=ltr] .md-typeset summary,[dir=rtl] .md-typeset summary{border-top-right-radius:.1rem}[dir=rtl] .md-typeset summary{border-top-left-radius:.1rem}.md-typeset summary{cursor:pointer;display:block;min-height:1rem;overflow:hidden}.md-typeset summary.focus-visible{outline-color:var(--md-accent-fg-color);outline-offset:.2rem}.md-typeset summary:not(.focus-visible){-webkit-tap-highlight-color:transparent;outline:none}[dir=ltr] .md-typeset summary:after{right:.4rem}[dir=rtl] .md-typeset summary:after{left:.4rem}.md-typeset summary:after{background-color:currentcolor;content:"";height:1rem;-webkit-mask-image:var(--md-details-icon);mask-image:var(--md-details-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.625em;transform:rotate(0deg);transition:transform .25s;width:1rem}[dir=rtl] .md-typeset summary:after{transform:rotate(180deg)}.md-typeset summary::marker{display:none}.md-typeset summary::-webkit-details-marker{display:none}.md-typeset .emojione,.md-typeset .gemoji,.md-typeset .twemoji{--md-icon-size:1.125em;display:inline-flex;height:var(--md-icon-size);vertical-align:text-top}.md-typeset .emojione svg,.md-typeset .gemoji svg,.md-typeset .twemoji svg{fill:currentcolor;max-height:100%;width:var(--md-icon-size)}.md-typeset .lg,.md-typeset .xl,.md-typeset .xxl,.md-typeset .xxxl{vertical-align:text-bottom}.md-typeset .middle{vertical-align:middle}.md-typeset .lg{--md-icon-size:1.5em}.md-typeset .xl{--md-icon-size:2.25em}.md-typeset .xxl{--md-icon-size:3em}.md-typeset .xxxl{--md-icon-size:4em}.highlight .o,.highlight .ow{color:var(--md-code-hl-operator-color)}.highlight .p{color:var(--md-code-hl-punctuation-color)}.highlight .cpf,.highlight .l,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .si,.highlight .ss{color:var(--md-code-hl-string-color)}.highlight .cp,.highlight .se,.highlight .sh,.highlight .sr,.highlight .sx{color:var(--md-code-hl-special-color)}.highlight .il,.highlight .m,.highlight .mb,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo{color:var(--md-code-hl-number-color)}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:var(--md-code-hl-keyword-color)}.highlight .kc,.highlight .n{color:var(--md-code-hl-name-color)}.highlight .bp,.highlight .nb,.highlight .no{color:var(--md-code-hl-constant-color)}.highlight .nc,.highlight .ne,.highlight .nf,.highlight .nn{color:var(--md-code-hl-function-color)}.highlight .nd,.highlight .ni,.highlight .nl,.highlight .nt{color:var(--md-code-hl-keyword-color)}.highlight .c,.highlight .c1,.highlight .ch,.highlight .cm,.highlight .cs,.highlight .sd{color:var(--md-code-hl-comment-color)}.highlight .na,.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:var(--md-code-hl-variable-color)}.highlight .ge,.highlight .gh,.highlight .go,.highlight .gp,.highlight .gr,.highlight .gs,.highlight .gt,.highlight .gu{color:var(--md-code-hl-generic-color)}.highlight .gd,.highlight .gi{border-radius:.1rem;margin:0 -.125em;padding:0 .125em}.highlight .gd{background-color:var(--md-typeset-del-color)}.highlight .gi{background-color:var(--md-typeset-ins-color)}.highlight .hll{background-color:var(--md-code-hl-color--light);box-shadow:2px 0 0 0 var(--md-code-hl-color) inset;display:block;margin:0 -1.1764705882em;padding:0 1.1764705882em}.highlight span.filename{background-color:var(--md-code-bg-color);border-bottom:.05rem solid var(--md-default-fg-color--lightest);border-top-left-radius:.1rem;border-top-right-radius:.1rem;display:flow-root;font-size:.85em;font-weight:700;margin-top:1em;padding:.6617647059em 1.1764705882em;position:relative}.highlight span.filename+pre{margin-top:0}.highlight span.filename+pre>code{border-top-left-radius:0;border-top-right-radius:0}.highlight [data-linenos]:before{background-color:var(--md-code-bg-color);box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset;color:var(--md-default-fg-color--light);content:attr(data-linenos);float:left;left:-1.1764705882em;margin-left:-1.1764705882em;margin-right:1.1764705882em;padding-left:1.1764705882em;position:sticky;-webkit-user-select:none;user-select:none;z-index:3}.highlight code a[id]{position:absolute;visibility:hidden}.highlight code[data-md-copying]{display:initial}.highlight code[data-md-copying] .hll{display:contents}.highlight code[data-md-copying] .md-annotation{display:none}.highlighttable{display:flow-root}.highlighttable tbody,.highlighttable td{display:block;padding:0}.highlighttable tr{display:flex}.highlighttable pre{margin:0}.highlighttable th.filename{flex-grow:1;padding:0;text-align:left}.highlighttable th.filename span.filename{margin-top:0}.highlighttable .linenos{background-color:var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-top-left-radius:.1rem;font-size:.85em;padding:.7720588235em 0 .7720588235em 1.1764705882em;-webkit-user-select:none;user-select:none}.highlighttable .linenodiv{box-shadow:-.05rem 0 var(--md-default-fg-color--lightest) inset}.highlighttable .linenodiv pre{color:var(--md-default-fg-color--light);text-align:right}.highlighttable .linenodiv span[class]{padding-right:.5882352941em}.highlighttable .code{flex:1;min-width:0}.linenodiv a{color:inherit}.md-typeset .highlighttable{direction:ltr;margin:1em 0}.md-typeset .highlighttable>tbody>tr>.code>div>pre>code{border-bottom-left-radius:0;border-top-left-radius:0}.md-typeset .highlight+.result{border:.05rem solid var(--md-code-bg-color);border-bottom-left-radius:.1rem;border-bottom-right-radius:.1rem;border-top-width:.1rem;margin-top:-1.125em;overflow:visible;padding:0 1em}.md-typeset .highlight+.result:after{clear:both;content:"";display:block}@media screen and (max-width:44.984375em){.md-content__inner>.highlight{margin:1em -.8rem}.md-content__inner>.highlight>.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.code>div>pre>code,.md-content__inner>.highlight>.highlighttable>tbody>tr>.filename span.filename,.md-content__inner>.highlight>.highlighttable>tbody>tr>.linenos,.md-content__inner>.highlight>pre>code{border-radius:0}.md-content__inner>.highlight+.result{border-left-width:0;border-radius:0;border-right-width:0;margin-left:-.8rem;margin-right:-.8rem}}.md-typeset .keys kbd:after,.md-typeset .keys kbd:before{-moz-osx-font-smoothing:initial;-webkit-font-smoothing:initial;color:inherit;margin:0;position:relative}.md-typeset .keys span{color:var(--md-default-fg-color--light);padding:0 .2em}.md-typeset .keys .key-alt:before,.md-typeset .keys .key-left-alt:before,.md-typeset .keys .key-right-alt:before{content:"⎇";padding-right:.4em}.md-typeset .keys .key-command:before,.md-typeset .keys .key-left-command:before,.md-typeset .keys .key-right-command:before{content:"⌘";padding-right:.4em}.md-typeset .keys .key-control:before,.md-typeset .keys .key-left-control:before,.md-typeset .keys .key-right-control:before{content:"⌃";padding-right:.4em}.md-typeset .keys .key-left-meta:before,.md-typeset .keys .key-meta:before,.md-typeset .keys .key-right-meta:before{content:"◆";padding-right:.4em}.md-typeset .keys .key-left-option:before,.md-typeset .keys .key-option:before,.md-typeset .keys .key-right-option:before{content:"⌥";padding-right:.4em}.md-typeset .keys .key-left-shift:before,.md-typeset .keys .key-right-shift:before,.md-typeset .keys .key-shift:before{content:"⇧";padding-right:.4em}.md-typeset .keys .key-left-super:before,.md-typeset .keys .key-right-super:before,.md-typeset .keys .key-super:before{content:"❖";padding-right:.4em}.md-typeset .keys .key-left-windows:before,.md-typeset .keys .key-right-windows:before,.md-typeset .keys .key-windows:before{content:"⊞";padding-right:.4em}.md-typeset .keys .key-arrow-down:before{content:"↓";padding-right:.4em}.md-typeset .keys .key-arrow-left:before{content:"←";padding-right:.4em}.md-typeset .keys .key-arrow-right:before{content:"→";padding-right:.4em}.md-typeset .keys .key-arrow-up:before{content:"↑";padding-right:.4em}.md-typeset .keys .key-backspace:before{content:"⌫";padding-right:.4em}.md-typeset .keys .key-backtab:before{content:"⇤";padding-right:.4em}.md-typeset .keys .key-caps-lock:before{content:"⇪";padding-right:.4em}.md-typeset .keys .key-clear:before{content:"⌧";padding-right:.4em}.md-typeset .keys .key-context-menu:before{content:"☰";padding-right:.4em}.md-typeset .keys .key-delete:before{content:"⌦";padding-right:.4em}.md-typeset .keys .key-eject:before{content:"⏏";padding-right:.4em}.md-typeset .keys .key-end:before{content:"⤓";padding-right:.4em}.md-typeset .keys .key-escape:before{content:"⎋";padding-right:.4em}.md-typeset .keys .key-home:before{content:"⤒";padding-right:.4em}.md-typeset .keys .key-insert:before{content:"⎀";padding-right:.4em}.md-typeset .keys .key-page-down:before{content:"⇟";padding-right:.4em}.md-typeset .keys .key-page-up:before{content:"⇞";padding-right:.4em}.md-typeset .keys .key-print-screen:before{content:"⎙";padding-right:.4em}.md-typeset .keys .key-tab:after{content:"⇥";padding-left:.4em}.md-typeset .keys .key-num-enter:after{content:"⌤";padding-left:.4em}.md-typeset .keys .key-enter:after{content:"⏎";padding-left:.4em}:root{--md-tabbed-icon--prev:url('data:image/svg+xml;charset=utf-8,');--md-tabbed-icon--next:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .tabbed-set{border-radius:.1rem;display:flex;flex-flow:column wrap;margin:1em 0;position:relative}.md-typeset .tabbed-set>input{height:0;opacity:0;position:absolute;width:0}.md-typeset .tabbed-set>input:target{--md-scroll-offset:0.625em}.md-typeset .tabbed-set>input.focus-visible~.tabbed-labels:before{background-color:var(--md-accent-fg-color)}.md-typeset .tabbed-labels{-ms-overflow-style:none;box-shadow:0 -.05rem var(--md-default-fg-color--lightest) inset;display:flex;max-width:100%;overflow:auto;scrollbar-width:none}@media print{.md-typeset .tabbed-labels{display:contents}}@media screen{.js .md-typeset .tabbed-labels{position:relative}.js .md-typeset .tabbed-labels:before{background:var(--md-default-fg-color);bottom:0;content:"";display:block;height:2px;left:0;position:absolute;transform:translateX(var(--md-indicator-x));transition:width 225ms,background-color .25s,transform .25s;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--md-indicator-width)}}.md-typeset .tabbed-labels::-webkit-scrollbar{display:none}.md-typeset .tabbed-labels>label{border-bottom:.1rem solid #0000;border-radius:.1rem .1rem 0 0;color:var(--md-default-fg-color--light);cursor:pointer;flex-shrink:0;font-size:.64rem;font-weight:700;padding:.78125em 1.25em .625em;scroll-margin-inline-start:1rem;transition:background-color .25s,color .25s;white-space:nowrap;width:auto}@media print{.md-typeset .tabbed-labels>label:first-child{order:1}.md-typeset .tabbed-labels>label:nth-child(2){order:2}.md-typeset .tabbed-labels>label:nth-child(3){order:3}.md-typeset .tabbed-labels>label:nth-child(4){order:4}.md-typeset .tabbed-labels>label:nth-child(5){order:5}.md-typeset .tabbed-labels>label:nth-child(6){order:6}.md-typeset .tabbed-labels>label:nth-child(7){order:7}.md-typeset .tabbed-labels>label:nth-child(8){order:8}.md-typeset .tabbed-labels>label:nth-child(9){order:9}.md-typeset .tabbed-labels>label:nth-child(10){order:10}.md-typeset .tabbed-labels>label:nth-child(11){order:11}.md-typeset .tabbed-labels>label:nth-child(12){order:12}.md-typeset .tabbed-labels>label:nth-child(13){order:13}.md-typeset .tabbed-labels>label:nth-child(14){order:14}.md-typeset .tabbed-labels>label:nth-child(15){order:15}.md-typeset .tabbed-labels>label:nth-child(16){order:16}.md-typeset .tabbed-labels>label:nth-child(17){order:17}.md-typeset .tabbed-labels>label:nth-child(18){order:18}.md-typeset .tabbed-labels>label:nth-child(19){order:19}.md-typeset .tabbed-labels>label:nth-child(20){order:20}}.md-typeset .tabbed-labels>label:hover{color:var(--md-default-fg-color)}.md-typeset .tabbed-labels>label>[href]:first-child{color:inherit}.md-typeset .tabbed-labels--linked>label{padding:0}.md-typeset .tabbed-labels--linked>label>a{display:block;padding:.78125em 1.25em .625em}.md-typeset .tabbed-content{width:100%}@media print{.md-typeset .tabbed-content{display:contents}}.md-typeset .tabbed-block{display:none}@media print{.md-typeset .tabbed-block{display:block}.md-typeset .tabbed-block:first-child{order:1}.md-typeset .tabbed-block:nth-child(2){order:2}.md-typeset .tabbed-block:nth-child(3){order:3}.md-typeset .tabbed-block:nth-child(4){order:4}.md-typeset .tabbed-block:nth-child(5){order:5}.md-typeset .tabbed-block:nth-child(6){order:6}.md-typeset .tabbed-block:nth-child(7){order:7}.md-typeset .tabbed-block:nth-child(8){order:8}.md-typeset .tabbed-block:nth-child(9){order:9}.md-typeset .tabbed-block:nth-child(10){order:10}.md-typeset .tabbed-block:nth-child(11){order:11}.md-typeset .tabbed-block:nth-child(12){order:12}.md-typeset .tabbed-block:nth-child(13){order:13}.md-typeset .tabbed-block:nth-child(14){order:14}.md-typeset .tabbed-block:nth-child(15){order:15}.md-typeset .tabbed-block:nth-child(16){order:16}.md-typeset .tabbed-block:nth-child(17){order:17}.md-typeset .tabbed-block:nth-child(18){order:18}.md-typeset .tabbed-block:nth-child(19){order:19}.md-typeset .tabbed-block:nth-child(20){order:20}}.md-typeset .tabbed-block>.highlight:first-child>pre,.md-typeset .tabbed-block>pre:first-child{margin:0}.md-typeset .tabbed-block>.highlight:first-child>pre>code,.md-typeset .tabbed-block>pre:first-child>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child>.filename{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable{margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.filename span.filename,.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.linenos{border-top-left-radius:0;border-top-right-radius:0;margin:0}.md-typeset .tabbed-block>.highlight:first-child>.highlighttable>tbody>tr>.code>div>pre>code{border-top-left-radius:0;border-top-right-radius:0}.md-typeset .tabbed-block>.highlight:first-child+.result{margin-top:-.125em}.md-typeset .tabbed-block>.tabbed-set{margin:0}.md-typeset .tabbed-button{align-self:center;border-radius:100%;color:var(--md-default-fg-color--light);cursor:pointer;display:block;height:.9rem;margin-top:.1rem;pointer-events:auto;transition:background-color .25s;width:.9rem}.md-typeset .tabbed-button:hover{background-color:var(--md-accent-fg-color--transparent);color:var(--md-accent-fg-color)}.md-typeset .tabbed-button:after{background-color:currentcolor;content:"";display:block;height:100%;-webkit-mask-image:var(--md-tabbed-icon--prev);mask-image:var(--md-tabbed-icon--prev);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;transition:background-color .25s,transform .25s;width:100%}.md-typeset .tabbed-control{background:linear-gradient(to right,var(--md-default-bg-color) 60%,#0000);display:flex;height:1.9rem;justify-content:start;pointer-events:none;position:absolute;transition:opacity 125ms;width:1.2rem}[dir=rtl] .md-typeset .tabbed-control{transform:rotate(180deg)}.md-typeset .tabbed-control[hidden]{opacity:0}.md-typeset .tabbed-control--next{background:linear-gradient(to left,var(--md-default-bg-color) 60%,#0000);justify-content:end;right:0}.md-typeset .tabbed-control--next .tabbed-button:after{-webkit-mask-image:var(--md-tabbed-icon--next);mask-image:var(--md-tabbed-icon--next)}@media screen and (max-width:44.984375em){[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels{padding-right:.8rem}.md-content__inner>.tabbed-set .tabbed-labels{margin:0 -.8rem;max-width:100vw;scroll-padding-inline-start:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels:after{padding-left:.8rem}.md-content__inner>.tabbed-set .tabbed-labels:after{content:""}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-left:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{padding-right:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-left:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{margin-right:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--prev{width:2rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-right:.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{padding-left:.8rem}[dir=ltr] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-right:-.8rem}[dir=rtl] .md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{margin-left:-.8rem}.md-content__inner>.tabbed-set .tabbed-labels~.tabbed-control--next{width:2rem}}@media screen{.md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){color:var(--md-default-fg-color)}.md-typeset .no-js .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.md-typeset .no-js .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.md-typeset .no-js .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.md-typeset .no-js .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.md-typeset .no-js .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.md-typeset .no-js .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.md-typeset .no-js .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.md-typeset .no-js .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.md-typeset .no-js .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.md-typeset .no-js .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.md-typeset .no-js .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.md-typeset .no-js .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.md-typeset .no-js .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.md-typeset .no-js .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.md-typeset .no-js .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.md-typeset .no-js .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.md-typeset .no-js .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.md-typeset .no-js .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.md-typeset .no-js .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.md-typeset .no-js .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9),.no-js .md-typeset .tabbed-set>input:first-child:checked~.tabbed-labels>:first-child,.no-js .md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-labels>:nth-child(10),.no-js .md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-labels>:nth-child(11),.no-js .md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-labels>:nth-child(12),.no-js .md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-labels>:nth-child(13),.no-js .md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-labels>:nth-child(14),.no-js .md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-labels>:nth-child(15),.no-js .md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-labels>:nth-child(16),.no-js .md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-labels>:nth-child(17),.no-js .md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-labels>:nth-child(18),.no-js .md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-labels>:nth-child(19),.no-js .md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-labels>:nth-child(2),.no-js .md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-labels>:nth-child(20),.no-js .md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-labels>:nth-child(3),.no-js .md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-labels>:nth-child(4),.no-js .md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-labels>:nth-child(5),.no-js .md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-labels>:nth-child(6),.no-js .md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-labels>:nth-child(7),.no-js .md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-labels>:nth-child(8),.no-js .md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-labels>:nth-child(9){border-color:var(--md-default-fg-color)}}.md-typeset .tabbed-set>input:first-child.focus-visible~.tabbed-labels>:first-child,.md-typeset .tabbed-set>input:nth-child(10).focus-visible~.tabbed-labels>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11).focus-visible~.tabbed-labels>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12).focus-visible~.tabbed-labels>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13).focus-visible~.tabbed-labels>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14).focus-visible~.tabbed-labels>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15).focus-visible~.tabbed-labels>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16).focus-visible~.tabbed-labels>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17).focus-visible~.tabbed-labels>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18).focus-visible~.tabbed-labels>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19).focus-visible~.tabbed-labels>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2).focus-visible~.tabbed-labels>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20).focus-visible~.tabbed-labels>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3).focus-visible~.tabbed-labels>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4).focus-visible~.tabbed-labels>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5).focus-visible~.tabbed-labels>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6).focus-visible~.tabbed-labels>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7).focus-visible~.tabbed-labels>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8).focus-visible~.tabbed-labels>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9).focus-visible~.tabbed-labels>:nth-child(9){color:var(--md-accent-fg-color)}.md-typeset .tabbed-set>input:first-child:checked~.tabbed-content>:first-child,.md-typeset .tabbed-set>input:nth-child(10):checked~.tabbed-content>:nth-child(10),.md-typeset .tabbed-set>input:nth-child(11):checked~.tabbed-content>:nth-child(11),.md-typeset .tabbed-set>input:nth-child(12):checked~.tabbed-content>:nth-child(12),.md-typeset .tabbed-set>input:nth-child(13):checked~.tabbed-content>:nth-child(13),.md-typeset .tabbed-set>input:nth-child(14):checked~.tabbed-content>:nth-child(14),.md-typeset .tabbed-set>input:nth-child(15):checked~.tabbed-content>:nth-child(15),.md-typeset .tabbed-set>input:nth-child(16):checked~.tabbed-content>:nth-child(16),.md-typeset .tabbed-set>input:nth-child(17):checked~.tabbed-content>:nth-child(17),.md-typeset .tabbed-set>input:nth-child(18):checked~.tabbed-content>:nth-child(18),.md-typeset .tabbed-set>input:nth-child(19):checked~.tabbed-content>:nth-child(19),.md-typeset .tabbed-set>input:nth-child(2):checked~.tabbed-content>:nth-child(2),.md-typeset .tabbed-set>input:nth-child(20):checked~.tabbed-content>:nth-child(20),.md-typeset .tabbed-set>input:nth-child(3):checked~.tabbed-content>:nth-child(3),.md-typeset .tabbed-set>input:nth-child(4):checked~.tabbed-content>:nth-child(4),.md-typeset .tabbed-set>input:nth-child(5):checked~.tabbed-content>:nth-child(5),.md-typeset .tabbed-set>input:nth-child(6):checked~.tabbed-content>:nth-child(6),.md-typeset .tabbed-set>input:nth-child(7):checked~.tabbed-content>:nth-child(7),.md-typeset .tabbed-set>input:nth-child(8):checked~.tabbed-content>:nth-child(8),.md-typeset .tabbed-set>input:nth-child(9):checked~.tabbed-content>:nth-child(9){display:block}:root{--md-tasklist-icon:url('data:image/svg+xml;charset=utf-8,');--md-tasklist-icon--checked:url('data:image/svg+xml;charset=utf-8,')}.md-typeset .task-list-item{list-style-type:none;position:relative}[dir=ltr] .md-typeset .task-list-item [type=checkbox]{left:-2em}[dir=rtl] .md-typeset .task-list-item [type=checkbox]{right:-2em}.md-typeset .task-list-item [type=checkbox]{position:absolute;top:.45em}.md-typeset .task-list-control [type=checkbox]{opacity:0;z-index:-1}[dir=ltr] .md-typeset .task-list-indicator:before{left:-1.5em}[dir=rtl] .md-typeset .task-list-indicator:before{right:-1.5em}.md-typeset .task-list-indicator:before{background-color:var(--md-default-fg-color--lightest);content:"";height:1.25em;-webkit-mask-image:var(--md-tasklist-icon);mask-image:var(--md-tasklist-icon);-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;position:absolute;top:.15em;width:1.25em}.md-typeset [type=checkbox]:checked+.task-list-indicator:before{background-color:#00e676;-webkit-mask-image:var(--md-tasklist-icon--checked);mask-image:var(--md-tasklist-icon--checked)}:root>*{--md-mermaid-font-family:var(--md-text-font-family),sans-serif;--md-mermaid-edge-color:var(--md-code-fg-color);--md-mermaid-node-bg-color:var(--md-accent-fg-color--transparent);--md-mermaid-node-fg-color:var(--md-accent-fg-color);--md-mermaid-label-bg-color:var(--md-default-bg-color);--md-mermaid-label-fg-color:var(--md-code-fg-color);--md-mermaid-sequence-actor-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actor-fg-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-actor-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-actor-line-color:var(--md-default-fg-color--lighter);--md-mermaid-sequence-actorman-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-actorman-line-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-box-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-box-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-label-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-label-fg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-loop-bg-color:var(--md-mermaid-node-bg-color);--md-mermaid-sequence-loop-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-loop-border-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-message-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-message-line-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-bg-color:var(--md-mermaid-label-bg-color);--md-mermaid-sequence-note-fg-color:var(--md-mermaid-edge-color);--md-mermaid-sequence-note-border-color:var(--md-mermaid-label-fg-color);--md-mermaid-sequence-number-bg-color:var(--md-mermaid-node-fg-color);--md-mermaid-sequence-number-fg-color:var(--md-accent-bg-color)}.mermaid{line-height:normal;margin:1em 0}.md-typeset .grid{grid-gap:.4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));margin:1em 0}.md-typeset .grid.cards>ol,.md-typeset .grid.cards>ul{display:contents}.md-typeset .grid.cards>ol>li,.md-typeset .grid.cards>ul>li,.md-typeset .grid>.card{border:.05rem solid var(--md-default-fg-color--lightest);border-radius:.1rem;display:block;margin:0;padding:.8rem;transition:border .25s,box-shadow .25s}.md-typeset .grid.cards>ol>li:focus-within,.md-typeset .grid.cards>ol>li:hover,.md-typeset .grid.cards>ul>li:focus-within,.md-typeset .grid.cards>ul>li:hover,.md-typeset .grid>.card:focus-within,.md-typeset .grid>.card:hover{border-color:#0000;box-shadow:var(--md-shadow-z2)}.md-typeset .grid.cards>ol>li>hr,.md-typeset .grid.cards>ul>li>hr,.md-typeset .grid>.card>hr{margin-bottom:1em;margin-top:1em}.md-typeset .grid.cards>ol>li>:first-child,.md-typeset .grid.cards>ul>li>:first-child,.md-typeset .grid>.card>:first-child{margin-top:0}.md-typeset .grid.cards>ol>li>:last-child,.md-typeset .grid.cards>ul>li>:last-child,.md-typeset .grid>.card>:last-child{margin-bottom:0}.md-typeset .grid>*,.md-typeset .grid>.admonition,.md-typeset .grid>.highlight>*,.md-typeset .grid>.highlighttable,.md-typeset .grid>.md-typeset details,.md-typeset .grid>details,.md-typeset .grid>pre{margin-bottom:0;margin-top:0}.md-typeset .grid>.highlight>pre:only-child,.md-typeset .grid>.highlight>pre>code,.md-typeset .grid>.highlighttable,.md-typeset .grid>.highlighttable>tbody,.md-typeset .grid>.highlighttable>tbody>tr,.md-typeset .grid>.highlighttable>tbody>tr>.code,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight>pre,.md-typeset .grid>.highlighttable>tbody>tr>.code>.highlight>pre>code{height:100%}.md-typeset .grid>.tabbed-set{margin-bottom:0;margin-top:0}@media screen and (min-width:45em){[dir=ltr] .md-typeset .inline{float:left}[dir=rtl] .md-typeset .inline{float:right}[dir=ltr] .md-typeset .inline{margin-right:.8rem}[dir=rtl] .md-typeset .inline{margin-left:.8rem}.md-typeset .inline{margin-bottom:.8rem;margin-top:0;width:11.7rem}[dir=ltr] .md-typeset .inline.end{float:right}[dir=rtl] .md-typeset .inline.end{float:left}[dir=ltr] .md-typeset .inline.end{margin-left:.8rem;margin-right:0}[dir=rtl] .md-typeset .inline.end{margin-left:0;margin-right:.8rem}} \ No newline at end of file diff --git a/1.0.X/assets/stylesheets/palette.ab4e12ef.min.css b/1.0.X/assets/stylesheets/palette.ab4e12ef.min.css new file mode 100755 index 0000000..75aaf84 --- /dev/null +++ b/1.0.X/assets/stylesheets/palette.ab4e12ef.min.css @@ -0,0 +1 @@ +@media screen{[data-md-color-scheme=slate]{--md-default-fg-color:hsla(var(--md-hue),15%,90%,0.82);--md-default-fg-color--light:hsla(var(--md-hue),15%,90%,0.56);--md-default-fg-color--lighter:hsla(var(--md-hue),15%,90%,0.32);--md-default-fg-color--lightest:hsla(var(--md-hue),15%,90%,0.12);--md-default-bg-color:hsla(var(--md-hue),15%,14%,1);--md-default-bg-color--light:hsla(var(--md-hue),15%,14%,0.54);--md-default-bg-color--lighter:hsla(var(--md-hue),15%,14%,0.26);--md-default-bg-color--lightest:hsla(var(--md-hue),15%,14%,0.07);--md-code-fg-color:hsla(var(--md-hue),18%,86%,0.82);--md-code-bg-color:hsla(var(--md-hue),15%,18%,1);--md-code-bg-color--light:hsla(var(--md-hue),15%,18%,0.9);--md-code-bg-color--lighter:hsla(var(--md-hue),15%,18%,0.54);--md-code-hl-color:#2977ff;--md-code-hl-color--light:#2977ff1a;--md-code-hl-number-color:#e6695b;--md-code-hl-special-color:#f06090;--md-code-hl-function-color:#c973d9;--md-code-hl-constant-color:#9383e2;--md-code-hl-keyword-color:#6791e0;--md-code-hl-string-color:#2fb170;--md-code-hl-name-color:var(--md-code-fg-color);--md-code-hl-operator-color:var(--md-default-fg-color--light);--md-code-hl-punctuation-color:var(--md-default-fg-color--light);--md-code-hl-comment-color:var(--md-default-fg-color--light);--md-code-hl-generic-color:var(--md-default-fg-color--light);--md-code-hl-variable-color:var(--md-default-fg-color--light);--md-typeset-color:var(--md-default-fg-color);--md-typeset-a-color:var(--md-primary-fg-color);--md-typeset-kbd-color:hsla(var(--md-hue),15%,90%,0.12);--md-typeset-kbd-accent-color:hsla(var(--md-hue),15%,90%,0.2);--md-typeset-kbd-border-color:hsla(var(--md-hue),15%,14%,1);--md-typeset-mark-color:#4287ff4d;--md-typeset-table-color:hsla(var(--md-hue),15%,95%,0.12);--md-typeset-table-color--light:hsla(var(--md-hue),15%,95%,0.035);--md-admonition-fg-color:var(--md-default-fg-color);--md-admonition-bg-color:var(--md-default-bg-color);--md-footer-bg-color:hsla(var(--md-hue),15%,10%,0.87);--md-footer-bg-color--dark:hsla(var(--md-hue),15%,8%,1);--md-shadow-z1:0 0.2rem 0.5rem #0000000d,0 0 0.05rem #0000001a;--md-shadow-z2:0 0.2rem 0.5rem #00000040,0 0 0.05rem #00000040;--md-shadow-z3:0 0.2rem 0.5rem #0006,0 0 0.05rem #00000059;color-scheme:dark}[data-md-color-scheme=slate] img[src$="#gh-light-mode-only"],[data-md-color-scheme=slate] img[src$="#only-light"]{display:none}[data-md-color-scheme=slate][data-md-color-primary=pink]{--md-typeset-a-color:#ed5487}[data-md-color-scheme=slate][data-md-color-primary=purple]{--md-typeset-a-color:#c46fd3}[data-md-color-scheme=slate][data-md-color-primary=deep-purple]{--md-typeset-a-color:#a47bea}[data-md-color-scheme=slate][data-md-color-primary=indigo]{--md-typeset-a-color:#5488e8}[data-md-color-scheme=slate][data-md-color-primary=teal]{--md-typeset-a-color:#00ccb8}[data-md-color-scheme=slate][data-md-color-primary=green]{--md-typeset-a-color:#71c174}[data-md-color-scheme=slate][data-md-color-primary=deep-orange]{--md-typeset-a-color:#ff764d}[data-md-color-scheme=slate][data-md-color-primary=brown]{--md-typeset-a-color:#c1775c}[data-md-color-scheme=slate][data-md-color-primary=black],[data-md-color-scheme=slate][data-md-color-primary=blue-grey],[data-md-color-scheme=slate][data-md-color-primary=grey],[data-md-color-scheme=slate][data-md-color-primary=white]{--md-typeset-a-color:#5e8bde}[data-md-color-switching] *,[data-md-color-switching] :after,[data-md-color-switching] :before{transition-duration:0ms!important}}[data-md-color-accent=red]{--md-accent-fg-color:#ff1947;--md-accent-fg-color--transparent:#ff19471a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=pink]{--md-accent-fg-color:#f50056;--md-accent-fg-color--transparent:#f500561a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=purple]{--md-accent-fg-color:#df41fb;--md-accent-fg-color--transparent:#df41fb1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=deep-purple]{--md-accent-fg-color:#7c4dff;--md-accent-fg-color--transparent:#7c4dff1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=indigo]{--md-accent-fg-color:#526cfe;--md-accent-fg-color--transparent:#526cfe1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=blue]{--md-accent-fg-color:#4287ff;--md-accent-fg-color--transparent:#4287ff1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=light-blue]{--md-accent-fg-color:#0091eb;--md-accent-fg-color--transparent:#0091eb1a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=cyan]{--md-accent-fg-color:#00bad6;--md-accent-fg-color--transparent:#00bad61a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=teal]{--md-accent-fg-color:#00bda4;--md-accent-fg-color--transparent:#00bda41a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=green]{--md-accent-fg-color:#00c753;--md-accent-fg-color--transparent:#00c7531a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=light-green]{--md-accent-fg-color:#63de17;--md-accent-fg-color--transparent:#63de171a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-accent=lime]{--md-accent-fg-color:#b0eb00;--md-accent-fg-color--transparent:#b0eb001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=yellow]{--md-accent-fg-color:#ffd500;--md-accent-fg-color--transparent:#ffd5001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=amber]{--md-accent-fg-color:#fa0;--md-accent-fg-color--transparent:#ffaa001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=orange]{--md-accent-fg-color:#ff9100;--md-accent-fg-color--transparent:#ff91001a;--md-accent-bg-color:#000000de;--md-accent-bg-color--light:#0000008a}[data-md-color-accent=deep-orange]{--md-accent-fg-color:#ff6e42;--md-accent-fg-color--transparent:#ff6e421a;--md-accent-bg-color:#fff;--md-accent-bg-color--light:#ffffffb3}[data-md-color-primary=red]{--md-primary-fg-color:#ef5552;--md-primary-fg-color--light:#e57171;--md-primary-fg-color--dark:#e53734;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=pink]{--md-primary-fg-color:#e92063;--md-primary-fg-color--light:#ec417a;--md-primary-fg-color--dark:#c3185d;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=purple]{--md-primary-fg-color:#ab47bd;--md-primary-fg-color--light:#bb69c9;--md-primary-fg-color--dark:#8c24a8;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=deep-purple]{--md-primary-fg-color:#7e56c2;--md-primary-fg-color--light:#9574cd;--md-primary-fg-color--dark:#673ab6;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=indigo]{--md-primary-fg-color:#4051b5;--md-primary-fg-color--light:#5d6cc0;--md-primary-fg-color--dark:#303fa1;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=blue]{--md-primary-fg-color:#2094f3;--md-primary-fg-color--light:#42a5f5;--md-primary-fg-color--dark:#1975d2;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=light-blue]{--md-primary-fg-color:#02a6f2;--md-primary-fg-color--light:#28b5f6;--md-primary-fg-color--dark:#0287cf;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=cyan]{--md-primary-fg-color:#00bdd6;--md-primary-fg-color--light:#25c5da;--md-primary-fg-color--dark:#0097a8;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=teal]{--md-primary-fg-color:#009485;--md-primary-fg-color--light:#26a699;--md-primary-fg-color--dark:#007a6c;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=green]{--md-primary-fg-color:#4cae4f;--md-primary-fg-color--light:#68bb6c;--md-primary-fg-color--dark:#398e3d;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=light-green]{--md-primary-fg-color:#8bc34b;--md-primary-fg-color--light:#9ccc66;--md-primary-fg-color--dark:#689f38;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=lime]{--md-primary-fg-color:#cbdc38;--md-primary-fg-color--light:#d3e156;--md-primary-fg-color--dark:#b0b52c;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=yellow]{--md-primary-fg-color:#ffec3d;--md-primary-fg-color--light:#ffee57;--md-primary-fg-color--dark:#fbc02d;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=amber]{--md-primary-fg-color:#ffc105;--md-primary-fg-color--light:#ffc929;--md-primary-fg-color--dark:#ffa200;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=orange]{--md-primary-fg-color:#ffa724;--md-primary-fg-color--light:#ffa724;--md-primary-fg-color--dark:#fa8900;--md-primary-bg-color:#000000de;--md-primary-bg-color--light:#0000008a}[data-md-color-primary=deep-orange]{--md-primary-fg-color:#ff6e42;--md-primary-fg-color--light:#ff8a66;--md-primary-fg-color--dark:#f4511f;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=brown]{--md-primary-fg-color:#795649;--md-primary-fg-color--light:#8d6e62;--md-primary-fg-color--dark:#5d4037;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3}[data-md-color-primary=grey]{--md-primary-fg-color:#757575;--md-primary-fg-color--light:#9e9e9e;--md-primary-fg-color--dark:#616161;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-typeset-a-color:#4051b5}[data-md-color-primary=blue-grey]{--md-primary-fg-color:#546d78;--md-primary-fg-color--light:#607c8a;--md-primary-fg-color--dark:#455a63;--md-primary-bg-color:#fff;--md-primary-bg-color--light:#ffffffb3;--md-typeset-a-color:#4051b5}[data-md-color-primary=light-green]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#72ad2e}[data-md-color-primary=lime]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#8b990a}[data-md-color-primary=yellow]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#b8a500}[data-md-color-primary=amber]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#d19d00}[data-md-color-primary=orange]:not([data-md-color-scheme=slate]){--md-typeset-a-color:#e68a00}[data-md-color-primary=white]{--md-primary-fg-color:hsla(var(--md-hue),0%,100%,1);--md-primary-fg-color--light:hsla(var(--md-hue),0%,100%,0.7);--md-primary-fg-color--dark:hsla(var(--md-hue),0%,0%,0.07);--md-primary-bg-color:hsla(var(--md-hue),0%,0%,0.87);--md-primary-bg-color--light:hsla(var(--md-hue),0%,0%,0.54);--md-typeset-a-color:#4051b5}[data-md-color-primary=white] .md-button{color:var(--md-typeset-a-color)}[data-md-color-primary=white] .md-button--primary{background-color:var(--md-typeset-a-color);border-color:var(--md-typeset-a-color);color:hsla(var(--md-hue),0%,100%,1)}@media screen and (min-width:60em){[data-md-color-primary=white] .md-search__form{background-color:hsla(var(--md-hue),0%,0%,.07)}[data-md-color-primary=white] .md-search__form:hover{background-color:hsla(var(--md-hue),0%,0%,.32)}[data-md-color-primary=white] .md-search__input+.md-search__icon{color:hsla(var(--md-hue),0%,0%,.87)}}@media screen and (min-width:76.25em){[data-md-color-primary=white] .md-tabs{border-bottom:.05rem solid #00000012}}[data-md-color-primary=black]{--md-primary-fg-color:hsla(var(--md-hue),15%,9%,1);--md-primary-fg-color--light:hsla(var(--md-hue),15%,9%,0.54);--md-primary-fg-color--dark:hsla(var(--md-hue),15%,9%,1);--md-primary-bg-color:hsla(var(--md-hue),15%,100%,1);--md-primary-bg-color--light:hsla(var(--md-hue),15%,100%,0.7);--md-typeset-a-color:#4051b5}[data-md-color-primary=black] .md-button{color:var(--md-typeset-a-color)}[data-md-color-primary=black] .md-button--primary{background-color:var(--md-typeset-a-color);border-color:var(--md-typeset-a-color);color:hsla(var(--md-hue),0%,100%,1)}[data-md-color-primary=black] .md-header{background-color:hsla(var(--md-hue),15%,9%,1)}@media screen and (max-width:59.984375em){[data-md-color-primary=black] .md-nav__source{background-color:hsla(var(--md-hue),15%,11%,.87)}}@media screen and (max-width:76.234375em){html [data-md-color-primary=black] .md-nav--primary .md-nav__title[for=__drawer]{background-color:hsla(var(--md-hue),15%,9%,1)}}@media screen and (min-width:76.25em){[data-md-color-primary=black] .md-tabs{background-color:hsla(var(--md-hue),15%,9%,1)}} \ No newline at end of file diff --git a/1.0.X/css/timeago.css b/1.0.X/css/timeago.css new file mode 100755 index 0000000..f7ab7d6 --- /dev/null +++ b/1.0.X/css/timeago.css @@ -0,0 +1,15 @@ +/* + timeago output is dynamic, which breaks when you print a page. + + This CSS is only included when type: timeago + and ensures fallback to type "iso_date" when printing. + + */ + +.git-revision-date-localized-plugin-iso_date { display: none } + +@media print { + .git-revision-date-localized-plugin-iso_date { display: inline } + .git-revision-date-localized-plugin-timeago { display: none } +} + diff --git a/1.0.X/deployment/assets/openbas_stack.png b/1.0.X/deployment/assets/openbas_stack.png new file mode 100755 index 0000000..e69de29 diff --git a/1.0.X/deployment/authentication/index.html b/1.0.X/deployment/authentication/index.html new file mode 100755 index 0000000..e116dc9 --- /dev/null +++ b/1.0.X/deployment/authentication/index.html @@ -0,0 +1,3477 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Authentication - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Authentication

+

Introduction

+

Welcome to the authentication documentation for OpenBAS. This documentation provides details on setting up and utilizing the authentication system, which supports multiple authentication methods to cater to different user needs and security requirements.

+

Supported authentication methods

+

Local users

+

OpenBAS use this strategy as the default, but it's not the one we recommend for security reasons.

+
    +
  • OPENBAS.AUTH-LOCAL-ENABLE: Set this to true to enable username/password authentication.
  • +
+
+

Production deployment

+

Please use the LDAP/Auth0/OpenID/SAML strategy for production deployment.

+
+

OpenID

+

This method allows to use the OpenID Connect Protocol to handle the authentication.

+
    +
  • OPENBAS.AUTH-OPENID-ENABLE: Set this to true to enable OAuth (OpenID) authentication.
  • +
+

Example for Auth0:

+
SPRING_SECURITY_OAUTH2_CLIENT_PROVIDER_{registrationId}_ISSUER-URI=https://auth.auth0.io
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-NAME=Login with auth0
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-ID=
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-SECRET=
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_REDIRECT-URI=${openbas.base-url}/login/oauth2/code/{registrationId}
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_SCOPE=openid,profile,email
+
+

Example for GitHub (or others pre-handled oauth2 providers):

+
SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_NAME=Login with Github
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_ID=
+SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_SECRET=
+
+
+

Tips

+

{registrationId} is an arbitrary identifier you choose.

+
+

SAML2

+

This strategy can be used to authenticate your user with your company SAML.

+
    +
  • OPENBAS.AUTH-SAML2-ENABLE: Set this to true to enable SAML2 authentication.
  • +
+

Example for Microsoft : +

SPRING_SECURITY_SAML2_RELYINGPARTY_REGISTRATION_{registrationId}_ENTITY-ID=
+SPRING_SECURITY_SAML2_RELYINGPARTY_REGISTRATION_{registrationId}_ASSERTINGPARTY_METADATA-URI=
+OPENBAS_PROVIDER_{registrationId}_FIRSTNAME_ATTRIBUTE_KEY=
+OPENBAS_PROVIDER_{registrationId}_LASTNAME_ATTRIBUTE_KEY=
+

+
+

Tips

+

{registrationId} is an arbitrary identifier you choose. + metadata-uri is the uri of the xml file given by your identity provider

+
+

Single Sign On URL

+

SAML2

+

Url for the config of your sso provider +

${openbas.base-url}/login/saml2/sso/{registrationId}
+

+

Map administrators to specific roles (OpenID and SAML 2)

+

To grant administrative roles, you can utilize OAuth and SAML2 integration. If you opt for this approach, you'll need to include the following variables:

+
OPENBAS_PROVIDER_{registrationId}_ROLES_PATH=http://schemas.microsoft.com/ws/2008/06/identity/claims/role
+OPENBAS_PROVIDER_{registrationId}_ROLES_ADMIN=
+
+

However, if you intend to manage administrative roles within the OpenBAS platform itself, there's no need to provide these variables.

+

Error Handling

+
+

Under construction

+

We are doing our best to complete this page. +If you want to participae, dont hesitate to join the Filigran Community on Slack +or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/clustering/index.html b/1.0.X/deployment/clustering/index.html new file mode 100755 index 0000000..5389ce2 --- /dev/null +++ b/1.0.X/deployment/clustering/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Clustering - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Clustering

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/collectors/index.html b/1.0.X/deployment/collectors/index.html new file mode 100755 index 0000000..34c59d6 --- /dev/null +++ b/1.0.X/deployment/collectors/index.html @@ -0,0 +1,3107 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Collectors - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injectors

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/configuration/index.html b/1.0.X/deployment/configuration/index.html new file mode 100755 index 0000000..d2de93e --- /dev/null +++ b/1.0.X/deployment/configuration/index.html @@ -0,0 +1,4253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Configuration - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Configuration

+

The purpose of this section is to learn how to configure OpenBAS to have it tailored for your production and development needs. It is possible to check all default parameters implemented in the platform in the application.properties file.

+

Here are the configuration keys, for both containers (environment variables) and manual deployment.

+
+

Parameters equivalence

+

The equivalent of a config variable in environment variables is the usage of an underscore (_) for a level of config.

+

For example: +

spring.servlet.multipart.max-file-size=5GB
+

+

will become: +

SPRING_SERVLET_MULTIPART_MAX-FILE-SIZE=5GB
+

+
+

Platform

+

API & Frontend

+

Basic parameters

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
server.addressSERVER_ADDRESS0.0.0.0Listen address of the application
server.portSERVER_PORT8080Listen port of the application
openbas.base-urlOPENBAS_BASE-URLhttp://localhost:8080Base URL of the application, will be used in some email links
server.servlet.session.timeoutSERVER_SERVLET_SESSION_TIMEOUT60mDefault duration of session (60 minutes)
openbas.cookie-secureOPENBAS_COOKIE-SECUREfalseTurn on if the access is done in HTTPS
openbas.cookie-durationOPENBAS_COOKIE-DURATIONP1DCookie duration (default 1 day)
openbas.admin.emailOPENBAS_ADMIN_EMAILadmin@openbas.ioDefault login email of the admin user
openbas.admin.passwordOPENBAS_ADMIN_PASSWORDChangeMeDefault password of the admin user
openbas.admin.tokenOPENBAS_ADMIN_TOKENChangeMeDefault token (must be a valid UUIDv4)
+

Network and security

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
server.ssl.enabledSERVER_SSL_ENABLEDfalseTurn on to enable SSL on the local server
server.ssl.key-store-typeSERVER_SSL_KEY-STORE-TYPEPKCS12Type of SSL keystore
server.ssl.key-storeSERVER_SSL_KEY-STOREclasspath:localhost.p12SSL keystore path
server.ssl.key-store-passwordSERVER_SSL_KEY-STORE-PASSWORDadminSSL keystore password
server.ssl.key-aliasSERVER_SSL_KEY-ALIASlocalhostSSL key alias
+

Logging

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
logging.level.rootLOGGING_LEVEL_ROOTfatalRoot log level
logging.level.io.openbasLOGGING_LEVEL_IO_OPENBASwarnOpenBAS log level
logging.file.nameLOGGING_FILE_NAME./logs/openbas.logLog file path (in addition to console output)
logging.logback.rollingpolicy.max-file-sizeLOGGING_LOGBACK_ROLLINGPOLICY_MAX-FILE-SIZE10MBRolling max file size
logging.logback.rollingpolicy.max-historyLOGGING_LOGBACK_ROLLINGPOLICY_MAX-HISTORY7Rolling max days
+

Dependencies

+

XTM Suite

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
openbas.xtm.opencti.enableOPENBAS_XTM_OPENCTI_ENABLEfalseEnable integration with OpenCTI
openbas.xtm.opencti.urlOPENBAS_XTM_OPENCTI_URLOpenCTI URL
openbas.xtm.opencti.tokenOPENBAS_XTM_OPENCTI_TOKENOpenCTI token
openbas.xtm.opencti.disable-displayOPENBAS_XTM_OPENCTI_DISABLE-DISPLAYfalseDisable OpenCTI in the UI
+

PostgreSQL

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
spring.datasource.urlSPRING_DATASOURCE_URLjdbc:postgresql://...URL of the database (ex jdbc:postgresql://postgresql.mydomain.com:5432/openbas)
spring.datasource.usernameSPRING_DATASOURCE_USERNAMELogin for the database
spring.datasource.passwordSPRING_DATASOURCE_PASSWORDpasswordPassword for the database
+

RabbitMQ

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
openbas.rabbitmq-prefixOPENBAS_RABBITMQ-PREFIXopenbasPrefix for the queue names
openbas.rabbitmq-hostnameOPENBAS_RABBITMQ-HOSTNAMElocalhostHostname of the RabbitMQ server
openbas.rabbitmq-portOPENBAS_RABBITMQ-PORT5672Port of the RabbitMQ Server
openbas.rabbitmq-sslOPENBAS_RABBITMQ-SSLfalseUse SSL
openbas.rabbitmq-userOPENBAS_RABBITMQ-USERguestRabbitMQ user
openbas.rabbitmq-passOPENBAS_RABBITMQ-PASSguestRabbitMQ password
openbas.rabbitmq-queue-typeOPENBAS_RABBITMQ-QUEUE-TYPEpasswordRabbitMQ Queue Type ("classic" or "quorum")
+

S3 bucket

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
minio.endpointMINIO_ENDPOINTlocalhostHostname of the S3 Service. Example if you use AWS Bucket S3: s3.us-east-1.amazonaws.com (if minio:bucket_region value is us-east-1). This parameter value can be omitted if you use Minio as an S3 Bucket Service.
minio.portMINIO_PORT9000Port of the S3 Service. For AWS Bucket S3 over HTTPS, this value can be changed (usually 443).
minio.secureMINIO_SECUREfalseIndicates whether the S3 Service has TLS enabled. For AWS Bucket S3 over HTTPS, this value could be true.
minio.access-keyMINIO_ACCESS-KEYkeyAccess key for the S3 Service.
minio.access-secretMINIO_ACCESS-SECRETsecretSecret key for the S3 Service.
minio.bucketMINIO_BUCKETopenbasS3 bucket name. Useful to change if you use AWS.
minio.bucket-regionMINIO_BUCKET-REGIONus-east-1Region of the S3 bucket if you are using AWS. This parameter value can be omitted if you use Minio as an S3 Bucket Service.
+

Executors (neutral agents)

+

To be able to use the power of the OpenBAS platform on endpoints, you need at least one executor that will be in charge of spawing temporary processes (endpoint injectors) which will execute payloads.

+
+

Supported executors

+

We currently support only Caldera and Tanium but are actively working on our own agent as well as supporting more third-party.

+
+
Caldera
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
executor.caldera.enableEXECUTOR_CALDERA_ENABLEtrueEnable the Caldera executor
executor.caldera.urlEXECUTOR_CALDERA_URLCaldera URL
executor.caldera.public-urlEXECUTOR_CALDERA_PUBLIC-URLCaldera URL accessible from endpoints
executor.caldera.api-keyEXECUTOR_CALDERA_API-KEYCaldera API key
+
Tanium
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
executor.tanium.enableEXECUTOR_TANIUM_ENABLEfalseEnable the Tanium executor
executor.tanium.urlEXECUTOR_TANIUM_URLTanium URL
executor.tanium.api-keyEXECUTOR_TANIUM_API-KEYTanium API key
+

Mail services

+

For the associated mailbox, for the moment the platform only relies on IMAP / SMTP protocols, we are actively developing integrations with APIs such as O365 and Google Apps.

+
SMTP
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
spring.mail.hostSPRING_MAIL_HOSTsmtp.mail.comSMTP Server hostname
spring.mail.portSPRING_MAIL_PORT587SMTP Server port
spring.mail.usernameSPRING_MAIL_USERNAMEusername@mail.comSMTP Server username
spring.mail.passwordSPRING_MAIL_PASSWORDpasswordSMTP Server password
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
spring.mail.properties.mail.smtp.ssl.enableSPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_ENABLEtrueTurn on SMTP SSL mode
spring.mail.properties.mail.smtp.ssl.trustSPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_TRUST*Trust unverified certificates
spring.mail.properties.mail.smtp.authSPRING_MAIL_PROPERTIES_MAIL_SMTP_AUTHtrueTurn on SMTP authentication
spring.mail.properties.mail.smtp.starttls.enableSPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_ENABLEtrueTurn on SMTP STARTTLS
+
IMAP
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
openbas.mail.imap.enabledOPENBAS_MAIL_IMAP_ENABLEDfalseTurn on to enable IMAP mail synchronization. Injector email must be well configured
openbas.mail.imap.hostOPENBAS_MAIL_IMAP_HOSTimap.mail.comIMAP Server hostname
openbas.mail.imap.portOPENBAS_MAIL_IMAP_PORT993IMAP Server port
openbas.mail.imap.usernameOPENBAS_MAIL_IMAP_USERNAMEusername@mail.comIMAP Server username
openbas.mail.imap.passwordOPENBAS_MAIL_IMAP_PASSWORDpasswordIMAP Server password
openbas.mail.imap.inboxOPENBAS_MAIL_IMAP_INBOXINBOXIMAP inbox directory to synchronize from
openbas.mail.imap.sentOPENBAS_MAIL_IMAP_SENTSentIMAP sent directory to synchronize from
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
openbas.mail.imap.ssl.enableOPENBAS_MAIL_IMAP_SSL_ENABLEtrueTurn on IMAP SSL mode
openbas.mail.imap.ssl.trustOPENBAS_MAIL_IMAP_SSL_TRUST*Trust unverified certificates
openbas.mail.imap.authOPENBAS_MAIL_IMAP_AUTHtrueTurn on IMAP authentication
openbas.mail.imap.starttls.enableOPENBAS_MAIL_IMAP_STARTTLS_ENABLEtrueTurn on IMAP STARTTLS
+

AI Service

+
+

AI deployment and cloud services

+

There are several possibilities for Enterprise Edition customers to use OpenBAS AI endpoints:

+
    +
  • Use the Filigran AI Service leveraging our custom AI model using the token given by the support team.
  • +
  • Use OpenAI or MistralAI cloud endpoints using your own tokens.
  • +
  • Deploy or use local AI endpoints (Filigran can provide you with the custom model).
  • +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterEnvironment variableDefault valueDescription
ai.enabledAI_ENABLEDtrueEnable AI capabilities
ai.typeAI_TYPEmistralaiAI type (mistralai or openai)
ai.endpointAI_ENDPOINTEndpoint URL (empty means default cloud service)
ai.tokenAI_TOKENToken for endpoint credentials
ai.modelAI_MODELModel to be used for text generation (depending on type)
ai.model_imagesAI_MODEL_IMAGESModel to be used for image generation (depending on type)
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/injectors/index.html b/1.0.X/deployment/injectors/index.html new file mode 100755 index 0000000..9f24541 --- /dev/null +++ b/1.0.X/deployment/injectors/index.html @@ -0,0 +1,3711 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Injectors - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injectors

+

Introduction

+
+

Injectors list

+

You are looking for the available injectors? The list is in the OpenBAS Ecosystem.

+
+

Injectors are one of the cornerstones of the OpenBAS platform, they are responsible for pushing simulation actions to third party systems. According to their functionality and use case, they are categorized in the following classes.

+

Connectors

+

🌐 Communication & social medias

+

Those injectors are used to push information to human assets (aka players) such as emails, SMS, phone calls, instant messaging etc.

+

📡 Endpoint payloads execution

+

Those injectors are special as they required an executor (neutral agent) to be launched on endpoints. When they register to the platform, they inform available executors on how to spawn them on the 3 currently supported platforms: Windows, Linux and MacOS.

+

⛳ Cyber ranges

+

Import files

+

Information from an uploaded file can be extracted and ingested into OpenCTI. Examples are files attached to a report or a STIX 2.1 file.

+

Export files

+

Information stored in OpenCTI can be extracted into different file formats like .csv or .json (STIX 2.1).

+

Connector configuration

+

All connectors have to be able to access the OpenCTI API. To allow this connection, they have 2 mandatory configuration parameters, the OPENCTI_URL and the OPENCTI_TOKEN. In addition to these 2 parameters, connectors have other mandatory parameters that need to be set in order to get them work.

+
+

Connectors tokens

+

Be careful, we strongly recommend to use a dedicated token for each connector running in the platform. So you have to create a specific user for each of them.

+

Also, if all connectors users can run in with a user belonging to the Connectors group (with the Connector role), the Internal Export Files should be run with a user who is Administrator (with bypass capability) because they impersonate the user requesting the export to avoid data leak.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeRequired roleUsed permissions
EXTERNAL_IMPORTConnectorImport data with the connector user.
INTERNAL_ENRICHMENTConnectorEnrich data with the connector user.
INTERNAL_IMPORT_FILEConnectorImport data with the connector user.
INTERNAL_EXPORT_FILEAdministratorExport data with the user who requested the export.
STREAMConnectorConsume the streams with the connector user.
+
+

Here is an example of a connector docker-compose.yml file: +

- CONNECTOR_ID=ChangeMe
+- CONNECTOR_TYPE=EXTERNAL_IMPORT
+- CONNECTOR_NAME=MITRE ATT&CK
+- CONNECTOR_SCOPE=identity,attack-pattern,course-of-action,intrusion-set,malware,tool,report
+- CONNECTOR_LOG_LEVEL=info
+

+

Here is an example in a connector config.yml file:

+
connector:
+  id: 'ChangeMe'
+  type: 'EXTERNAL_IMPORT'
+  name: 'MITRE ATT&CK'
+  scope: 'identity,attack-pattern,course-of-action,intrusion-set,malware,tool,report'
+  log_level: 'info'
+
+

Networking

+

Be aware that all connectors are reaching RabbitMQ based the RabbitMQ configuration provided by the OpenCTI platform. The connector must be able to reach RabbitMQ on the specified hostname and port. If you have a specific Docker network configuration, please be sure to adapt your docker-compose.yml file in such way that the connector container gets attached to the OpenCTI Network, e.g.:

+
networks:
+  default:
+    external: true
+    name: opencti-docker_default
+
+

+

Connector token

+

Create the user

+

As mentioned previously, it is strongly recommended to run each connector with its own user. The Internal Export File connectors should be launched with a user that belongs to a group which has an “Administrator” role (with bypass all capabilities enabled).

+

By default, in platform, a group named "Connectors" already exists. So just create a new user with the name [C] Name of the connector in Settings > Security > Users.

+

Create user

+

Put the user in the group

+

Just go to the user you have just created and add it to the Connectors group.

+

User groups

+

Then just get the token of the user displayed in the interface.

+

User token

+

Docker activation

+

You can either directly run the Docker image of connectors or add them to your current docker-compose.yml file.

+

Add a connector to your deployment

+

For instance, to enable the MISP connector, you can add a new service to your docker-compose.yml file:

+
  connector-misp:
+    image: opencti/connector-misp:latest
+    environment:
+      - OPENCTI_URL=http://localhost
+      - OPENCTI_TOKEN=ChangeMe
+      - CONNECTOR_ID=ChangeMe
+      - CONNECTOR_TYPE=EXTERNAL_IMPORT
+      - CONNECTOR_NAME=MISP
+      - CONNECTOR_SCOPE=misp
+      - CONNECTOR_LOG_LEVEL=info
+      - MISP_URL=http://localhost # Required
+      - MISP_KEY=ChangeMe # Required
+      - MISP_SSL_VERIFY=False # Required
+      - MISP_CREATE_REPORTS=True # Required, create report for MISP event
+      - MISP_REPORT_CLASS=MISP event # Optional, report_class if creating report for event
+      - MISP_IMPORT_FROM_DATE=2000-01-01 # Optional, import all event from this date
+      - MISP_IMPORT_TAGS=opencti:import,type:osint # Optional, list of tags used for import events
+      - MISP_INTERVAL=1 # Required, in minutes
+    restart: always
+
+

Launch a standalone connector

+

To launch standalone connector, you can use the docker-compose.yml file of the connector itself. Just download the latest release and start the connector:

+
$ wget https://github.com/OpenCTI-Platform/connectors/archive/{RELEASE_VERSION}.zip
+$ unzip {RELEASE_VERSION}.zip
+$ cd connectors-{RELEASE_VERSION}/misp/
+
+

Change the configuration in the docker-compose.yml according to the parameters of the platform and of the targeted service. Then launch the connector:

+
$ docker-compose up
+
+

Manual activation

+

If you want to manually launch connector, you just have to install Python 3 and pip3 for dependencies:

+
$ apt install python3 python3-pip
+
+

Download the release of the connectors:

+
$ wget <https://github.com/OpenCTI-Platform/connectors/archive/{RELEASE_VERSION}.zip>
+$ unzip {RELEASE_VERSION}.zip
+$ cd connectors-{RELEASE_VERSION}/misp/src/
+
+

Install dependencies and initialize the configuration:

+
$ pip3 install -r requirements.txt
+$ cp config.yml.sample config.yml
+
+

Change the config.yml content according to the parameters of the platform and of the targeted service and launch the connector:

+
$ python3 misp.py
+
+

Connectors status

+

The connector status can be displayed in the dedicated section of the platform available in Data > Ingestion > Connectors. You will be able to see the statistics of the RabbitMQ queue of the connector:

+

Connectors

+
+

Problem

+

If you encounter problems deploying OpenCTI or connectors, you can consult the troubleshooting page page.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/installation/index.html b/1.0.X/deployment/installation/index.html new file mode 100755 index 0000000..61cc069 --- /dev/null +++ b/1.0.X/deployment/installation/index.html @@ -0,0 +1,3920 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Installation - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Installation

+

All components of OpenBAS are shipped both as Docker images and manual installation packages.

+
+

Production deployment

+

For production deployment, we recommend to deploy all components in containers, including dependencies, using native cloud services or orchestration systems such as Kubernetes.

+
+
+
    +
  • +

    Use Docker

    +
    +

    Deploy OpenBAS using Docker and the default docker-compose.yml provided +in the docker.

    +

    Setup

    +
  • +
  • +

    Manual installation

    +
    +

    Deploy dependencies and launch the platform manually using the packages +released in the GitHub releases.

    +

    Explore

    +
  • +
+
+

Using Docker

+

Introduction

+

OpenBAS can be deployed using the docker-compose command.

+

Pre-requisites

+

Linux

+
sudo apt install docker-compose
+
+

Windows and MacOS

+

Just download the appropriate Docker for Desktop version for your operating system.

+

Clone the repository

+

Docker helpers are available in the Docker GitHub repository.

+
mkdir -p /path/to/your/app && cd /path/to/your/app
+git clone https://github.com/OpenBAS-Platform/docker.git
+cd docker
+
+

Configure the environment

+

Before running the docker-compose command, the caldera.yml and docker-compose.yml file should be configured. By default, the docker-compose.yml file is using environment variables available in the file .env.sample.

+

You can either rename the file .env.sample in .env and put the expected values or just fill directly the docker-compose.yml with the values corresponding to your environment.

+

Caldera

+

Unfortunately, Caldera does not support well environment variables, we have packaged it but the caldera.yml needs to be modified to change default API keys and passwords. Only change what is marked as Change this, listed below:

+
+

Caldera application

+

You will never be asked to go into Caldera directly because OpenBAS manages everything for you, so don't hesitate to put the same UUIDv4 in all parameters here.

+
+
users:
+  red:
+    red: ChangeMe                                                                     # Change this
+  blue:
+    blue: ChangeMe                                                                    # Change this
+api_key_red: ChangeMe                                                                 # Change this
+api_key_blue: ChangeMe                                                                # Change this
+api_key: ChangeMe                                                                     # Change this
+crypt_salt: ChangeMe                                                                  # Change this
+encryption_key: ChangeMe                                                              # Change this
+app.contact.http: http://caldera.myopenbas.myorganization.com:8888                    # Change this
+app.contact.tunnel.ssh.user_password: ChangeMe                                        # Change this
+
+

Docker compose env

+
+

Configuration static parameters

+

The complete list of available static parameters is available in the configuration section.

+
+

Whether you are using one method or the other, here are the mandatory parameters to fill:

+
POSTGRES_USER=ChangeMe
+POSTGRES_PASSWORD=ChangeMe
+KEYSTORE_PASSWORD=ChangeMe
+MINIO_ROOT_USER=ChangeMeAccess
+MINIO_ROOT_PASSWORD=ChangeMeKey
+RABBITMQ_DEFAULT_USER=ChangeMe
+RABBITMQ_DEFAULT_PASS=ChangeMe
+SPRING_MAIL_HOST=smtp.changeme.com
+SPRING_MAIL_PORT=465
+SPRING_MAIL_USERNAME=ChangeMe@domain.com
+SPRING_MAIL_PASSWORD=ChangeMe
+OPENBAS_MAIL_IMAP_HOST=imap.changeme.com
+OPENBAS_MAIL_IMAP_PORT=993
+OPENBAS_ADMIN_EMAIL=ChangeMe
+OPENBAS_ADMIN_PASSWORD=ChangeMe
+OPENBAS_ADMIN_TOKEN=ChangeMe
+CALDERA_PUBLIC_URL=http://localhost:8888 # Change me for production deployment to something accessible from your endpoint(s)
+CALDERA_API_KEY=ChangeMe
+COLLECTOR_MITRE_ATTACK_ID=3050d2a3-291d-44eb-8038-b4e7dd107436 # No need for change
+
+
+

Caldera public URL

+

For production deployment, the Caldera public URL needs to be accessible from the machines where you would like to play breach and attack simulations scenarios.

+
+

If your docker-compose deployment does not support .env files, just export all environment variables before launching the platform:

+
export $(cat .env | grep -v "#" | xargs)
+
+

Persist data

+

The default for OpenBAS data is to be persistent.

+

In the docker-compose.yml, you will find at the end the list of necessary persistent volumes for the dependencies:

+
volumes:
+  esdata:     # ElasticSearch data
+  s3data:     # S3 bucket data
+  amqpdata:   # RabbitMQ data
+
+

Run OpenBAS

+

Using single node Docker

+

After changing your .env file run docker-compose in detached (-d) mode:

+
sudo systemctl start docker.service
+# Run docker-compose in detached 
+docker-compose up -d
+
+

Using Docker swarm

+

In order to have the best experience with Docker, we recommend using the Docker stack feature. In this mode you will have the capacity to easily scale your deployment.

+
# If your virtual machine is not a part of a Swarm cluster, please use:
+docker swarm init
+
+

Put your environment variables in /etc/environment:

+
# If you already exported your variables to .env from above:
+sudo cat .env >> /etc/environment
+sudo bash -c 'cat .env >> /etc/environment’
+sudo docker stack deploy --compose-file docker-compose.yml openbas
+
+
+

Installation done

+

You can now go to http://localhost:8080 and log in with the credentials filled in your configuration.

+
+

Manual installation

+

Prepare the installation

+

Installation of dependencies

+

You have to install all the needed dependencies for the main application including Caldera if you would like to play breach and attack simulation scenarios. The example below if for Ubuntu:

+
sudo apt install openjdk-22-jre 
+
+

Download the application files

+

First, you have to download and extract the latest release file.

+
mkdir /path/to/your/app && cd /path/to/your/app
+wget <https://github.com/OpenBAS-Platform/openbas/releases/download/{RELEASE_VERSION}/openbas-release-{RELEASE_VERSION}.tar.gz>
+tar xvfz openbas-release-{RELEASE_VERSION}.tar.gz
+
+

Install the main platform

+

Configure the application

+

The main application has just one environment configuration file to change.

+
cd openbas
+
+

Change the application.properties file according to your configuration of PostgreSQL, RabbitMQ, Minio and Caldera admin account and to your platform.

+

Start the application

+

Start the Application:

+
java -jar openbas-api.jar
+
+
+

Installation done

+

You can now go to http://localhost:8080 and log in with the credentials configured in your application.properties file.

+
+

Deploy behind a reverse proxy

+

If you want to use OpenBAS behind a reverse proxy with a context path, like https://domain.com/openbas, please change the base_path static parameter.

+
    +
  • APP__BASE_PATH=/openbas
  • +
+

By default OpenBAS use websockets so don't forget to configure your proxy for this usage, an example with Nginx:

+
location / {
+    proxy_cache                 off;
+    proxy_buffering             off;
+    proxy_http_version          1.1;
+    proxy_set_header Upgrade    $http_upgrade;
+    proxy_set_header Connection "upgrade";
+    proxy_set_header Host       $host;
+    chunked_transfer_encoding   off;
+    proxy_pass                  http://YOUR_UPSTREAM_BACKEND;
+  }
+
+

Additional memory information

+

OpenBAS platform is based on a JAVA runtime. The application needs at least 4GB of RAM to work properly.

+

PostgreSQL

+

PostgreSQL is the main database of OpenBAS. You can find more information in the official PostgresQL documentation.

+

MinIO

+

MinIO is a small process and does not require a high amount of memory. More information are available for Linux here on the Kernel tuning guide.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/integrations/index.html b/1.0.X/deployment/integrations/index.html new file mode 100755 index 0000000..335089f --- /dev/null +++ b/1.0.X/deployment/integrations/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Integrations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Integrations

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/overview/index.html b/1.0.X/deployment/overview/index.html new file mode 100755 index 0000000..94a9aaa --- /dev/null +++ b/1.0.X/deployment/overview/index.html @@ -0,0 +1,3470 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Overview - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Overview

+

Before starting the installation, let's discover how OpenBAS is working, which dependencies are needed and what are the minimal requirements to deploy it in production.

+

Architecture

+

The OpenBAS platform relies on several external databases and services in order to work.

+

Architecture

+

Platform

+

The platform is the central part of the OpenBAS platform, allowing users to configure scenarios, simulations, atomic testings and all other components used in the context of breach and attack simulations and security validations.

+

Neutral agents / executors

+

Executors are embedded into the platform but you should configure at least one. It is the system that will be used to execute local injectors on endpoints. Currently we support Caldera (default) and Tanium but multiple will be added in the near future including a home-made XTM agent (by Filigran).

+

Injectors

+

Injects are used to interact with third-party applications or services (including execution on the endpoints through executors) in the context of a simulation or an atomic testing. A few injectors are built-in but most of them are standalone Python processes.

+
+

List of injectors

+

You can find all currently available injectors in the OpenBAS Ecosystem.

+
+

Collectors

+

Collectors are used to connect to all security systems such as SIEMs, XDRs, EDRs, firewalls, mail gateways etc. to check if an inject (execution, emails, etc.) has been detected or prevented and fill the security posture.

+
+

List of collectors

+

You can find all currently available collectors in the OpenBAS Ecosystem.

+
+

Infrastructure requirements

+

Dependencies

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ComponentVersionCPURAMDisk typeDisk space
PostgreSQL≥ 16.02 cores≥ 8GBSSD≥ 16GB
RabbitMQ>= 3.111 core≥ 512MBStandard≥ 2GB
S3 / MinIO≥ RELEASE.2023-021 core≥ 128MBSSD≥ 16GB
+

Platform

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ComponentCPURAMDisk typeDisk space
OpenBAS Core2 cores≥ 8GBNone (stateless)-
Injector(s)1 core≥ 128MBNone (stateless)-
Collector(s)1 core≥ 128MBNone (stateless)-
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/resources/index.html b/1.0.X/deployment/resources/index.html new file mode 100755 index 0000000..6c4fcf2 --- /dev/null +++ b/1.0.X/deployment/resources/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Other resources - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Resources

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/troubleshooting/index.html b/1.0.X/deployment/troubleshooting/index.html new file mode 100755 index 0000000..313c4c6 --- /dev/null +++ b/1.0.X/deployment/troubleshooting/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Troubleshooting - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Troubleshooting

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/deployment/upgrade/index.html b/1.0.X/deployment/upgrade/index.html new file mode 100755 index 0000000..c219be1 --- /dev/null +++ b/1.0.X/deployment/upgrade/index.html @@ -0,0 +1,3295 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Upgrade - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Upgrade

+

Depending on your installation mode, upgrade path may change.

+
+

Migrations

+

The platform is taking care of all necessary underlying migrations in the databases if any, you can upgrade OpenBAS from any version to the latest one, including skipping multiple major releases.

+
+

Using Docker

+

Before applying this procedure, please update your docker-compose.yml file with the new version number of container images.

+

For single node Docker

+
$ sudo docker-compose stop
+$ sudo docker-compose pull
+$ sudo docker-compose up -d
+
+

For Docker swarm

+

For each of services, you have to run the following command:

+
$ sudo docker service update --force service_name
+
+

Manual installation

+

When upgrading the platform, you have to replace all files and restart the platform, the database migrations will be done automatically:

+
$ java -jar openbas-api.jar
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/development/api-usage/index.html b/1.0.X/development/api-usage/index.html new file mode 100755 index 0000000..724520a --- /dev/null +++ b/1.0.X/development/api-usage/index.html @@ -0,0 +1,3105 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + REST API - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

REST API

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/development/environment_ubuntu/index.html b/1.0.X/development/environment_ubuntu/index.html new file mode 100755 index 0000000..6614663 --- /dev/null +++ b/1.0.X/development/environment_ubuntu/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Ubuntu - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Prerequisites Ubuntu

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/development/environment_windows/index.html b/1.0.X/development/environment_windows/index.html new file mode 100755 index 0000000..e60fcad --- /dev/null +++ b/1.0.X/development/environment_windows/index.html @@ -0,0 +1,3135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Windows - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Prerequisites Windows

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/development/injectors/index.html b/1.0.X/development/injectors/index.html new file mode 100755 index 0000000..380852d --- /dev/null +++ b/1.0.X/development/injectors/index.html @@ -0,0 +1,3118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Injectors - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injector development

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/development/platform/index.html b/1.0.X/development/platform/index.html new file mode 100755 index 0000000..bc16eb7 --- /dev/null +++ b/1.0.X/development/platform/index.html @@ -0,0 +1,3118 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Platform - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Platform development

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/index.html b/1.0.X/index.html new file mode 100755 index 0000000..1a11fb8 --- /dev/null +++ b/1.0.X/index.html @@ -0,0 +1,3253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + + + + + + + + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +

OpenBAS Documentation Space

+

Welcome to the OpenBAS Documentation space. Here you will be able to find all documents, meeting notes and presentations about the platform.

+
+

Release notes

+

Please, be sure to also take a look at the OpenBAS releases notes, they may contain important information about releases and deployments.

+
+

Introduction

+

OpenBAS is an open source platform allowing organizations to plan, schedule and conduct crisis exercises as well as adversary and breach simulations. OpenBAS is an ISO 22398 compliant product and has been designed as a modern web application including a RESTFul API and an UX oriented frontend.

+

Getting started

+
+
    +
  • +

    Deployment & Setup

    +
    +

    Learn how to deploy and configure the platform as well as +launch connectors to get the first data in OpenBAS.

    +

    Deploy now

    +
  • +
  • +

    User Guide

    +
    +

    Understand how to use the platform, create exercises and campaigns, use +media pressure simulation and integrate with other tools.

    +

    Explore

    +
  • +
  • +

    Administration

    +
    +

    Know how to administrate OpenBAS, create users and groups using RBAC / +segregation, customize the overall experience.

    +

    Customize

    +
  • +
+
+
+

Need more help?

+

We are doing our best to keep this documentation complete, accurate and up to date.

+

If you still have questions or you find something which is not sufficiently explained, join the Filigran Community on Slack.

+
+

Latest blog posts

+

All tutorials are published directly on the Medium blog, this section provides a comprehensive list of the most important ones.

+
+
    +
  • +

    How we are disrupting tactical and strategical crisis management exercises with OpenBAS 3
    + Oct 10, 2022

    +

    It’s been a while since we’ve talked about OpenBAS and yet… In the trying times we live in, both in cyberspace and in real life, crisis preparedness has become...

    +

    Read

    +
  • +
  • +

    Plan, execute and conduct your crisis management exercises
    + Jan 25, 2021

    +

    More than 3 years ago, we decided to build the OpenBAS application which allows organizations to facilitate the planning of crisis management...

    +

    Read

    +
  • +
+
+

Additional resources

+

Below, you will find external resources which may be useful along your OpenBAS journey.

+
+

Training Courses
+Training courses for analysts and administrators in the Filigran training center.

+
+




+ + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/js/timeago.min.js b/1.0.X/js/timeago.min.js new file mode 100755 index 0000000..a8530a5 --- /dev/null +++ b/1.0.X/js/timeago.min.js @@ -0,0 +1,2 @@ +/* Taken from https://cdnjs.cloudflare.com/ajax/libs/timeago.js/4.0.2/timeago.min.js */ +!function(s,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((s=s||self).timeago={})}(this,function(s){"use strict";var a=["second","minute","hour","day","week","month","year"];function n(s,n){if(0===n)return["just now","right now"];var e=a[Math.floor(n/2)];return 1=m[t]&&t=m[e]&&e 0) { + var locale = nodes[0].getAttribute('locale'); + timeago.render(nodes, locale); + } + }) +} else { + var nodes = document.querySelectorAll('.timeago'); + if (nodes.length > 0) { + var locale = nodes[0].getAttribute('locale'); + timeago.render(nodes, locale); + } +} diff --git a/1.0.X/search/search_index.json b/1.0.X/search/search_index.json new file mode 100755 index 0000000..5e59822 --- /dev/null +++ b/1.0.X/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"],"fields":{"title":{"boost":1000.0},"text":{"boost":1.0},"tags":{"boost":1000000.0}}},"docs":[{"location":"","title":"OpenBAS Documentation Space","text":"

Welcome to the OpenBAS Documentation space. Here you will be able to find all documents, meeting notes and presentations about the platform.

Release notes

Please, be sure to also take a look at the OpenBAS releases notes, they may contain important information about releases and deployments.

"},{"location":"#introduction","title":"Introduction","text":"

OpenBAS is an open source platform allowing organizations to plan, schedule and conduct crisis exercises as well as adversary and breach simulations. OpenBAS is an ISO 22398 compliant product and has been designed as a modern web application including a RESTFul API and an UX oriented frontend.

"},{"location":"#getting-started","title":"Getting started","text":"
  • Deployment & Setup

    Learn how to deploy and configure the platform as well as launch connectors to get the first data in OpenBAS.

    Deploy now

  • User Guide

    Understand how to use the platform, create exercises and campaigns, use media pressure simulation and integrate with other tools.

    Explore

  • Administration

    Know how to administrate OpenBAS, create users and groups using RBAC / segregation, customize the overall experience.

    Customize

Need more help?

We are doing our best to keep this documentation complete, accurate and up to date.

If you still have questions or you find something which is not sufficiently explained, join the Filigran Community on Slack.

"},{"location":"#latest-blog-posts","title":"Latest blog posts","text":"

All tutorials are published directly on the Medium blog, this section provides a comprehensive list of the most important ones.

  • How we are disrupting tactical and strategical crisis management exercises with OpenBAS 3 Oct 10, 2022

    It\u2019s been a while since we\u2019ve talked about OpenBAS and yet\u2026 In the trying times we live in, both in cyberspace and in real life, crisis preparedness has become...

    Read

  • Plan, execute and conduct your crisis management exercises Jan 25, 2021

    More than 3 years ago, we decided to build the OpenBAS application which allows organizations to facilitate the planning of crisis management...

    Read

"},{"location":"#additional-resources","title":"Additional resources","text":"

Below, you will find external resources which may be useful along your OpenBAS journey.

Training Courses Training courses for analysts and administrators in the Filigran training center.

"},{"location":"administration/enterprise/","title":"Enterprise edition","text":"

Filigran

Filigran is providing an Enterprise Edition of the platform, whether on-premise or in the SaaS.

"},{"location":"administration/enterprise/#what-is-openbas-ee","title":"What is OpenBAS EE?","text":"

OpenBAS Enterprise Edition is based on the open core concept. This means that the source code of OCTI EE remains open source and included in the main GitHub repository of the platform but is published under a specific license. As specified in the GitHub license file:

  • The OpenBAS Community Edition is licensed under the Apache License, Version 2.0 (the \u201cApache License\u201d).
  • The OpenBAS Enterprise Edition is licensed under the OpenBAS Enterprise Edition License (the \u201cEnterprise Edition Licensee\u201d).

The source files in this repository have a header indicating which license they are under. If no such header is provided, this means that the file belongs to the Community Edition under the Apache License, Version 2.0.

"},{"location":"administration/enterprise/#ee-activation","title":"EE Activation","text":"

Enterprise edition is easy to activate. You need to go the platform settings and click on the Activate button.

Then you will need to agree to the Filigran EULA.

As a reminder:

  • OpenBAS EE is free-to-use for development, testing and research purposes as well as for non-profit organizations.
  • OpenBAS EE is included for all Filigran SaaS customers without additional fee.
  • For all other usages, OpenBAS EE is reserved to organizations that have signed a Filigran Enterprise agreement.
"},{"location":"administration/enterprise/#available-features","title":"Available features","text":""},{"location":"administration/enterprise/#generative-ai","title":"Generative AI","text":"

Be able to use AI for content generation including emails, media pressure articles etc.

"},{"location":"administration/enterprise/#more-to-come","title":"More to come","text":"

More features will be available in OpenBAS in the future. Features like:

  • Security posture automatic evalution.
  • Premium mitigations and recommendation for configuration changes.
"},{"location":"administration/introduction/","title":"Introduction","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"administration/parameters/","title":"Parameters","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"administration/policies/","title":"Policies","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"administration/users/","title":"Users and RBAC","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/authentication/","title":"Authentication","text":""},{"location":"deployment/authentication/#introduction","title":"Introduction","text":"

Welcome to the authentication documentation for OpenBAS. This documentation provides details on setting up and utilizing the authentication system, which supports multiple authentication methods to cater to different user needs and security requirements.

"},{"location":"deployment/authentication/#supported-authentication-methods","title":"Supported authentication methods","text":""},{"location":"deployment/authentication/#local-users","title":"Local users","text":"

OpenBAS use this strategy as the default, but it's not the one we recommend for security reasons.

  • OPENBAS.AUTH-LOCAL-ENABLE: Set this to true to enable username/password authentication.

Production deployment

Please use the LDAP/Auth0/OpenID/SAML strategy for production deployment.

"},{"location":"deployment/authentication/#openid","title":"OpenID","text":"

This method allows to use the OpenID Connect Protocol to handle the authentication.

  • OPENBAS.AUTH-OPENID-ENABLE: Set this to true to enable OAuth (OpenID) authentication.

Example for Auth0:

SPRING_SECURITY_OAUTH2_CLIENT_PROVIDER_{registrationId}_ISSUER-URI=https://auth.auth0.io\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-NAME=Login with auth0\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-ID=\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT-SECRET=\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_REDIRECT-URI=${openbas.base-url}/login/oauth2/code/{registrationId}\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_SCOPE=openid,profile,email\n

Example for GitHub (or others pre-handled oauth2 providers):

SPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_NAME=Login with Github\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_ID=\nSPRING_SECURITY_OAUTH2_CLIENT_REGISTRATION_{registrationId}_CLIENT_SECRET=\n

Tips

{registrationId} is an arbitrary identifier you choose.

"},{"location":"deployment/authentication/#saml2","title":"SAML2","text":"

This strategy can be used to authenticate your user with your company SAML.

  • OPENBAS.AUTH-SAML2-ENABLE: Set this to true to enable SAML2 authentication.

Example for Microsoft :

SPRING_SECURITY_SAML2_RELYINGPARTY_REGISTRATION_{registrationId}_ENTITY-ID=\nSPRING_SECURITY_SAML2_RELYINGPARTY_REGISTRATION_{registrationId}_ASSERTINGPARTY_METADATA-URI=\nOPENBAS_PROVIDER_{registrationId}_FIRSTNAME_ATTRIBUTE_KEY=\nOPENBAS_PROVIDER_{registrationId}_LASTNAME_ATTRIBUTE_KEY=\n

Tips

{registrationId} is an arbitrary identifier you choose. metadata-uri is the uri of the xml file given by your identity provider

"},{"location":"deployment/authentication/#single-sign-on-url","title":"Single Sign On URL","text":""},{"location":"deployment/authentication/#saml2_1","title":"SAML2","text":"

Url for the config of your sso provider

${openbas.base-url}/login/saml2/sso/{registrationId}\n

"},{"location":"deployment/authentication/#map-administrators-to-specific-roles-openid-and-saml-2","title":"Map administrators to specific roles (OpenID and SAML 2)","text":"

To grant administrative roles, you can utilize OAuth and SAML2 integration. If you opt for this approach, you'll need to include the following variables:

OPENBAS_PROVIDER_{registrationId}_ROLES_PATH=http://schemas.microsoft.com/ws/2008/06/identity/claims/role\nOPENBAS_PROVIDER_{registrationId}_ROLES_ADMIN=\n

However, if you intend to manage administrative roles within the OpenBAS platform itself, there's no need to provide these variables.

"},{"location":"deployment/authentication/#error-handling","title":"Error Handling","text":"

Under construction

We are doing our best to complete this page. If you want to participae, dont hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/clustering/","title":"Clustering","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/collectors/","title":"Injectors","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/configuration/","title":"Configuration","text":"

The purpose of this section is to learn how to configure OpenBAS to have it tailored for your production and development needs. It is possible to check all default parameters implemented in the platform in the application.properties file.

Here are the configuration keys, for both containers (environment variables) and manual deployment.

Parameters equivalence

The equivalent of a config variable in environment variables is the usage of an underscore (_) for a level of config.

For example:

spring.servlet.multipart.max-file-size=5GB\n

will become:

SPRING_SERVLET_MULTIPART_MAX-FILE-SIZE=5GB\n

"},{"location":"deployment/configuration/#platform","title":"Platform","text":""},{"location":"deployment/configuration/#api-frontend","title":"API & Frontend","text":""},{"location":"deployment/configuration/#basic-parameters","title":"Basic parameters","text":"Parameter Environment variable Default value Description server.address SERVER_ADDRESS 0.0.0.0 Listen address of the application server.port SERVER_PORT 8080 Listen port of the application openbas.base-url OPENBAS_BASE-URL http://localhost:8080 Base URL of the application, will be used in some email links server.servlet.session.timeout SERVER_SERVLET_SESSION_TIMEOUT 60m Default duration of session (60 minutes) openbas.cookie-secure OPENBAS_COOKIE-SECURE false Turn on if the access is done in HTTPS openbas.cookie-duration OPENBAS_COOKIE-DURATION P1D Cookie duration (default 1 day) openbas.admin.email OPENBAS_ADMIN_EMAIL admin@openbas.io Default login email of the admin user openbas.admin.password OPENBAS_ADMIN_PASSWORD ChangeMe Default password of the admin user openbas.admin.token OPENBAS_ADMIN_TOKEN ChangeMe Default token (must be a valid UUIDv4)"},{"location":"deployment/configuration/#network-and-security","title":"Network and security","text":"Parameter Environment variable Default value Description server.ssl.enabled SERVER_SSL_ENABLED false Turn on to enable SSL on the local server server.ssl.key-store-type SERVER_SSL_KEY-STORE-TYPE PKCS12 Type of SSL keystore server.ssl.key-store SERVER_SSL_KEY-STORE classpath:localhost.p12 SSL keystore path server.ssl.key-store-password SERVER_SSL_KEY-STORE-PASSWORD admin SSL keystore password server.ssl.key-alias SERVER_SSL_KEY-ALIAS localhost SSL key alias"},{"location":"deployment/configuration/#logging","title":"Logging","text":"Parameter Environment variable Default value Description logging.level.root LOGGING_LEVEL_ROOT fatal Root log level logging.level.io.openbas LOGGING_LEVEL_IO_OPENBAS warn OpenBAS log level logging.file.name LOGGING_FILE_NAME ./logs/openbas.log Log file path (in addition to console output) logging.logback.rollingpolicy.max-file-size LOGGING_LOGBACK_ROLLINGPOLICY_MAX-FILE-SIZE 10MB Rolling max file size logging.logback.rollingpolicy.max-history LOGGING_LOGBACK_ROLLINGPOLICY_MAX-HISTORY 7 Rolling max days"},{"location":"deployment/configuration/#dependencies","title":"Dependencies","text":""},{"location":"deployment/configuration/#xtm-suite","title":"XTM Suite","text":"Parameter Environment variable Default value Description openbas.xtm.opencti.enable OPENBAS_XTM_OPENCTI_ENABLE false Enable integration with OpenCTI openbas.xtm.opencti.url OPENBAS_XTM_OPENCTI_URL OpenCTI URL openbas.xtm.opencti.token OPENBAS_XTM_OPENCTI_TOKEN OpenCTI token openbas.xtm.opencti.disable-display OPENBAS_XTM_OPENCTI_DISABLE-DISPLAY false Disable OpenCTI in the UI"},{"location":"deployment/configuration/#postgresql","title":"PostgreSQL","text":"Parameter Environment variable Default value Description spring.datasource.url SPRING_DATASOURCE_URL jdbc:postgresql://... URL of the database (ex jdbc:postgresql://postgresql.mydomain.com:5432/openbas) spring.datasource.username SPRING_DATASOURCE_USERNAME Login for the database spring.datasource.password SPRING_DATASOURCE_PASSWORD password Password for the database"},{"location":"deployment/configuration/#rabbitmq","title":"RabbitMQ","text":"Parameter Environment variable Default value Description openbas.rabbitmq-prefix OPENBAS_RABBITMQ-PREFIX openbas Prefix for the queue names openbas.rabbitmq-hostname OPENBAS_RABBITMQ-HOSTNAME localhost Hostname of the RabbitMQ server openbas.rabbitmq-port OPENBAS_RABBITMQ-PORT 5672 Port of the RabbitMQ Server openbas.rabbitmq-ssl OPENBAS_RABBITMQ-SSL false Use SSL openbas.rabbitmq-user OPENBAS_RABBITMQ-USER guest RabbitMQ user openbas.rabbitmq-pass OPENBAS_RABBITMQ-PASS guest RabbitMQ password openbas.rabbitmq-queue-type OPENBAS_RABBITMQ-QUEUE-TYPE password RabbitMQ Queue Type (\"classic\" or \"quorum\")"},{"location":"deployment/configuration/#s3-bucket","title":"S3 bucket","text":"Parameter Environment variable Default value Description minio.endpoint MINIO_ENDPOINT localhost Hostname of the S3 Service. Example if you use AWS Bucket S3: s3.us-east-1.amazonaws.com (if minio:bucket_region value is us-east-1). This parameter value can be omitted if you use Minio as an S3 Bucket Service. minio.port MINIO_PORT 9000 Port of the S3 Service. For AWS Bucket S3 over HTTPS, this value can be changed (usually 443). minio.secure MINIO_SECURE false Indicates whether the S3 Service has TLS enabled. For AWS Bucket S3 over HTTPS, this value could be true. minio.access-key MINIO_ACCESS-KEY key Access key for the S3 Service. minio.access-secret MINIO_ACCESS-SECRET secret Secret key for the S3 Service. minio.bucket MINIO_BUCKET openbas S3 bucket name. Useful to change if you use AWS. minio.bucket-region MINIO_BUCKET-REGION us-east-1 Region of the S3 bucket if you are using AWS. This parameter value can be omitted if you use Minio as an S3 Bucket Service."},{"location":"deployment/configuration/#executors-neutral-agents","title":"Executors (neutral agents)","text":"

To be able to use the power of the OpenBAS platform on endpoints, you need at least one executor that will be in charge of spawing temporary processes (endpoint injectors) which will execute payloads.

Supported executors

We currently support only Caldera and Tanium but are actively working on our own agent as well as supporting more third-party.

"},{"location":"deployment/configuration/#caldera","title":"Caldera","text":"Parameter Environment variable Default value Description executor.caldera.enable EXECUTOR_CALDERA_ENABLE true Enable the Caldera executor executor.caldera.url EXECUTOR_CALDERA_URL Caldera URL executor.caldera.public-url EXECUTOR_CALDERA_PUBLIC-URL Caldera URL accessible from endpoints executor.caldera.api-key EXECUTOR_CALDERA_API-KEY Caldera API key"},{"location":"deployment/configuration/#tanium","title":"Tanium","text":"Parameter Environment variable Default value Description executor.tanium.enable EXECUTOR_TANIUM_ENABLE false Enable the Tanium executor executor.tanium.url EXECUTOR_TANIUM_URL Tanium URL executor.tanium.api-key EXECUTOR_TANIUM_API-KEY Tanium API key"},{"location":"deployment/configuration/#mail-services","title":"Mail services","text":"

For the associated mailbox, for the moment the platform only relies on IMAP / SMTP protocols, we are actively developing integrations with APIs such as O365 and Google Apps.

"},{"location":"deployment/configuration/#smtp","title":"SMTP","text":"Parameter Environment variable Default value Description spring.mail.host SPRING_MAIL_HOST smtp.mail.com SMTP Server hostname spring.mail.port SPRING_MAIL_PORT 587 SMTP Server port spring.mail.username SPRING_MAIL_USERNAME username@mail.com SMTP Server username spring.mail.password SPRING_MAIL_PASSWORD password SMTP Server password Parameter Environment variable Default value Description spring.mail.properties.mail.smtp.ssl.enable SPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_ENABLE true Turn on SMTP SSL mode spring.mail.properties.mail.smtp.ssl.trust SPRING_MAIL_PROPERTIES_MAIL_SMTP_SSL_TRUST * Trust unverified certificates spring.mail.properties.mail.smtp.auth SPRING_MAIL_PROPERTIES_MAIL_SMTP_AUTH true Turn on SMTP authentication spring.mail.properties.mail.smtp.starttls.enable SPRING_MAIL_PROPERTIES_MAIL_SMTP_STARTTLS_ENABLE true Turn on SMTP STARTTLS"},{"location":"deployment/configuration/#imap","title":"IMAP","text":"Parameter Environment variable Default value Description openbas.mail.imap.enabled OPENBAS_MAIL_IMAP_ENABLED false Turn on to enable IMAP mail synchronization. Injector email must be well configured openbas.mail.imap.host OPENBAS_MAIL_IMAP_HOST imap.mail.com IMAP Server hostname openbas.mail.imap.port OPENBAS_MAIL_IMAP_PORT 993 IMAP Server port openbas.mail.imap.username OPENBAS_MAIL_IMAP_USERNAME username@mail.com IMAP Server username openbas.mail.imap.password OPENBAS_MAIL_IMAP_PASSWORD password IMAP Server password openbas.mail.imap.inbox OPENBAS_MAIL_IMAP_INBOX INBOX IMAP inbox directory to synchronize from openbas.mail.imap.sent OPENBAS_MAIL_IMAP_SENT Sent IMAP sent directory to synchronize from Parameter Environment variable Default value Description openbas.mail.imap.ssl.enable OPENBAS_MAIL_IMAP_SSL_ENABLE true Turn on IMAP SSL mode openbas.mail.imap.ssl.trust OPENBAS_MAIL_IMAP_SSL_TRUST * Trust unverified certificates openbas.mail.imap.auth OPENBAS_MAIL_IMAP_AUTH true Turn on IMAP authentication openbas.mail.imap.starttls.enable OPENBAS_MAIL_IMAP_STARTTLS_ENABLE true Turn on IMAP STARTTLS"},{"location":"deployment/configuration/#ai-service","title":"AI Service","text":"

AI deployment and cloud services

There are several possibilities for Enterprise Edition customers to use OpenBAS AI endpoints:

  • Use the Filigran AI Service leveraging our custom AI model using the token given by the support team.
  • Use OpenAI or MistralAI cloud endpoints using your own tokens.
  • Deploy or use local AI endpoints (Filigran can provide you with the custom model).
Parameter Environment variable Default value Description ai.enabled AI_ENABLED true Enable AI capabilities ai.type AI_TYPE mistralai AI type (mistralai or openai) ai.endpoint AI_ENDPOINT Endpoint URL (empty means default cloud service) ai.token AI_TOKEN Token for endpoint credentials ai.model AI_MODEL Model to be used for text generation (depending on type) ai.model_images AI_MODEL_IMAGES Model to be used for image generation (depending on type)"},{"location":"deployment/injectors/","title":"Injectors","text":""},{"location":"deployment/injectors/#introduction","title":"Introduction","text":"

Injectors list

You are looking for the available injectors? The list is in the OpenBAS Ecosystem.

Injectors are one of the cornerstones of the OpenBAS platform, they are responsible for pushing simulation actions to third party systems. According to their functionality and use case, they are categorized in the following classes.

"},{"location":"deployment/injectors/#communication-social-medias","title":"\ud83c\udf10 Communication & social medias","text":"

Those injectors are used to push information to human assets (aka players) such as emails, SMS, phone calls, instant messaging etc.

"},{"location":"deployment/injectors/#endpoint-payloads-execution","title":"\ud83d\udce1 Endpoint payloads execution","text":"

Those injectors are special as they required an executor (neutral agent) to be launched on endpoints. When they register to the platform, they inform available executors on how to spawn them on the 3 currently supported platforms: Windows, Linux and MacOS.

"},{"location":"deployment/injectors/#cyber-ranges","title":"\u26f3 Cyber ranges","text":""},{"location":"deployment/injectors/#import-files","title":"Import files","text":"

Information from an uploaded file can be extracted and ingested into OpenCTI. Examples are files attached to a report or a STIX 2.1 file.

"},{"location":"deployment/injectors/#export-files","title":"Export files","text":"

Information stored in OpenCTI can be extracted into different file formats like .csv or .json (STIX 2.1).

"},{"location":"deployment/injectors/#connector-configuration","title":"Connector configuration","text":"

All connectors have to be able to access the OpenCTI API. To allow this connection, they have 2 mandatory configuration parameters, the OPENCTI_URL and the OPENCTI_TOKEN. In addition to these 2 parameters, connectors have other mandatory parameters that need to be set in order to get them work.

Connectors tokens

Be careful, we strongly recommend to use a dedicated token for each connector running in the platform. So you have to create a specific user for each of them.

Also, if all connectors users can run in with a user belonging to the Connectors group (with the Connector role), the Internal Export Files should be run with a user who is Administrator (with bypass capability) because they impersonate the user requesting the export to avoid data leak.

Type Required role Used permissions EXTERNAL_IMPORT Connector Import data with the connector user. INTERNAL_ENRICHMENT Connector Enrich data with the connector user. INTERNAL_IMPORT_FILE Connector Import data with the connector user. INTERNAL_EXPORT_FILE Administrator Export data with the user who requested the export. STREAM Connector Consume the streams with the connector user.

Here is an example of a connector docker-compose.yml file:

- CONNECTOR_ID=ChangeMe\n- CONNECTOR_TYPE=EXTERNAL_IMPORT\n- CONNECTOR_NAME=MITRE ATT&CK\n- CONNECTOR_SCOPE=identity,attack-pattern,course-of-action,intrusion-set,malware,tool,report\n- CONNECTOR_LOG_LEVEL=info\n

Here is an example in a connector config.yml file:

connector:\n  id: 'ChangeMe'\n  type: 'EXTERNAL_IMPORT'\n  name: 'MITRE ATT&CK'\n  scope: 'identity,attack-pattern,course-of-action,intrusion-set,malware,tool,report'\n  log_level: 'info'\n
"},{"location":"deployment/injectors/#networking","title":"Networking","text":"

Be aware that all connectors are reaching RabbitMQ based the RabbitMQ configuration provided by the OpenCTI platform. The connector must be able to reach RabbitMQ on the specified hostname and port. If you have a specific Docker network configuration, please be sure to adapt your docker-compose.yml file in such way that the connector container gets attached to the OpenCTI Network, e.g.:

networks:\n  default:\n    external: true\n    name: opencti-docker_default\n

"},{"location":"deployment/injectors/#connector-token","title":"Connector token","text":""},{"location":"deployment/injectors/#create-the-user","title":"Create the user","text":"

As mentioned previously, it is strongly recommended to run each connector with its own user. The Internal Export File connectors should be launched with a user that belongs to a group which has an \u201cAdministrator\u201d role (with bypass all capabilities enabled).

By default, in platform, a group named \"Connectors\" already exists. So just create a new user with the name [C] Name of the connector in Settings > Security > Users.

"},{"location":"deployment/injectors/#put-the-user-in-the-group","title":"Put the user in the group","text":"

Just go to the user you have just created and add it to the Connectors group.

Then just get the token of the user displayed in the interface.

"},{"location":"deployment/injectors/#docker-activation","title":"Docker activation","text":"

You can either directly run the Docker image of connectors or add them to your current docker-compose.yml file.

"},{"location":"deployment/injectors/#add-a-connector-to-your-deployment","title":"Add a connector to your deployment","text":"

For instance, to enable the MISP connector, you can add a new service to your docker-compose.yml file:

  connector-misp:\n    image: opencti/connector-misp:latest\n    environment:\n      - OPENCTI_URL=http://localhost\n      - OPENCTI_TOKEN=ChangeMe\n      - CONNECTOR_ID=ChangeMe\n      - CONNECTOR_TYPE=EXTERNAL_IMPORT\n      - CONNECTOR_NAME=MISP\n      - CONNECTOR_SCOPE=misp\n      - CONNECTOR_LOG_LEVEL=info\n      - MISP_URL=http://localhost # Required\n      - MISP_KEY=ChangeMe # Required\n      - MISP_SSL_VERIFY=False # Required\n      - MISP_CREATE_REPORTS=True # Required, create report for MISP event\n      - MISP_REPORT_CLASS=MISP event # Optional, report_class if creating report for event\n      - MISP_IMPORT_FROM_DATE=2000-01-01 # Optional, import all event from this date\n      - MISP_IMPORT_TAGS=opencti:import,type:osint # Optional, list of tags used for import events\n      - MISP_INTERVAL=1 # Required, in minutes\n    restart: always\n
"},{"location":"deployment/injectors/#launch-a-standalone-connector","title":"Launch a standalone connector","text":"

To launch standalone connector, you can use the docker-compose.yml file of the connector itself. Just download the latest release and start the connector:

$ wget https://github.com/OpenCTI-Platform/connectors/archive/{RELEASE_VERSION}.zip\n$ unzip {RELEASE_VERSION}.zip\n$ cd connectors-{RELEASE_VERSION}/misp/\n

Change the configuration in the docker-compose.yml according to the parameters of the platform and of the targeted service. Then launch the connector:

$ docker-compose up\n
"},{"location":"deployment/injectors/#manual-activation","title":"Manual activation","text":"

If you want to manually launch connector, you just have to install Python 3 and pip3 for dependencies:

$ apt install python3 python3-pip\n

Download the release of the connectors:

$ wget <https://github.com/OpenCTI-Platform/connectors/archive/{RELEASE_VERSION}.zip>\n$ unzip {RELEASE_VERSION}.zip\n$ cd connectors-{RELEASE_VERSION}/misp/src/\n

Install dependencies and initialize the configuration:

$ pip3 install -r requirements.txt\n$ cp config.yml.sample config.yml\n

Change the config.yml content according to the parameters of the platform and of the targeted service and launch the connector:

$ python3 misp.py\n
"},{"location":"deployment/injectors/#connectors-status","title":"Connectors status","text":"

The connector status can be displayed in the dedicated section of the platform available in Data > Ingestion > Connectors. You will be able to see the statistics of the RabbitMQ queue of the connector:

Problem

If you encounter problems deploying OpenCTI or connectors, you can consult the troubleshooting page page.

"},{"location":"deployment/installation/","title":"Installation","text":"

All components of OpenBAS are shipped both as Docker images and manual installation packages.

Production deployment

For production deployment, we recommend to deploy all components in containers, including dependencies, using native cloud services or orchestration systems such as Kubernetes.

  • Use Docker

    Deploy OpenBAS using Docker and the default docker-compose.yml provided in the docker.

    Setup

  • Manual installation

    Deploy dependencies and launch the platform manually using the packages released in the GitHub releases.

    Explore

"},{"location":"deployment/installation/#using-docker","title":"Using Docker","text":""},{"location":"deployment/installation/#introduction","title":"Introduction","text":"

OpenBAS can be deployed using the docker-compose command.

"},{"location":"deployment/installation/#pre-requisites","title":"Pre-requisites","text":"

Linux

sudo apt install docker-compose\n

Windows and MacOS

Just download the appropriate Docker for Desktop version for your operating system.

"},{"location":"deployment/installation/#clone-the-repository","title":"Clone the repository","text":"

Docker helpers are available in the Docker GitHub repository.

mkdir -p /path/to/your/app && cd /path/to/your/app\ngit clone https://github.com/OpenBAS-Platform/docker.git\ncd docker\n
"},{"location":"deployment/installation/#configure-the-environment","title":"Configure the environment","text":"

Before running the docker-compose command, the caldera.yml and docker-compose.yml file should be configured. By default, the docker-compose.yml file is using environment variables available in the file .env.sample.

You can either rename the file .env.sample in .env and put the expected values or just fill directly the docker-compose.yml with the values corresponding to your environment.

"},{"location":"deployment/installation/#caldera","title":"Caldera","text":"

Unfortunately, Caldera does not support well environment variables, we have packaged it but the caldera.yml needs to be modified to change default API keys and passwords. Only change what is marked as Change this, listed below:

Caldera application

You will never be asked to go into Caldera directly because OpenBAS manages everything for you, so don't hesitate to put the same UUIDv4 in all parameters here.

users:\n  red:\n    red: ChangeMe                                                                     # Change this\n  blue:\n    blue: ChangeMe                                                                    # Change this\napi_key_red: ChangeMe                                                                 # Change this\napi_key_blue: ChangeMe                                                                # Change this\napi_key: ChangeMe                                                                     # Change this\ncrypt_salt: ChangeMe                                                                  # Change this\nencryption_key: ChangeMe                                                              # Change this\napp.contact.http: http://caldera.myopenbas.myorganization.com:8888                    # Change this\napp.contact.tunnel.ssh.user_password: ChangeMe                                        # Change this\n
"},{"location":"deployment/installation/#docker-compose-env","title":"Docker compose env","text":"

Configuration static parameters

The complete list of available static parameters is available in the configuration section.

Whether you are using one method or the other, here are the mandatory parameters to fill:

POSTGRES_USER=ChangeMe\nPOSTGRES_PASSWORD=ChangeMe\nKEYSTORE_PASSWORD=ChangeMe\nMINIO_ROOT_USER=ChangeMeAccess\nMINIO_ROOT_PASSWORD=ChangeMeKey\nRABBITMQ_DEFAULT_USER=ChangeMe\nRABBITMQ_DEFAULT_PASS=ChangeMe\nSPRING_MAIL_HOST=smtp.changeme.com\nSPRING_MAIL_PORT=465\nSPRING_MAIL_USERNAME=ChangeMe@domain.com\nSPRING_MAIL_PASSWORD=ChangeMe\nOPENBAS_MAIL_IMAP_HOST=imap.changeme.com\nOPENBAS_MAIL_IMAP_PORT=993\nOPENBAS_ADMIN_EMAIL=ChangeMe\nOPENBAS_ADMIN_PASSWORD=ChangeMe\nOPENBAS_ADMIN_TOKEN=ChangeMe\nCALDERA_PUBLIC_URL=http://localhost:8888 # Change me for production deployment to something accessible from your endpoint(s)\nCALDERA_API_KEY=ChangeMe\nCOLLECTOR_MITRE_ATTACK_ID=3050d2a3-291d-44eb-8038-b4e7dd107436 # No need for change\n

Caldera public URL

For production deployment, the Caldera public URL needs to be accessible from the machines where you would like to play breach and attack simulations scenarios.

If your docker-compose deployment does not support .env files, just export all environment variables before launching the platform:

export $(cat .env | grep -v \"#\" | xargs)\n
"},{"location":"deployment/installation/#persist-data","title":"Persist data","text":"

The default for OpenBAS data is to be persistent.

In the docker-compose.yml, you will find at the end the list of necessary persistent volumes for the dependencies:

volumes:\n  esdata:     # ElasticSearch data\n  s3data:     # S3 bucket data\n  amqpdata:   # RabbitMQ data\n
"},{"location":"deployment/installation/#run-openbas","title":"Run OpenBAS","text":""},{"location":"deployment/installation/#using-single-node-docker","title":"Using single node Docker","text":"

After changing your .env file run docker-compose in detached (-d) mode:

sudo systemctl start docker.service\n# Run docker-compose in detached \ndocker-compose up -d\n
"},{"location":"deployment/installation/#using-docker-swarm","title":"Using Docker swarm","text":"

In order to have the best experience with Docker, we recommend using the Docker stack feature. In this mode you will have the capacity to easily scale your deployment.

# If your virtual machine is not a part of a Swarm cluster, please use:\ndocker swarm init\n

Put your environment variables in /etc/environment:

# If you already exported your variables to .env from above:\nsudo cat .env >> /etc/environment\nsudo bash -c 'cat .env >> /etc/environment\u2019\nsudo docker stack deploy --compose-file docker-compose.yml openbas\n

Installation done

You can now go to http://localhost:8080 and log in with the credentials filled in your configuration.

"},{"location":"deployment/installation/#manual-installation","title":"Manual installation","text":""},{"location":"deployment/installation/#prepare-the-installation","title":"Prepare the installation","text":""},{"location":"deployment/installation/#installation-of-dependencies","title":"Installation of dependencies","text":"

You have to install all the needed dependencies for the main application including Caldera if you would like to play breach and attack simulation scenarios. The example below if for Ubuntu:

sudo apt install openjdk-22-jre \n
"},{"location":"deployment/installation/#download-the-application-files","title":"Download the application files","text":"

First, you have to download and extract the latest release file.

mkdir /path/to/your/app && cd /path/to/your/app\nwget <https://github.com/OpenBAS-Platform/openbas/releases/download/{RELEASE_VERSION}/openbas-release-{RELEASE_VERSION}.tar.gz>\ntar xvfz openbas-release-{RELEASE_VERSION}.tar.gz\n
"},{"location":"deployment/installation/#install-the-main-platform","title":"Install the main platform","text":""},{"location":"deployment/installation/#configure-the-application","title":"Configure the application","text":"

The main application has just one environment configuration file to change.

cd openbas\n

Change the application.properties file according to your configuration of PostgreSQL, RabbitMQ, Minio and Caldera admin account and to your platform.

"},{"location":"deployment/installation/#start-the-application","title":"Start the application","text":"

Start the Application:

java -jar openbas-api.jar\n

Installation done

You can now go to http://localhost:8080 and log in with the credentials configured in your application.properties file.

"},{"location":"deployment/installation/#deploy-behind-a-reverse-proxy","title":"Deploy behind a reverse proxy","text":"

If you want to use OpenBAS behind a reverse proxy with a context path, like https://domain.com/openbas, please change the base_path static parameter.

  • APP__BASE_PATH=/openbas

By default OpenBAS use websockets so don't forget to configure your proxy for this usage, an example with Nginx:

location / {\n    proxy_cache                 off;\n    proxy_buffering             off;\n    proxy_http_version          1.1;\n    proxy_set_header Upgrade    $http_upgrade;\n    proxy_set_header Connection \"upgrade\";\n    proxy_set_header Host       $host;\n    chunked_transfer_encoding   off;\n    proxy_pass                  http://YOUR_UPSTREAM_BACKEND;\n  }\n
"},{"location":"deployment/installation/#additional-memory-information","title":"Additional memory information","text":"

OpenBAS platform is based on a JAVA runtime. The application needs at least 4GB of RAM to work properly.

"},{"location":"deployment/installation/#postgresql","title":"PostgreSQL","text":"

PostgreSQL is the main database of OpenBAS. You can find more information in the official PostgresQL documentation.

"},{"location":"deployment/installation/#minio","title":"MinIO","text":"

MinIO is a small process and does not require a high amount of memory. More information are available for Linux here on the Kernel tuning guide.

"},{"location":"deployment/integrations/","title":"Integrations","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/overview/","title":"Overview","text":"

Before starting the installation, let's discover how OpenBAS is working, which dependencies are needed and what are the minimal requirements to deploy it in production.

"},{"location":"deployment/overview/#architecture","title":"Architecture","text":"

The OpenBAS platform relies on several external databases and services in order to work.

"},{"location":"deployment/overview/#platform","title":"Platform","text":"

The platform is the central part of the OpenBAS platform, allowing users to configure scenarios, simulations, atomic testings and all other components used in the context of breach and attack simulations and security validations.

"},{"location":"deployment/overview/#neutral-agents-executors","title":"Neutral agents / executors","text":"

Executors are embedded into the platform but you should configure at least one. It is the system that will be used to execute local injectors on endpoints. Currently we support Caldera (default) and Tanium but multiple will be added in the near future including a home-made XTM agent (by Filigran).

"},{"location":"deployment/overview/#injectors","title":"Injectors","text":"

Injects are used to interact with third-party applications or services (including execution on the endpoints through executors) in the context of a simulation or an atomic testing. A few injectors are built-in but most of them are standalone Python processes.

List of injectors

You can find all currently available injectors in the OpenBAS Ecosystem.

"},{"location":"deployment/overview/#collectors","title":"Collectors","text":"

Collectors are used to connect to all security systems such as SIEMs, XDRs, EDRs, firewalls, mail gateways etc. to check if an inject (execution, emails, etc.) has been detected or prevented and fill the security posture.

List of collectors

You can find all currently available collectors in the OpenBAS Ecosystem.

"},{"location":"deployment/overview/#infrastructure-requirements","title":"Infrastructure requirements","text":""},{"location":"deployment/overview/#dependencies","title":"Dependencies","text":"Component Version CPU RAM Disk type Disk space PostgreSQL \u2265 16.0 2 cores \u2265 8GB SSD \u2265 16GB RabbitMQ >= 3.11 1 core \u2265 512MB Standard \u2265 2GB S3 / MinIO \u2265 RELEASE.2023-02 1 core \u2265 128MB SSD \u2265 16GB"},{"location":"deployment/overview/#platform_1","title":"Platform","text":"Component CPU RAM Disk type Disk space OpenBAS Core 2 cores \u2265 8GB None (stateless) - Injector(s) 1 core \u2265 128MB None (stateless) - Collector(s) 1 core \u2265 128MB None (stateless) -"},{"location":"deployment/resources/","title":"Resources","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/troubleshooting/","title":"Troubleshooting","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"deployment/upgrade/","title":"Upgrade","text":"

Depending on your installation mode, upgrade path may change.

Migrations

The platform is taking care of all necessary underlying migrations in the databases if any, you can upgrade OpenBAS from any version to the latest one, including skipping multiple major releases.

"},{"location":"deployment/upgrade/#using-docker","title":"Using Docker","text":"

Before applying this procedure, please update your docker-compose.yml file with the new version number of container images.

"},{"location":"deployment/upgrade/#for-single-node-docker","title":"For single node Docker","text":"
$ sudo docker-compose stop\n$ sudo docker-compose pull\n$ sudo docker-compose up -d\n
"},{"location":"deployment/upgrade/#for-docker-swarm","title":"For Docker swarm","text":"

For each of services, you have to run the following command:

$ sudo docker service update --force service_name\n
"},{"location":"deployment/upgrade/#manual-installation","title":"Manual installation","text":"

When upgrading the platform, you have to replace all files and restart the platform, the database migrations will be done automatically:

$ java -jar openbas-api.jar\n
"},{"location":"development/api-usage/","title":"REST API","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"development/environment_ubuntu/","title":"Prerequisites Ubuntu","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"development/environment_windows/","title":"Prerequisites Windows","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"development/injectors/","title":"Injector development","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"development/platform/","title":"Platform development","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/assets/","title":"Assets","text":"

The Assets section provides users with a centralized hub for managing and organizing the entities targeted for testing and simulation.

When you click on \u201cAssets\u201d in the left-hand banner, you see all the \u201cAssets\u201d pages. When accessing the Assets section, users are directed by default to the Endpoints page, where they can start managing their assets.

From the Assets section, users can access the following pages:

  • Endpoints: Individual entities, representing any object or terminal that can be connected to a network.
  • Asset groups: Group of asset allowing you to organize endpoints into logical groups based on various filters applied by the user.
"},{"location":"usage/assets/#endpoints","title":"Endpoints","text":"

Endpoints encompass devices and systems that connect to a network, serving as the foundation for interaction with OpenBAS.

The list of endpoints continues to grow with the changing landscape of networked technologies and the increasing interconnectivity of digital ecosystems. Below is a non-exhaustive list of terminal categories:

  • Computers: This category encompasses a wide range of computing devices, including desktops, laptops, and servers deployed within organizational networks.
  • Mobile devices: Smartphones and tablets represent another prominent category of endpoints, providing users with mobile access to network resources and services.
  • Workstations: Workstations refer to terminals or dedicated machines utilized by individuals or groups to perform specific tasks or access networked resources. These systems are typically tailored to meet specific operational requirements and may include specialized software or configurations.
  • IoT devices: The Internet of Things (IoT) encompasses a diverse array of interconnected devices and sensors. IoT endpoints include smart thermostats, cameras, environmental sensors, smart watches, and health tracking devices, among others.

When accessing the Endpoints pages, you see the list of all endpoints imported in your platform. Here, users can create and manage details specific to each endpoint.

Assets can be imported with the help of specific Collectors, like Microsoft Entra.

"},{"location":"usage/assets/#asset-groups","title":"Asset groups","text":"

Asset groups serve as a mechanism for organizing and grouping related Endpoints. These groups are constructed based on filters that define the criteria for inclusion, allowing administrators to segment and categorize Endpoints based on common characteristics or attributes.

When creating a new asset group, administrators have the flexibility to specify the filters that will delineate the group's membership. Currently, the platform offers a range of filters such as platform type, hostname, and IP addresses. We plan to extend the possibilities by including additional filters in future updates.

"},{"location":"usage/atomic/","title":"Atomic testing","text":"

Under construction

We are doing our best to complete this page. If you want to participae, dont hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

When clicking on Atomic testing in the left menu, you access to the list of all atomic testings ever launched in the platform.

Atomic testing is a great way to simulate a singular attack technique you are particulary interested in, and test immediately your capability to prevent and detect it.

You can search for a specific one by name.

The presented list allows you to easily see global scores of all your recent atomic testings.

"},{"location":"usage/atomic/#create-an-atomic-testing","title":"Create an Atomic testing","text":"

An atomic testing is essentially the simulation of a single inject, against a selection of targets (Players, Teams, Assets, Assets Group) with assorted expectations.

By clicking on the + button at the bottom right of the screen, you enter the atomic testing creation workflow.

On the left of the creation screen is the list of all available Inject you can play for atomic testing. Logos on the left of each line indicates which Injector is associated with each inject.

Depending on your integrations, this list can be long. You can filter the list by compatible platforms or by Mitre Att&ck tactics.By clicking on the \"Att&CK\" logo near the search bar, you can also filter by selecting a precise Mitre Att&ck techniques.

When selecting an inject on the left, the form on the right populates itself with a by-default title and propose you to define when the inject should be played after the launch of the atomic testing. You can keep it to 0.

By clicking on Inject content, you can define now or later the targeted assets or players, needed configurations, and the assorted expectations.

The \"available variables\" button helps you to use already defined variables into compatible fields.

"},{"location":"usage/atomic/#atomic-testing-screens","title":"Atomic testing screens","text":"

Details of an Atomic testing is composed of three parts: - a header allowing to launch the test, see its state and update/delete it. - an Overview screen to eaily see the results of the test. - an execution details screen to see expectations of the test and investigate on execution logs

"},{"location":"usage/atomic/#overview","title":"Overview","text":"

The first screen displayed when you click on a specific Atomic testing from the list is a breakdown of your security posture against this test.

As for Simulation and Scenario, Results are broken down into: - Prevention: the ability of your security posture to prevent the inject - Detection: the ability of your security posture to detect the inject - Human response: the ability of your security teams to react as intented facing the inject

Big metrics on top of the screen sum up the expectations' result of all targets.

The list of targets on the left allows you to easily see the result per Target, and for example investigate further why a specific Asset have failed the test.

For a selected target, you can on the right the timeline of the test against the target and the assorted results. The result logs are also displayed.

"},{"location":"usage/atomic/#execution-details","title":"Execution details","text":"

On this screen, you can retrieve details about the atomic testing and its expectations.

You can also see the raw execution logs of the Injector responsible for the test execution.

"},{"location":"usage/challenges/","title":"Challenges","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/channels/","title":"Channels","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

In OpenBAS, Channels represent communication medias with a particular look. There are used to present web articles or other media contents to Players in a specific way.

It helps give shape to your Scenario context and events.

"},{"location":"usage/channels/#create-a-channel","title":"Create a Channel","text":"

First step is to click on the + button at the bottom right and give your new Channel a type (Newspaper, Microblogging, TV Channel), a name and a subtitle.

Once done, click on the Channel in the list to access its overview. Here you can define how media content associated to this Chennel will be displayed to Players.

You can define primary and secondary colors, choose logos and define how the header is presented.

On the right, a mock up of the overview is displayed to give you the look and fill of it.

"},{"location":"usage/channels/#use-a-channel","title":"Use a Channel","text":"

A Channel will then be used in Scenario and in Simulation definition. When you create an Article, you have to choose the Channel that will give it an adequate shape.

See Media pressure page to know how to create and add Articles to your Scenarios.

"},{"location":"usage/collector-caldera/","title":"Caldera collector","text":"

The integration between an OpenBAS instance and a Caldera instance allows you to enrich assets data.

"},{"location":"usage/collector-caldera/#configuration-variables","title":"Configuration variables","text":"

Below are the properties you'll need to set for OpenBAS:

Property application.properties Docker environment variable Mandatory Description Enable Caldera collector collector.caldera.enable COLLECTOR.CALDERA.ENABLE Yes Enable the Caldera collector. Collector ID collector.caldera.id COLLECTOR.CALDERA.ID Yes The ID of the collector. Caldera URL collector.caldera.url COLLECTOR.CALDERA.URL Yes The URL of the Caldera instance. Caldera API Key collector.caldera.api-key COLLECTOR.CALDERA.API-KEY Yes The API Key for the rest API of the Caldera instance. Caldera polling interval collector.caldera.interval COLLECTOR.CALDERA.INTERVAL No The time interval in seconds where the collect is triggered. Default is 60 seconds."},{"location":"usage/collector-caldera/#behavior","title":"Behavior","text":"

Each interval, a job retrieves the deployed agents on Caldera and populates the OpenBAS database by creating Assets.

Deduplication is done thanks to the caldera paw property :

  • if there is no asset on OpenBAS based on this paw, a new asset is created
  • if there is an asset on OpenBAS based on this paw and the source of creation is only Caldera, this asset is updated

There is no automatic deletion of OpenBAS assets if Caldera agents no longer exist.

"},{"location":"usage/collector-caldera/#mapping","title":"Mapping","text":"Agent Property Asset Property paw externalId paw name host_ip_addrs ips platform platform last_seen lastSeen"},{"location":"usage/collectors/","title":"Collectors","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/components/","title":"Components","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/documents/","title":"Documents","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/expectations/","title":"Expectations","text":"

Expectations define what is expected from an Asset (endpoint) or a Players when facing an Inject in terms of security posture. Each expectation has a score representing how well it has been met by the target.

"},{"location":"usage/expectations/#expectation-types","title":"Expectation types","text":"

Expectations can be categorized as either Manual or Automatic, depending on how they are validated.

"},{"location":"usage/expectations/#manual-expectations","title":"Manual expectations","text":"

Manual expectations require manual validation by the animation team, with the validation process and scoring managed manually. They are simple, customizable expectations to be manually validated.

"},{"location":"usage/expectations/#automatic-expectations","title":"Automatic expectations","text":"

Automatic expectations are validated automatically under specific conditions. Currently available automatic expectations include:

  • Automatic - Prevention: Triggered when inject is processed: automatically validated by security integration with compatible Collectors if the inject's action generates a prevention alert, such as quarantine.
  • Automatic - Detection: Triggered when inject is processed: automatically validated by security integration with compatible Collectors if the inject's action generates a detection alert, such as an incident.
  • Automatic - Triggered when team reads articles: Automatically validated when the article of a Media pressure inject has been read by targets.

For injects targeting asset groups, some expectations can be validated in two modes:

  • All assets (per group) must validate the expectation.
  • At least one asset (per group) must validate the expectation.

Special case: Publish Challenges inject

The \"Publish Challenges\" inject doesn't require an expectation, as results are computed directly from Challenges' scores.

"},{"location":"usage/expectations/#expectation-manipulation","title":"Expectation manipulation","text":""},{"location":"usage/expectations/#add-an-expectation-to-an-inject","title":"Add an expectation to an inject","text":"

To add expectations to an inject, navigate to the inject's content and click on \"Add expectations\". From there, select the type of expectation you want to add and set a score for it.

You can add multiple expectations to a single inject.

"},{"location":"usage/expectations/#validate-a-manual-expectation","title":"Validate a manual expectation","text":"

If you have configured manual expectations in your scenario, you will have the opportunity to handle manual validations during each simulation. During a Simulation, navigate to the Animation tab, under the Validation screen. Here, you'll find a list of expectations that require manual validation.

"},{"location":"usage/exports/","title":"Exports","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/getting-started/","title":"Getting started","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

This guide aims to give you a full overview of the OpenBAS features and workflows. The platform can be used in various contexts to handle Breach and Attack simulations at technical or strategical levels. OpenBAS has been designed as a part of the Filigran XTM suite and can be integrated with OpenCTI to generate meaningful attack scenario based on real threat. OpenBAS is result-oriented with many dashboard helping you to evaluate you securoty posture given a defined context.

Here are some examples of use cases: - Designing attack scenario based on real threat - Evaluate your security posture against technical simulations on endpoints - Enhance team skills by evaluating them during simulations along with your security systems - Organize Capture The Flag with multiple challenges - Conduct atomic testing

"},{"location":"usage/getting-started/#home-screen","title":"Home screen","text":"

The Home screen gives any visitor on the OpenBAS platform an outlook on the live of the platform as well as an overview of your global security posture.

"},{"location":"usage/getting-started/#your-first-breach-and-attack-simulation","title":"Your first Breach and Attack Simulation","text":""},{"location":"usage/getting-started/#importing-players-and-assets-to-play-with","title":"Importing players and assets to play with","text":"

First, you need to import Players and Assets that will participate to the simulation and be targeted by technical or strategical events. To do so, you need to ...

"},{"location":"usage/getting-started/#integrate-with-simulation-agent-to-simulate-technical-events","title":"Integrate with Simulation Agent to simulate technical events","text":"

If you want to simulate attack at a technical level, you will need to install a Simulation Agent that will play technical events on your imported assets. To do so, you can go to the dedicated panel from the top right button and follow installation instructions. By default, Caldera is part of the OpenBAS stack.

The Caldera agent will allow you to play various technical events, based on the Mitre ATT&CK matrix.

"},{"location":"usage/getting-started/#building-your-scenario","title":"Building your Scenario","text":"

Once integrations is done, you are ready to create your first Scenario!

Scenarios act as template for your Breach and Attack simulations. After establihing such a template, you will be able to schedule it as a one shot simulation, or as a recurring one.

  • First, go to the Scenarios menu and create a new one with the + button.
  • Once done, define Teams that will be playing in this Scenario by going to the Definition/Teams tab
  • Now go to the Injects tab and add some to build the serie of events that will define the core of your Scenario. If you want to stay strategical, you can select inject like \"Send individual mails\". If you want to go technical, you can select injects linked to attack pattern (Caldera integration allows you to play hundreds of them).
  • Then, define who or what will be targeted by those injects, customize them, and define what is expected to happen. For example, you expect the targeted team to perform a specific action and the animation team will validated this expectation manually. Or, you expect the technical event to be prevented and it will be automatically checked through your integrations with your security systems.
  • Do not forget to define when the inject is played in the scenario chronology.

Optionnaly, you can buff up your scenario by adding Documents, Media pressures, or even CTF Challenges to your injects.

"},{"location":"usage/getting-started/#play-the-simulation","title":"Play the simulation","text":"

You can now schedule your Simulation by hitting the blue \"Simulate now\" button. Choose your moment and hit start.

On time, a Simulation based on your Scenario template is generated. it is listed in your Scenario overview and in the Simulations menu. Fron there, you can follow the course of the Simulation and interact with it, for example to validate manual expectations.

During the course of the simulation, results are updated and can be consulted in the Simulation overview.

"},{"location":"usage/getting-started/#evaluate-your-security-posture","title":"Evaluate your security posture","text":"

Results in OpenBAS are based on expectations' results that are linked to injects played during Simulations. It is then important to manually validate expectations that need it.

Results are broken down by \"Prevention\", \"Detection\" and \"Human response\" metrics. - Prevention displays your ability to prevent the scenario's technical events to be completed - Detection displays your ability to detect the scenario's technical events - HUman response displays how well players and teams react as expected facing the scenario's events.

"},{"location":"usage/inject-caldera/","title":"Caldera injects","text":"

The Caldera framework, developed by MITRE, is a powerful framework designed to simulate cyberattacks. It enables security teams to conduct realistic and controlled simulations of adversary behavior, reducing the amount of time and resources needed for routine cybersecurity testing.

"},{"location":"usage/inject-caldera/#injects","title":"Injects","text":"

In OpenBAS, the Caldera framework has been fully integrated, offering users access to a comprehensive library of injects for conducting simulation exercises. With this integration, users can leverage the extensive capabilities of Caldera within OpenBAS.

Caldera offers 1600+ abilities, covering the full range of ATT&CK tactics and techniques. These capabilities equip security teams with an extensive toolkit to simulate various threats and assess defense mechanisms effectively.

"},{"location":"usage/inject-caldera/#behavior","title":"Behavior","text":"

Injects within the Caldera framework can be played on both individual Endpoints and Asset groups. Prior to playing injects, Caldera agents need to be installed on the target machines to enable interaction with the platform.

Once the agents are deployed, simulations with Caldera injects can be executed. The platform will contact the agent to start the ability. Subsequently, the agents will report the results to OpenBAS. Below is the workflow illustrating the behavior of injects.

"},{"location":"usage/inject-caldera/#configuration-variables","title":"Configuration variables","text":"

Below are the properties you'll need to set for OpenBAS:

Property application.properties Docker environment variable Mandatory Description Enable Caldera collector injector.caldera.enable INJECTOR_CALDERA_ENABLE Yes Enable the Caldera injector. Injector ID injector.caldera.id INJECTOR_CALDERA_ID Yes The ID of the injector. Collector IDs injector.caldera.collector-ids INJECTOR_CALDERA_COLLECTOR_IDS Yes The collector IDs compatible with the injection process. Caldera URL injector.caldera.url INJECTOR_CALDERA_URL Yes The URL of the Caldera instance. Caldera API Key injector.caldera.api-key INJECTOR_CALDERA_API-KEY Yes The API Key for the rest API of the Caldera instance."},{"location":"usage/injectors/","title":"Injectors","text":"

Injectors serve as the backbone of the platform, enabling essential integration and functionalities for conducting simulations and exercises effectively. These components empower administrators to orchestrate a diverse range of activities and responses during simulation scenarios. Some of them are built-in in the platform, and others are external integrations.

Built-in injectors are seamlessly integrated into the platform, while external injectors require the deployment of additional systems alongside the platform to enable their functionality. Together, these injectors provide a comprehensive toolkit for administrators to design and execute simulations tailored to their specific objectives and requirements.

"},{"location":"usage/injectors/#injectors-list","title":"Injectors list","text":"

A multitude of injectors are available, each offering distinct capabilities and functionalities to enhance the simulation experience. Here is an overview of the existing injectors:

  • Airbus CyberRange (Lade): Integration with the Airbus CyberRange platform, enabling seamless interaction and collaboration with CyberRange environments. For more information concerning CyberRange, please refer to the Airbus website.
  • Caldera: Facilitates the use of the MITRE Caldera framework, empowering administrators to leverage advanced simulation capabilities. For more information concerning the Caldera injector, please refer to the dedicated documentation page.
  • Challenges: Manages inject \"publish challenges\". To find more information more about this type of inject, please refer to the dedicated documentation section.
  • Email: Manages the sending of injects' emails, enabling communication and dissemination of simulation-related information.
  • HTTP query: Executes HTTP requests on external services, facilitating interactions with external systems. To find more information about the related inject, please refer to the dedicated documentation section.
  • Manual: Platform functionality for creating manual action reminders, allowing administrators to prompt specific actions to be performed manually. To find more information about the related inject, please refer to the dedicated documentation section.
  • Media pressure: Manages inject \"publish channel pressure\". To find more information about this type of inject, please refer to the dedicated documentation section.
  • OVHCloud SMS Platform: Facilitates SMS messaging for injects, providing an additional communication channel for simulation participants.
  • OpenCTI: Integration with an OpenCTI platform, enhancing simulation capabilities with access to threat intelligence and automatic scenario generation based on observed threat activities.

"},{"location":"usage/injectors/#agents","title":"Agents","text":"

For certain injectors, deploying an agent on the target machine is necessary to facilitate integration with OpenBAS. These agents are software programs that connect back to OpenBAS at certain intervals to get instructions.

To access the agents and installation instructions, navigate to the dedicated page located in the top right-hand corner (button with the screen logo).

Detailed guidance on installing the agents, along with downloadable packages, is provided on this page. Agents are available for various operating systems, including Windows, Linux, and MacOS, ensuring compatibility across different environments.

As of now, only the Caldera injector requires the installation of an agent. This agent enables full integration with the MITRE Caldera framework, unlocking advanced simulation capabilities and enhancing the overall effectiveness of simulation exercises. Full details of the Caldera agent are available in the MITRE documentation.

"},{"location":"usage/injects/","title":"Injects","text":"

Injects are fundamental elements of simulations within OpenBAS, each representing a discrete action to be executed during a Scenario. Managed and facilitated by various injectors, each inject type serves a distinct purpose, contributing to the comprehensive evaluation of defenses.

"},{"location":"usage/injects/#create-an-inject","title":"Create an inject","text":"

Whether intended for Atomic testing or for a Simulation, the process for creating injects remains consistent within OpenBAS.

"},{"location":"usage/injects/#for-atomic-testing","title":"For Atomic testing","text":"

To create an inject for atomic testing, navigate to the \"Atomic testing\" section located in the left-hand banner. Click on the \"+\" icon in the bottom right corner to initiate the inject creation process.

"},{"location":"usage/injects/#for-scenarios-and-simulations","title":"For Scenarios and Simulations","text":"

For injects intended for use within simulations, access the desired Scenario or Simulation and navigate to the \"Injects\" tab. Click on the \"+\" icon in the bottom right corner of the screen to open the inject creation panel.

Note that an inject defined in a Scenario will be used in all the scenario's subsequent simulations. An Inject defined at the simulation level will not be replicated into the Scenario itself, thus it will not be replicated in future scenario's simulations.

"},{"location":"usage/injects/#inject-creation-process","title":"Inject creation process","text":"

Once the inject creation panel is open, you can proceed to configure the inject according to your requirements. Key steps in the creation process include:

"},{"location":"usage/injects/#1-choose-the-type-of-inject","title":"1. Choose the type of inject","text":"

You first need to select an inject in the list of available ones (on the left of the creation screen). Logos on the left of each line indicates which Injector is associated with each inject. Depending on your integrations, this list can be long.

To facilitate the selection into this possibly very long list, you can search injects by name and filter the list by selecting a precise MITRE ATT&CK techniques for instance.

"},{"location":"usage/injects/#2-set-inject-parameters","title":"2. Set inject parameters","text":"

When selecting an inject on the left, the form on the right populates itself with a by-default title and propose you to define:

  • Descriptive information: Fill in details such as the title, description, and relevant tags to categorize the inject effectively.
  • Execution timing: If you are creating your inject in the context of a scenario or simulation, you have to set the timing for when the inject should be executed within the simulation timeline, ensuring it aligns with the overall scenario progression.

By clicking on \"Inject content\", you can define now or later:

  • Inject targets: Specify the targets for the inject, which may include players and teams or assets and assets groups depending on the inject chosen.
  • Expectations: Define the expected outcomes or responses to the inject, outlining the desired actions or behaviors by players.
  • Attachments: Attach any relevant documents or resources to provide additional context or information related to the inject.
  • Additional fields: Depending on the type of Inject selected, you may have access to additional fields specific to that inject type. These fields may include the subject and body of an email, channel pressure settings for public communications, obfuscation options, and more.

The \"available variables\" button helps you to use already defined variables into compatible fields.

By following these steps and providing the necessary information, you can create injects tailored to your specific testing or simulation objectives.

"},{"location":"usage/injects/#inject-types","title":"Inject types","text":"

There are different types of injector in OpenBAS.

"},{"location":"usage/injects/#manual-action-reminders","title":"Manual action reminders","text":"

Manual action reminders are injects designed to prompt animation team to perform specific actions manually. It allows to place in the timeline a stimulus to be produced manually, outside the platform (e.g. simulated a call from a journalist on the switchboard telephone). These reminders ensure that critical tasks are completed as part of the simulation, enhancing the accuracy and realism of the exercise.

The inject associated with this type is referred to as Manual.

"},{"location":"usage/injects/#direct-contact","title":"Direct contact","text":"

Injects for direct contact allow sending emails or SMS messages to players. These injects assess the organization's response to communication-based threats, such as phishing attempts, social engineering attacks, or emergency notifications. They can also assess crisis management, including responses to internal information requests or management pressure.

Here's the list of injects linked to this category:

  • Send a SMS: enables sending SMS messages.
  • Send individual mails: enables sending emails to individuals separately.
  • Send multi-recipients mail: enables sending emails to a group of people (each recipient can see the other recipients).

"},{"location":"usage/injects/#media-pressure","title":"Media pressure","text":"

Injects simulating public communications involve the publication of articles, social media posts, or other fake announcements. These injects replicate scenarios where public disclosure of information or events affects an organization's reputation or operational continuity.

The inject associated with this type is referred to as Publish channel pressure.

"},{"location":"usage/injects/#challenges","title":"Challenges","text":"

Challenge injects are set to test participants' skills and response capabilities by publishing challenges. These injects present scenarios or tasks that require active participation and problem-solving, allowing administrators to evaluate players.

The inject associated with this type is referred to as Publish challenges.

"},{"location":"usage/injects/#http-requests","title":"HTTP requests","text":"

HTTP request injects are used to forge HTTP requests to a third party services in order to perform actions outside the platform (e.g. API call to an EDR). These injects enable the platform to communicate with external services, gather information, or trigger specific actions via HTTP protocols.

HTTP requests GET, POST, and PUT, can be sent. The corresponding injects are named HTTP Request - \\<request type>.

"},{"location":"usage/injects/#integrations-with-agents-and-cyberranges","title":"Integrations with Agents and CyberRanges","text":"

Injects executed on remote systems are facilitated by Injectors like Caldera or Airbus CyberRange. These actions simulate real-world attack techniques, allowing administrators to gauge the effectiveness of their security posture in response to various technical actions attackers may take.

There are over 1,700 such injects covering all the TTPs in the MITRE ATT&CK matrix.

"},{"location":"usage/injects_and_expectations/","title":"Injects and Expectations","text":"

Evaluating security posture in OpenBAS is to confront events (aka Injects) with Expectations.

"},{"location":"usage/injects_and_expectations/#injects","title":"Injects","text":"

Threats are the results of actions by threat actors, and a combination of intent, capability and opportunity. In OpenBAS, simulating threats and their attack capabilities involves executing injects targeting players and assets.

Injects can be technical, emulating action attackers might take on an endpoint, and non-technical, representing interactions with players or impactful contextual events during a crisis (such as media inquiries by phone following a data breach).

"},{"location":"usage/injects_and_expectations/#expectations","title":"Expectations","text":"

Each Inject is associated with Expectations. Expectations outline the anticipated outcomes from security systems and teams in response to attacker actions or contextual events.

Expectations can be about:

  • Prevention: ensuring that the security posture can prevent the attacker's actions.
  • Detection: ensuring that the security posture can detect the attacker's actions.
  • Human response: ensuring that teams react appropriately according to defined security processes.

The collection and concatenation of expectations' results, broken down per type, allows to assess the security posture against a threat context. This provides insights to identify areas for improvement.

"},{"location":"usage/injects_builtin/","title":"Injects built-in","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/media_pressure/","title":"Media pressure","text":"

Under construction

We are doing our best to complete this page. If you want to participae, dont hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

Media pressure are Articles or web contents you create to give more shape to your Scenario, or to simulate contextual pressure on your Teams and Players.

For example, you can create an Article about the data leakage your organization is said to be affected by during the Scenario, and simulate its publishing by a large coverage media outlet with a \"Publish channel pressure\" inject.

"},{"location":"usage/media_pressure/#create-an-article","title":"Create an Article","text":"

To create an Article, go to the definition page of your Scenario or your Simulation and click on the + button near \"media pressure\". If you did not create Article yet, you can also click on the more visible \"Create an Article\" button.

An media pressure Article is defined by: - Channel: the Channel template that will shape the article during the display to the Players. A Channel must have been defined in the platform. - Title - Author - Content: the content of your article. You can enrich the text and have a preview of the formatted result. You can also go fullscreen. - To simulate social network engagement, you can define number of comments, Shares and Likes of the Articles. - Documents: you can attach file to the Article. It can be useful if you want to simulate the publication of a large report you don't want to craft inside OpenBAS, like a pdf security report for example.

Once created, Articles appears as cards in the definition screen of the Scenario or Simulation they have been created into. Note that if an article is not yet used in the Scenario or Simulation (probably because it does not have been used in a \"Publish channel pressure\" inject), it is mentioned into the Article's card.

"},{"location":"usage/media_pressure/#use-an-article-in-scenario-and-simulation","title":"Use an Article in Scenario and Simulation","text":"

To use an Article in a Scenario or Simulation, it must have been created in the context of the Scenario, the Simulation's parent Scenario or the Simulation itself.

When you select an Inject, if it is compatible with media pressures, you can add a media pressure article to it.

"},{"location":"usage/mitigations/","title":"Mitigations","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/opencti_scenario/","title":"Scenario generation from OpenCTI","text":"

Creating a scenario can be a complex task, especially when aiming to build one that is meaningful and relevant to the specific threats facing your organization. To streamline this process and ensure that scenarios are closely aligned with your threat landscape, you can leverage the integration between OpenCTI and OpenBAS.

When generating a scenario from OpenCTI, a scenario is created and can be accessed from the scenarios screen. The scenario name will include a reference to OpenCTI, indicating its origin. This scenario will automatically contain relevant sequences of injects based on the threat context identified in OpenCTI.

However, it's important to review and potentially customize the scenario to ensure it meets your organization's specific requirements. Additionally, you'll need to select appropriate targets for the injects within the scenario.

Once you've finalized the scenario, you can schedule your simulation as you would for any other scenario. The overall results of the simulation will also be available directly within OpenCTI, providing insights into the threat context upon which the scenario is based.

"},{"location":"usage/overview/","title":"Overview","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/payloads/","title":"Payloads","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/personas/","title":"Personas","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/playing/","title":"Playing","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/reports/","title":"Reports","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/scenario/","title":"Scenario","text":"

When clicking on Scenarios in the left menu, you access to the list of all Scenarios defined in the platform. Scenarios act as templates that translate threat contexts into meaningful events to simulate.

Scenarios can be grouped by defining categories, main focus, severity and tags. It is then possible to filter the Scenarios list based on these attributes. Quick filters are available by default at the top of the screen to filter Scenario on most used categories.

It is also possible to search Scenarios by their names using the search bar.

"},{"location":"usage/scenario/#create-a-scenario","title":"Create a scenario","text":"

To create a scenario, hit the + button on the bottom right of the screen and define general metadata that make sense for you.

Once done, the scenario is accessible in the list. Click on it to see its details and define them.

"},{"location":"usage/scenario/#scenario-overview","title":"Scenario overview","text":"

The overview provides comprehensive information for evaluating your security posture against the threat context over time. It displays the scenario's context along with the results of the simulations played from it. Additionally, the list of these simulations is shown, allowing easy access to their specific details and results.

If the scenario has never been simulated, the results' widget contains an example of how results will be displayed, and the list of simulations is replaced with an invitation to generate one.

"},{"location":"usage/scenario/#defining-a-scenario","title":"Defining a Scenario","text":"

To define the scenario, navigate to the \"Definition\" and \"Injects\" tabs.

In the \"Definition\" tab, you can add various elements to construct events:

  • Teams and Players involved in the scenario,
  • Custom variables for simplifying injects' customization,
  • Articles that you might use to simulate media pressure,
  • Challenges designed for including Capture The Flag elements in your scenario.

Once you have added all the elements you need, you can go to the \"Injects\" tab to begin to create the chain of events that will shape your scenario.

By clicking on the + button at the bottom right of the screen, you enter the inject creation workflow.

"},{"location":"usage/scenario/#launching-a-simulation-of-the-scenario","title":"Launching a simulation of the scenario","text":"

Once you've finished defining your scenario, it's time to simulate it and evaluate your security posture!

To do so, click the \"Simulate now\" button. You can choose to simulate this scenario as a one-time evaluation, scheduling it for a specific date and time. Additionally, you can set it to simulate recurrently to assess your posture over time. The results of each simulation will populate your scenario overview.

A visual indication, located to the right of the scenario's title, provides a quick way to know if the scenario is currently being simulated.

"},{"location":"usage/scenario/#export-your-scenario","title":"Export your scenario","text":"

You can export your carefully crafted scenario as a JSON file by clicking the three-dots button at the top right of the scenario screen. This allows you to share it with others, or store it outside the platform.

"},{"location":"usage/scenarios_and_simulations/","title":"Scenarios and Simulations","text":"

In OpenBAS, the core concept to simulate attacks is based on the duo Scenario & Simulation.

"},{"location":"usage/scenarios_and_simulations/#scenarios","title":"Scenarios","text":"

Scenario enable to translate a threat context, such as an attack or even a threat actor, into a meaningful sequence of events (referred to as injects), which can be technical or non-technical. This chronology of events can be enriched with associated documents or media articles to simulate the environment surrounding them.

Within Scenarios, you also specify who participates, whether actual people (referred to as Players) or endpoints (referred to as Assets). They will be the targets of the events representing the threat.

In order to translate real threats into Scenarios, it is possible to create them from OpenCTI data, such as Reports.

"},{"location":"usage/scenarios_and_simulations/#simulations","title":"Simulations","text":"

If a Scenario translates threat context into meaningful events, a Simulation serves as a means to evaluate your security posture against this threat context.

By simulating a scenario with recurrence, you can evaluate your security posture over time in response to a threat context. Since simulations are always linked to their parent scenario, even if it evolves, you can: - assess your risk against evolving threats, - evaluate the effectiveness of your security governance in addressing your most relevant threats.

"},{"location":"usage/simulation/","title":"Simulation","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

When clicking on Simulations in the left menu, you access to the list of all Simulations ever launched in the platform. You can filter by tag (for example to only display simulation related to a specific threat actor) and sort them (chronologically, by status, etc.).

From this screen, you can easily see last global scores and access ongoing Simulations at platform level.

"},{"location":"usage/simulation/#creating-a-simulation","title":"Creating a Simulation","text":"

The best practice to create a Simulation is to do it from a Scenario in order to evaluate your security posture over time against a specific threat context.

But you can create directly a Simulation if you want, by hitting the + button on the bottom right of the screen. You will have similar definition options as in Scenario creation.

"},{"location":"usage/simulation/#simulation-overview","title":"Simulation overview","text":"

The Overview regroups everything you need to know to follow your Simulation by its Results. Results are broken down into 3 main metrics:

  • Prevention: the ability of your security posture to prevent the simulated scenario's events to happen
  • Detection: the ability of your security posture to detect the simulated scenario's events
  • Human response: the ability of your security teams to react as intended facing the simulated scenario

The top of the Simulation screen give you the ability to Start, stop and Reset the Simulation, delay the launch time.

"},{"location":"usage/simulation/#overriding-the-scenario-definition","title":"Overriding the Scenario definition","text":"

In a Simulation, you can see and modify all elements defining it: Teams and Players, Variables, Media pressure, Challenges, Injects. Modifying the Simulation definition allows you to customize it to adapt a singular play to some temporary changes. For example, change an email address into Variables to be used in email-related injects, change a playing team, etc.

"},{"location":"usage/simulation/#animating-a-simulation","title":"Animating a Simulation","text":"

The Animation screen of a Simulation is the place to follow the Simulation execution, especially if you are conducting simulation at strategical level (heavily relying on interactions with Teams and Players, manual validations of expectations) for training your organization on all aspects of a cyber crisis.

The Timeline screen is the overview of the Animation tab, to see ongoing injects.

The Mails screen is a way to manage email interaction with Players into the OpenBAS platform.

The Validation screen is the place to manually validate expectations of the Simulation to consolidate Results.

The Simulation logs is an interface for the animation team to collaborate during the Simulation.

"},{"location":"usage/simulation/#lessons-learned","title":"Lessons learned","text":"

In the Lesson Learned tab of a Simulation, you can manage the collection and concatenation of customizable surveys. It helps you in conducting the most underestimated part of a Breach and Attack simulation involving real people, by automating it and complete your Simulation's Results with qualitative feedback.

"},{"location":"usage/skills/","title":"Skills","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/systems/","title":"Systems","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/targets/","title":"Targets","text":"

When you are using an Inject, whether for Atomic testing, Scenario or Simulation, it's necessary to define the recipients, known as \"targets\", which could include Players, Teams, Assets (endpoints) or/and Asset groups it will be sent to. They are called \"targets\" of the inject.

Note that certain injects can't target assets, while others can't target players. For instance, the \"Send individual mails\" inject can only target players and teams, not assets.

Target selection is performed during inject creation or update.

"},{"location":"usage/targets/#selecting-players-and-teams","title":"Selecting Players and Teams","text":"

Directly targeting a player isn't yet possible. Instead, you must target a team. In scenarios or simulations, the team must be included in the scenario or simulation to be selectable. However, when creating atomic testing, all teams in the platform are selectable.

Note that visibility of teams and players is limited by the organization's segregation.

When selecting a team as the target, all players within that team will be targeted by the inject. Each player will have to complete expectations.

"},{"location":"usage/targets/#selecting-assets-endpoints-and-asset-groups","title":"Selecting Assets (endpoints) and Asset groups","text":"

You can target assets (endpoints) directly or asset groups. In the dedicated dialog, only assets compatible with the inject are listed by default.

When selecting an asset group to target, all assets (endpoints) within the group will be targeted by the inject. Each one will have to complete expectations.

"},{"location":"usage/teams_and_players_and_organizations/","title":"Players, Teams and Organizations","text":"

Breach and Attack Simulation involves testing your security posture, and people are an essential part of it!

Players, teams, and organizations are where you organize the human aspect of your security posture within OpenBAS (in the \"People\" section). These entities are the targets for injects during your simulations and atomic testings.

"},{"location":"usage/teams_and_players_and_organizations/#players","title":"Players","text":"

Players are the users that may take part into your scenarios, to be tested against attack or contextual events (i.e. injects).

Players can be created manually with the + button at the bottom right, but we encourage you to activate an integration allowing to import them from your IT environment, like with Microsoft Entra integration.

Players are defined by:

  • Email address,
  • First name,
  • Last name,
  • Organization: to link a player to an organization (see below),
  • Country,
  • Phone number: necessary if you want to play SMS injects,
  • PGP public key: necessary if you want to play encrypted email injects,
  • Tags: if you want to sort them by custom categories.

This list of players can be exported by clicking on the export button, at the top right of the players screen.

"},{"location":"usage/teams_and_players_and_organizations/#teams","title":"Teams","text":"

Teams group players into units that can be targeted by injects during simulations or atomic testing. They serve as a way to represent different security teams (e.g., CSIRT, SOC, VOC) and other relevant teams that might be involved into your scenario (e.g., legal department, communication department).

Teams are defined by:

  • Name,
  • Description,
  • Organization: to link a team to an organization (see below),
  • Tags: if you want to sort them by custom categories.

From the teams list, you can manage players by clicking on the three-dots inline button on the right and selecting \"Manage players.\" From there, you can view, update, or delete all the team's players and see their communication channels' state.

"},{"location":"usage/teams_and_players_and_organizations/#organizations","title":"Organizations","text":"

Organization provides a straightforward method to segregate players and teams within the platform. A player associated with an organization, even with the required rights to animate and planned scenarios and simulations, will never see players and teams from other organizations.

This feature can be particularly useful if you are using OpenBAS to plan and execute simulations for various companies or subsidiaries.

"},{"location":"usage/testing/","title":"Testing","text":"

Under construction

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

"},{"location":"usage/variables/","title":"Variables","text":""},{"location":"usage/variables/#built-in-variables","title":"Built-In Variables","text":"

Within certain injects, users can leverage a set of predefined built-in variables to dynamically customize content. These variables are designed to streamline the process of personalizing messages. Examples of built-in variables include but not limited to :

  • ${user.email}: Represents the email of the target user
  • ${exercise.name}: Represents the name of the current exercise
  • ${player_uri}: Represents the player interface platform link
"},{"location":"usage/variables/#custom-variables","title":"Custom Variables","text":"

In addition to the built-in variables, users can define their own variables within an exercise.

To define custom variables :

  1. Select an exercise
  2. Navigate to the Definition tab
  3. Navigate to the Variables section

In this section, users can create, update or delete custom variables.

"},{"location":"usage/variables/#limitation","title":"Limitation","text":"

To create custom variables, consider the following limitation:

  • Only lowercase characters and _ are authorized for the key value
  • Variable value can only be string
"},{"location":"usage/variables/#use-variables","title":"Use Variables","text":"

These variables can be used to enhance personalization of certain stimuli within an exercise. Here is a non-exhaustive list of concerned stimuli : - Email sending - Sms sending

"}]} \ No newline at end of file diff --git a/1.0.X/sitemap.xml b/1.0.X/sitemap.xml new file mode 100755 index 0000000..1e8b33f --- /dev/null +++ b/1.0.X/sitemap.xml @@ -0,0 +1,278 @@ + + + + https://docs.openbas.io/latest/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/administration/enterprise/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/administration/introduction/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/administration/parameters/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/administration/policies/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/administration/users/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/authentication/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/clustering/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/collectors/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/configuration/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/injectors/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/installation/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/integrations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/overview/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/resources/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/troubleshooting/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/deployment/upgrade/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/development/api-usage/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/development/environment_ubuntu/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/development/environment_windows/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/development/injectors/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/development/platform/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/assets/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/atomic/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/challenges/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/channels/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/collector-caldera/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/collectors/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/components/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/documents/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/expectations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/exports/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/getting-started/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/inject-caldera/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/injectors/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/injects/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/injects_and_expectations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/injects_builtin/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/media_pressure/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/mitigations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/opencti_scenario/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/overview/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/payloads/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/personas/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/playing/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/reports/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/scenario/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/scenarios_and_simulations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/simulation/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/skills/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/systems/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/targets/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/teams_and_players_and_organizations/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/testing/ + 2024-05-14 + daily + + + https://docs.openbas.io/latest/usage/variables/ + 2024-05-14 + daily + + \ No newline at end of file diff --git a/1.0.X/sitemap.xml.gz b/1.0.X/sitemap.xml.gz new file mode 100755 index 0000000000000000000000000000000000000000..c1196ff521e454ab67bc7da69adb1015353adbcb GIT binary patch literal 637 zcmV-@0)qV?iwFo{jY4Ju|8r?{Wo=<_E_iKh0M(hzZrd;nfbV^ZAos*=(E;0#rnf!8 zb`BVcb+}2QCQ3=Orym{nC+7hJL|-h^67hj1DN^1%y~MCMViDr>xV&56E*F>_drITu z^2hgYtIx})?aii@AXpbVImzSlP;34=45!m+EmSc=mNl1g5O>fA8D53M?fT1dd$Z7M zQZSD$*Cw#rPFh6Ocy_uxW7>nPiH86cr4E~6nsmJeq(=7J``i16)$OO%-Gfefm0eA9 z2S_767yP~TK;gU@t|T+e@J{m&T;L-ml3Jju%?3;rOD-g6g_u$;?3=qh7-7y(Afj4Y z%n)-RM`(t(Nzcahm;;}q2HOCw9`sHQx_00zVi%gI>uO3hLCYbat8Bv?9H(a*TQTDd zlz!T=E+wfDf+6Ep9A{rJVPDqD>qvOAz*Ceb8o=J#&fO!p?C9qW!n@4p}*p z>l{*bYJsb2rGLV>K#;HwrGG8U$TDq&bxzmR4&~c zbi_JU*DGxjOGV!~?Oc}_$x{6nQP-SCD0h(j&QKP3!`?Rv8fcx>ZXW zjV7F6lDkSfahRa!+s<)&Khl~pGn@m1@BQOvEW!!8#|&`p`Iv2{ENG#qG7{%+nDeG8 z6k9NnPCrO{2mM8%`{rNHQZe>UsqM+w|LIvph;uYe=~NT{Wz1!SM1M@g)->#Y8#rp( Xg6Zeb|L45i1nc%MzI|InXe9sus6;tb literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/Channel_update.png b/1.0.X/usage/assets/Channel_update.png new file mode 100755 index 0000000000000000000000000000000000000000..2e75551d4167d778e91822ad54a311b62367f2da GIT binary patch literal 188957 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%0Aqy7@dm4bLJ|{!lns`7R~0~ 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 Yu-|1^@s6 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/assets_list.png b/1.0.X/usage/assets/assets_list.png new file mode 100755 index 0000000000000000000000000000000000000000..fb78ff52ac706913e7ee452e33e97a2c695539ad GIT binary patch literal 67416 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

^xIt#f1W0Z~!xE)JbKnNl++1?P&*J?i9hGvM(~ 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 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/assetsgroup_creation.png b/1.0.X/usage/assets/assetsgroup_creation.png new file mode 100755 index 0000000000000000000000000000000000000000..a633fd3dc1f419d125d7f0026bbbe7fb8aeae4a7 GIT binary patch literal 68717 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 PyIs&R(k?l7?e2d76JU}@ literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/atomic_details_overview.png b/1.0.X/usage/assets/atomic_details_overview.png new file mode 100755 index 0000000000000000000000000000000000000000..7bec4ce37661773a14dd7a53e08fcce6e2458be0 GIT binary patch literal 59112 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 F{{z_WV*daD literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/atomic_testing_execution_details.png b/1.0.X/usage/assets/atomic_testing_execution_details.png new file mode 100755 index 0000000000000000000000000000000000000000..4d450f1b5f814dad3afe7346b76d13086f1cef6a GIT binary patch literal 42000 zcmdqJcTkgC_b-lOITpZ%2nrk<3Wz90q^pQXmkyx`NJ|JHEs_wh0XD!w5s=;!l1NE_ z1c-{lkzNx?C?Y)}p(cTZkel{a&KpH()`?^v0L?UmUp zA|fJYdi$oWh{&!VA|l)2f9w)IAyT6#!e86MZB1^7pu11Z3yB^6*DbG$h*YKQ+w|Hg zr1ym0b_o{|ITZ2t&$cl?`3E8*MJ1*;uiHQHSQy>o<`B6hSgtENeO0OcO#P063CH&( z>Gxjxy`$RuIri5E*i{Vg-|A>BRig&gRKD>{r>ND>q892?M~K0o1SbJF6e)cI~R%Jg1^`I zA5wfr(C@!R9`61>MVt%y6!rPcH_I)LgHrXY=j;uQ8?i3;pYumH4o?RsZ7xNRE_U<% zJgiBo8?LO5Uk8JqKte8zA$&0e^|p4tJkXVtC=*c1Fi@b2!9MqCUxfd|Q5ov=-XC9b z$1BC(%_?=~KpHE<$FhpsnIkr?eddAsJ$BuDAzL4lSJoAJVOzcszgJ;QZP!3kAK{y) znw^Ktcz~jjVIvm#RVB)5-C+R>2E;*f!qmJR6t_{1XK0YJI5ebL_VwTn(|~I*hdm$+ zZ^Y%d03RNn{$o2X!=dIo6zoQJ)(nZrzFYI8t>}*pW{9n41J%Di{H!zzZNqXn+X>ZI z^NfyOWl5-mn`j=o6!+b~XAx<8$9c$TB_VS4Y_gl(F$q!xNl$iY@*be`sv1^VhSVqR zSJiTFc3M7o**8Z$8hz>z5t5O~5+$=7TD9qt4&O(wlHG%wUL-o_rYwdSwmp67H*W1# zT9b9g8Qgu@(%DaS)$&}H&yn#AOjb`c7EyCek+as{{5JW%v%92?50WIi{66vX5P0ha z?jYdkoq0cr_<#hbn60pQt%f1sJ~_X>{TV;Xo)0cWf#7vtz&~p>jj4iP#|!(sB~Vux zM&KGs2RdK5Kmwf)=PA)FBHb0~QhSbF>|ZMike`v%cvXziU(yrh`k;rcgWLQ{6{uuPIH zcoPLPtBx2uELw8Lzo~>Sql{m#>9Keim0deH>eT+?D9}mcLs3cUq*ErdQvSha`}0wI z{b4fZxow>(LT_5B3l`T@8(cUPm9{cEx(gVPGphs1&Z9^~bW>?gwR?s}d@hW}X42B4 z_WNs<@a)VrDLEdkORs%lKFfE8_?@WW8V@_VIQB`!qk*krsHY(VXZ;$@yCd4Q^kOk{ zHRmpNr$o&I&up$toz>RKQ=ZnOeJV~z9NHZ=F4(H>*sn5NS+dqROdlI_j(|ezqO@h5GSF4mQ}-W(li0uh#{eItf9anOV1Op>9WXWZfR> zVV1$OYa$(aZKx}D^X%7Gh9&(I>+a)2npj-l4E>3AIqvt#8x`1JS}xNm zUNbWPR?~5GiDf4Hvm03JcQNB4jUspr&(81M5y|nrMce5apIK2Go*|!HkwC9v1iIf# zj*Kn-(xNIcX8oWzOLDQN+*KnoM_25(MDB>^ZpXFD0_HBjj@^n2h$QWlH81Z5Rw`+Z ze)q{=8GggGkItN&rSr-@w5yFPcRhuc0=ha4v9<@TooDYK>9J7fRU_wP$VP{;fiDJ_ ztYbDL7A0rC`+?t$qL?n&S5$kLXOu%`g=39!z2jWrY~3!gWoNlA+EKCo=zGi*TYX4% z{aencr#kxOTHecO(g#BE1qC-)0dv+kEkdC&Txo5S+=3=47a9IuvB>nq$-DG28L6j% zle|X-LpQ;d!(V_9C&jRUNY@|VlCaCvYDBl0zf*%|pzNj|?$gOr5;k9!NBt2FR-0qe zi2nV`fgHmd1>H(x?w3q0X_g#Mi8@3#?=sWzos2YKr9qcI{AUSZ7KHc`voKpUY;+TS zKiBID?dXtLcD`nmq|?S|T|m8+;S^BJr3cCEo;>HdDru-3iPJMAfw`ZcJhTkmOxiK{_ZW-~(` z4KTyUwkNdi_|2+6dS!QzmcpE#N^eT(4dh=&+&(=cmHTg%Fn{%1M@42!AGK+Zo06V( zyPIGdfglvd#k5v1bq*<%Lp_1hOr%lWiIOAor>Yy<^0eHE5#bzl?d#BS_zVD=9Hn9U zkut-5(%5pjt+sBN(F4u=iK+EToe}zbO1)bizQ*KN^A&55i@ExdV)ZlLeRrO#8<27I z5wAn5T{UeZ{%BOYqsKc}6z*Q!9}aJ~F<2?nQtOETjULT?e^i^*__;P`jRq%_oDjP9 z!^MRY%3U?TvMP|#KisO|x{?8L{l<&FuH-&wn6MEr-xzp>W;9#+ta z2`_{r3Zb-xE~JJn$gZ;!X|rVdXx0sKT)R)VAZlIs0UjABNhr$^aSvYh}e&eDBJ`iyHNQ|C-_9 z?rDi1Ou-%MN*yhurTHx@f$+WWxt*ZuJK#zKQP(poK3oLATN)gI}8L=y9FZ=>=;uJ*;u)MVYSp@f<^+R1QEl@1Ou?FV5B+{TpSi zmK?hZ?vjQww*63-z zY*0mJ9{02E%5AB5mqpX;>&(q6^%aUA;t5Px{yRTM{#EYBQjdg#?8uqQG+C@ zy)~(bI}K?l=}=$X<@s_XiIUDP@R*~aL!WuK9K{=nrL$Kgt{+2r^u(19CDOym1zB(W z63#}DO=GY8#HURIn=Yw1P{T&}yzWVb@hv!cL`P^O+ghNdz}8j$Ba`Uq^PZkvv*#lt zKkvfOnwrV%KH`&pmdMUzH>}>;Y7&Qxqp|`aO$d zE1`)@t%$ZO1NIMYw3iP$yYFf)5!&@hs>5lG$at#>|Gz z^R%-r-G5$XQo~5rbea;h;acXjq zp5~HuxmV0YMi^xb_aMl|2m2*fS0Cx#x@4sj0%j$8E)H>@pLV#Lhm2OOg!F!B6C~}8z3364rJr{I z-mWGPvm*_4W6MlLDG;I_woK$PSA2+#&%Q=sGEv!9-qC9J&q)Yhs?+4zpkvp zpS!8l0$6;P8j_~tkEhC^m_4jJonvRadG7+7&N;Ek0UW;Kq2L^oyjBYK>xLd`__!a2 zgV<DqYKECk<^I5ct1vuQ9sHN7t>omW|U_a(X&fi(YU?r&$mb z{Y2Scd^)3t)S0&Ph3PQ_b8F%E(YSQH{7%7RU>&!p8OC-*!Rhi8L5DT-Z4uU;P!~C5 z4E76fRov!g+D+MX{Qk(D=?@^*BQNqHc#12=oZcMSpAe9^N^icw=Mq2tSe`pE`4F6+ z+t^TbL%j@X&12Ijyja#e{N=?Lc%!^~3FR&+g4w6Lw1l9@Y$J;k)~K^qOPYrz{?Zkg zcW}%id*}tYa1;8YW_oQ002@l(4%+aM(Iy8S3mW^YZP4Eew-*)Y-^620!TO-AD%YV4 zgA~DJ&fq2m_JOa}Y;`(AQmOWP64&HT*qb72F3u^XnNv>3KGEm~s|+xDXpfXzisegb zq}H5;0>#50HLXUq=Gb%QcX>W@(a+ zQA3sb^3J{Af@#8T>SjEggiWncOaGfd8EIqZy_lq3}+W6k!Jo9VuyxijDR?Q&|8=8?KS zrn{H5Gh?RL$wT$eb;I{=fb%{(%89Dl)gWxg}{RZ_u|Uy`QV*z zp!sv~Di6U&Za|Z#)ur$TyhhS%cIo`PZQI~mUbP+{4nI&ae_OhcLo!T4lLk5Rj(N&C zY89Dv?&V6@iyFr9vC-o|x85z!!NIenjjSFM;tJbA2IATXBCq9fwdtx$>oW%bbn3)1cvuqMX@3DQZ~1?2XQwO0Ao(MqyO|$7(h|^6jmxk0j0T zPdiGoVnzR>=Geo#CFC>|v-RDZy!IJ;YF!g_j2FC8!~i|V`WzA&t{El03X#QtWkij( z!;I_XN?-|I=v?4cwA#nu#Dv&1kPEM_tDh#A6_*Y4uqOV(<;7TS`G3?*ipWij^3Y=bfAU|%B9*) zHJu?>y0NA;g{rR9{oVHWrN zWug9OIcwvifygu++4KVCOO}JKm)OW?ZK$i5yB4|cNkWkh#A}77XQ;SJf7`B;)ZU*$ zGMo_m^uVUwc{E}xCU<1RAc4wXO!1HPV=^5MqY9wkW_45;@&e77^ zgPZ_HwghsbOQM4HF%WTrxet^4HHzV}`QkX#9WnIMqmNnWCGTJH=TdZFI?aElJTh$4 z4pFmSlz-=9ZSXk=;*8ME=5_bJVT0zL1oOVnrast}T{Y9hMI3Tmp%>n)X${ivZO+W{ z?JM8OjV5NXo`|QKcI3-U;Mrlj07E+Zg7oRdJFCyE@F8FA zc`gCbd+lnJVRI9Z?YY@eSB(p7w7C?PONk%YfmUn-t@e~);ZIqyl>9&&658DtlO3hE zktX=Kyyau>{C|tcN~iR3S7S4LT}Jl&59E~|OQ%6B-+lrjIjWg_Cm4at;};k%ac7an zEjP3BgM9j4zfpKrLjg9_7}L)G>al6(ellF}oUZv*d-?9%Uw;F$&HEdPxq6u&Mtbg2 zy%WB@^Um6(--xi6_Dms(>SOFy6T}=!_H|1_|tF8zVJ!0r;by5=J$rd zp8gHm!LEy)@&#a6m&+|gu&)1@D&VrF#dL45Z_hE*D;3f`VV*{_T8ex2EIngHGmG;T z1!ZBJluK<(4Wc)XYDyq6Su7buu-mz=HGuD6Inl2%7MbP3%hLFnp6|6SX<8TJDiE{l zJe#2_cGk=;SAW54>LeL$^iF3wCc-JJRX>u*zfg-mxJ={zI;0yw4-J=xG@RA@5^d%D z@KIl>hKh-_;xq#pO&W6tO6OvxeRe61?FczY!h*&;tkF7dM~wRYnB7YmtF}m zEx}z|UN4_^A2m{P6!!kFx=LTGNWf}WT|M0sG2}m9^vr1c6>}8*NF@6LBh+6~_gV%n zvmj)|>rdivR0?JMK*fLU z$f5=-3Q|=S^awXCdwqy>vUNUt5fxXcN^ZICV0RxnG1lRmo0DD@R7;JzrvS(G$ELed zvrTq7occDRVefwNqXMotP>4jK6*a zS2ZJ}lUb%9l!uQfHwd-*k!OLmb=SMm5rzYjH~ks2W!h?*A%X0Iw2(JaNb8@l@V**6 z>+K~)ScyTV^H_6~o%$+KJ6c&|V)1b8h)WBgERkDx(I5Lk(s08 zv_k+_7%EA}dFg(|v4~iy`0}5;VHxedg^r4w`$FKz(qy=!D5hHCj(8^Y=kOkY-GNf^ zp3Z(COt7dF$@iBDU=xF1K-GD)W3F$g#M*FIQKt_^B|9KO%9L1%H{v})Gi(P8YB0~6;^fBt?EDqRio~afDAkgq`*p@{@*dQrR^3g-lj|gGgD0HC9caHKQ1JJh zS#=ii&zsSuD+~HUuXCrlXZ`+Kiw|^V(xL(vDfaH2W(z*yF!AJK8@rh$Gp-aJpKSj86QD4}fX%2#U! zuzn%+S?`3anmC9<83<*wA!wIDT&n&t{6d+pO#jp_JS7e2j!S*ir4A4-b-_zs_}kp@ba zzlEd^r3Cg@>&4^hDF!{bgWcF?i@}IFg>sW$0bL!PPV3Qr4cI*MQ>@8XZ)mGgSy(-b z%cu?+g}%PZN7Cv2{rT9Y6eA(g6nSUQ|}4Hn|tL2i6rgH>J$ z1Icf3%I0dI#qBI7#TRv{Noieeg3rVN?}e@anmsUr&Ai`TrCj z%Eg<%v&px2OCVZORhawRea4c+iuX#6XfGBPbvycz{2kz|69rs zu~rHow{Jvw*s~T|5yt>SV3T|}p-y@AomT4QWnYK#&YBtR1W5 zfG9S!M-}G9QYLX%%m4LWB_fT?=S42%?}>TlZszz|oD}O+@m3QavCZ|tgZD~K=t_4& z6o?o(nj&==Jyhvp#A7q;JUp7Iv_Jnf3vhSNL&neRYPesW0k0)LJnYKUhAP}c{(q9T zu-o;12R{DJEQ*N8op2YE`z;}n(1er!ol`{bUoZH7mH3Y(bJy1g4A+7eg_Q{X)tCLP z9P;5jbFzdiYD|;p(6f6CmvP&jHAuvp3+6FrQ7GU04kJ+==@-oBar6zGw$a&4P*^t|EG3rQ1i33ffnlOqwaf| z-`KA6!Yi3-Nj$=u?De6%$OHXs?x+`!GTgp!I|}o%$#UQHjuYe$t^~FhDRprZ)!Zam zA`fp{-lLcCDfS;TIMI3^eV5>R8kVTcN*|*I5}O^8#(LJ<7A4mThSmSzn+aYO+Td=##>X)~$w@9=&BySJ5^MsR!l+ zih0fpP*k!kOJJ9!YjQJGyHt=|*nsZc9Z^Z}M@)4fwv z^8O?2W@|%mJ^OV{^PZ8EDpINDhbx81x>3NX%j$7zpP19Lix3# zF<7gK7iurJ>`nfzg=Nhj2EGa_^`|$wo>MFo7SW~9X*A!V%9?A2R`>lGOF@NuEv`ZK z+cSG_7+Ok{uK@bYGpVlSxB9l6l){bo4H5csR1)E)1K297!3m>=LoB-_s5V94H#v+} zYhdx(`Ek}ZcwShVVdHO4EpqkMq|8Tm&$1ssV$py|JVlTUm__R8Y8=t!A(pc?3s#|! z@|xy}5bHZdNqO~>A=|ui-1lV29iYh~isAl@x4@ga*Yj{aAGr#!xaN&Xgy~})i?M~q z?Z_{sZY3pni-XDvc%#dBphsy`GwU3|0Vs8|0^fA0_ZUMN`=TSe7kbv%*$Z)qZUxx; zw$!{%77awd&pNm_@|<~-_}Pa1BE;rZ6JBNbNYg1>P5m7(tMve-%@^)Qzg6%s>?(R2 zwTudBu=^Yaf0S0ChqN&vXB>F3Q+#qxZ(r9$t+hR6%yX^fP#j?o-6GT}*R1|6n?L_{ z{}3>&t`La7?&+6%kAVr;da(C|%;hDQyX@ZA`!h!sOQoN=`iFWf zWnq7fv&T-uUB)r!82($P6-BPUlv6VIHI^Bpz0hv+NY{lHdHzvFIq1jMeceCRd)z<| zs>mnh_$@x&HQbRGCr|x$y4SR2$4{ObzwH$42GRFT@TeU{At$$sBI~fhkXL{@an4n} z;%Fx2;x~SuU__JWEar+}z1iiR7vdD0^ion)YmOJw5Jg@~<^@)}#9(9f6SL zy$y;^iZx@`K$*Ip3Bvx2!BCiE=5@gLPVIZ33e`X98?TxI@&u2?^+{^1g83}bYy!){j5KR%i?d>iiB26@#MImVuk zg3WUkf1!40+WTNvcG@_~_gj=?EY@4!JYSQlRI|B98D)T1|F-i3h_KI5>Fm<5f1+FB zTL-HX0XZ#iA9|_hc%8DGcANgXID~jUxO8PavTBEiYPeWegGI_xU1Uce{!EA@{I?i> zb~^k|lNVFt_Y;waEmylG|J&I0X+Hj6CDNsb|927jHv(AD-J^jgO2pr35$vwYcG078 zy8m=^b>Fl9H&{p|JXX>xP!Yjg7BJs;JY^2E9taviDPNQtjH9-l3ntIwknM}HraDA z@F(^1Hn_%iuFntniyX(;qXwBK<_eI(NIGweb(ZBWvdRfymx&p&9Ldo^t8`lX3 z&QD}4-U;_#?a%zPyRK`{?c4ZI!`Rg*Y%LUs&!U1of$s@pQ}Px8GZqpstg~VAuM@w0 zsYobv`M^i_qI7Hquv+%2w8Doh^xD{Lg%xe>ArPgisf|qsM1}i9y2(y>H@-yn3t2=o z!5N$NtKFXXEF!^se|qk_MJpEz7NrTJtl5*}^u8N7XN7-}Jb(OD7%*Y2 zg=3uNUwZ1|mDq=}jhVB=Z@3HNACpbO|HV?%gJY-EjC2Q;{=A02Wi%FJ#@C9)FqZ3f z?@xJ<1Z|xKMpu0bVo?_ZP1>mX4i8XPrcOC>+ay6hJS)8*`#DhP=r6c z)Y=IM9`8-^%W)H|j#xN5jd`6alPCU*vx;vv%p#pn+jq8eA8-ok9zws@F2 zt?m}3isoiJex<}(p}&kith_n8i<0I$u`K%G6avf@Myv-Iabc${=3Ao zJkj0ab7gt4{peA`=uu+W?jQxXeS5?lVz;c7E{x3nw}(@tEbsN}_PzU%=r4~S8{NQ# zNgNDRBL6}DXRc6%OPTM#w_4nCbZZd3qJH7bf7^~kx{oLvSDx<+oEHCAkI}!w#N2-q za{oUd?Eetv3G;Q`OA{_%ZttZ0>Xt3wG6s1#VYf?5j%ue}>x-RPtZ7@{g-B|0%@UG1 zgiKK=pPxx#&G`t*rclhsVOO)j+eEHT4jFjXjgTCqZYAKwKJUG9p_e$GiQEqn#?(Kx zoHk+m^Z3yK-q6h?!D3Y1#62mbt4GW&QPs4g$NMox+lcRr#XYsHLHi9J!k8q_@C{^BQ1552k{9PhH zH6UtJa&1W&yp#bqVM-%vag5Qe9h-gf)T-nB0Ay_N$Fh1_qk(5Z5+PuzC~iO{X>_{H zrgf?<(xp>d2RV8dUOxuDV4Sw}#}G=sIM=#YYV?h%BrKZS~%xp?GuI4efNf^p8%Kl@i6saO~jFrpWI_^JWW6b^Z)qfjCuWb z_l`df6v`YV;rnb5u0vU)1bfpuoDEh7Jh)ntdYBp_BHSEAFXsJ`2YA8N)y*s0T)mQQ z&ovhB7I+%+=W!=xi1<4NUDWvm5J0ik7}BKXi@OpuR;*9B64*u==Kk!v_`>Er<(xv` zb^JiHKTijITe_&gy|9?VNWBV0^sAAEJ8+d*s2)Ld83jixbTY`nh;{gbK9g(G{P?=y zHAB{X;RZm>_ZgJGanjPG_6I=d>~zNv^U&ExY?|7iri+H~Cs_ck!ikJEl5Tk0{I@tg zFVtcXRU7c4fqfFb#PS9Y&#d`(yxjwxRwZd`gryMLDRtB`S!5|K=WEnnh^p`~_5YBA zT=VMhfUZ?}$!s{_S30$HVJO&RPD0>9{{bvfAZ?kuq=m(VIEvd)zg`C1bFqxOH_5-e7&!kahq0xK^!QF;;gK{$&ay1!{}p@SYkUUUS1Z^X^!}#QUa>K!$N? zX4&eudJNc46^ML@yF6I7ELK;4IX9B{Zr#Lv08(#Im+V8rE~boevvt~B`46;AMKR?* zqqfHL+%koL&vVzIoiQQaEJjW<>Ii_4#@!0P@u_LZTjc@gB#)5%mmz*UtrAeFQo1<9 z%fPe+%wcDEQZ=LY;7j9AoT-fA#{RA3sno4s2ZW53RE`uyL-aW|OAx7dd9>hJiIVB# zqam_|JsF+kL#ytlV8zWBFxF@CDhih3A7KvjWP5e_?^syHp6T+a?r+xmQ5}Q07c$)Md3LVZMuzxJkm2)I7rQXg7BA^y<0?5W z@1IC#>HB6K4c7m2TCR6E!=s3O{~(1J`4R}3E92p>*vDHcX0aGi4oUi+VAbGa1h=VM zu$n`2^UpZiy=i6+NmRs{)+&KrQF*ST$bz_roBo1D6BW-U_X08R$Sq?Pdq`Za61LGo zs_kZZ@I42I^PNuJq$VBu7e`>kpYHpJnBpihZlEFZ1{Tr+0RONlr}b3<;jzWBlv)SD zzL&k)tQH4FEpueEH5svB286SGb;y(`HYBb$Pabx&sWN-6G0Bh0NA#Vy%D}#||6D4o zL$H&=CW#L``mi6|jx5Iex6O@&BNSot836C@<022$ov{i|2&Xy{!u35`wG#GtXS5A> zlI0%h@{U4j2uk-`d^IpCA%3T4RViSo(U&q#+v|S9-Mm1T1pF?sfv_zr$if9xX2Dh? z9XZ#zac4($@2L*1rM;TnFCvoc*2g)P7DpO;(FYveGINJxSuav-*3P&{CtkEj05%{+)^e5_2$lr(@2Ggs0*28@~Sk96q8`%?zFhSJm5J>9a#UuC42ooqIdHva zY{3;LN>-1@183Whz^k}NMKFZa|;l~>^R=R-;XEyCmR-mmY zvk_{@-yq%8*AGnFi)f|wukSnJs(F+0t|b1QM}J-j-a%`O;u@GyZOsOs93uQw`=+(WW~|y&CiKZLF3;mb=2_!fN1mgY zeP3m2o!O+k`5n4kFaXTITdSw_WlRVX)+I001b=Prvc3MGlHxgJWvR+6XG=XbbU#ES{EtJ3FrX)w2&^$!HRu*e6PsRwMbIOov}0 zoFT323=oFAG~u&0FHuTcSd^jAW8&|1550GKx8}*&ICB<09_o-G#1N-vc~7rHIDL7G zP&c2Wv&tHHEShKM?|w+O@NpU`s?L=fNkf^u+d@@^yy_npXd8i6Dsz|?1MBCw^AldD zS+u2$wc1FDwK5QNj#+%fcTvL5f-lOY<@vCT{hIk1YcI#-Dv6D+5ru}jT%*J8UZdwS z7i|n=$E;D9h0;9F-1Daq67C?%0TxIcT#O8{4(*4stNp>&i{)kTibW{&$1U`)% z$v!lwe$pnzsypn8u-=dUIWpPrXtQ@Tv+zwEqoAX5yeUpPyRh+v4StHo#7|ehT}=uE zMa}0oC93_9z8T^k1$pb|3s{9Y1-^~U3w2q{(4Y%zqom~i2C!~LxMG8O48afK!>%#( z{J!YiMr_4%)_-uDJTz}4A&ckZi+}P`w9=jIeVIF7eAuzg_1TRZMhg}C#I5UC3)6cy zb;WY3ZDCPeWZgJz&jOOpgrr*P<~Q5vq2Q9QkXcaAj1U7<#L|XXZpI`m&hT{^*tKTi z{#SDBW*l^BLNJhsjIH7z`SD60+X|H8qpL9+Gr=LvD^W8Q`L@q!Byl@Un3t&%;?~Vn znq#fOZ9;f0HRe+#xNh2|?K1V2eO=zLU+l95xRf(*6cqdZhW$5yuqX3{xzozXSxT+e zO-t1#i&0EqncqZwyEFcpXXOh2(Mul8VS@tZuc&-11(7OH&up2pKxbkH=)JEnS};Mb ztN&=VvR~m)9bR)wJx=)KsvP$ojSF&Gp_-ay9bY0-g%)(c#&rhtYUw3&aB4cc_8k22 zuC_!|W;H+()x!9zzcdI$$T8PsKW}5r{b-=rZ-SC2_kplLEmmw4;>seRY}nepR5Tyej#i^SRP_C%nB^@0?0ztHHF&c)7&Bka{ZcU@!ms;E6lxvMu zo8Eb|;PW?|)IMfVw5scbYc_ryo&xpzaEl&$mm|JPsO#N=WN13n#ERy)W2Rz!pb5mE zWf9H$3wyb7{`k8@tP~yFG4jNjNNhPx)9JaVGEaC1aB%pxH538{iTiT{!o)!?CBA+UU+JQw$sK;%iY|*UxfRzypW{2(zZ>1+%5h0<%SYa z7t=|9;Dki{i^g)ouCa&$;DWmD-ajz3JPh0Et6bk|_l+ALBrG4X9@Roz3q>h)Ju!b( zX7?z~Jn^G!wyFN$7|yB+JO8gW_{ON4e5bESQp$^bqrswf3!mknnyz3JA)D+gfzwHVtt~9d*iV z)8C%syZRVx90q0oMcxMKPhk_ydiTmH+&e7+I>><82v0_=?l@kd2 zGPp(=Giz)bJ?Z&rn@H#_Wkt><;y7x&Az=>&@&37hU+DRQ@4=ovKGbz3{lIEm+K2hm zRf4#9c9Y5T@tl~(TiPC9UZKJpr2bf)H;hYokst9eV%5yD)~085aqblTwys-8wB2E>Jaa{aj%C75NteMsI17Hp!r9 zaEsk+)`-eTNWR@am7)M_=XbTUN)v8rkm9AV{j4}^`$gr#h2yi>Axk#YQEwf_N7I;bNQkxDfa5&NSCp%#N6jAG8_Z zlA1nCm}{t?9d!?=kSR$={Tgg0j}Kx@K*o+rgRP5Bfg9;>7iBM2f(3j@5s^=Q%3L|0 zXRAMIZ04#SexIE6tDOp02&ibUuqy>XpK5=C#I6?%(aZwSBAi4o0y2p1rtIvt!F3}sZ zH14BGM-wW*n8da2)XOrPZRaI}-4XNQv-7;J=)J^pLM|@=r(oD?^+tFa%)GMJ+~TLC zH9EYg4ZfEL1K00@Ja?G0qAO^kK3va`j#@!g2m?4KTg;bToylECMi9=ZQ%BaWFbkXc zhX!$Di=$%2c^UA^IBVCEMnn}&@9r~?DjfK@7ynu({|EPui{SyGQi~X7xrA$=sI2)L zDEHcHFGx;{PDK=)xNj^R#!`L=MlKtvRIQtds9oJF>?Kh@a|Y>(2=-ZuHK%b z>Pv#apO&-AdgqLNZf)jy$Y`4Gg8(>Z^m!GF)6DleXJf{f`g9lP#?_q^RrMUnhL_yl zjl=)K*X`-UEoKC;Q%$op)JJ14GFZ=h=5orQ72v0}f%D!f>rq8&)vJu=k$%n<_sWP8 zzoSZxT{+yleL+p(uBrFFG#qswM6%>ln-ooUlK6I1D${-(BvawnSLg4lK{u3F9;RHW zwuFeuUcLzz97FatI&dHKw*jVjph=?zCo4z%mFY~Py&&6Q9r`$zaK&t=p)==Rct$D) zDlYPHz{RDZEzS?f7`udRoCtwVeHO(47;EQl6N?2Km z3!6=TCGGcmTEE$o;bhR4&=gN;j4AbiZ$&rdHa4xn62&%~h2?uWxwLa;Ic0rcoHVuJyl@S)yf7QgaHX_xa7SoD4}{zzvj!;D)zEE7IdNSqk2( z!FDDNg_-Rdl6t8gneScBp5>QYcFZWv50|ZVo|C>lp55v38oiLmp>uXpvB3H5@Qu$8 z&hq^q;ieb^kD3gD8y}uSxf4=rpI7p7_U#h+BwZfU(01ai;7<9S)luW9bjQx@V*f;E zqLI@PAS7_3bwSc>3s{9aQJycVtEJ3Zea;Qt0;p_6J$n0&96%j=xZm5gKpemkKi=$G zzSA?VNQ^38{x;LI;m-FOqRmRB^w~IwcQd4lQauWLdN#9xf_Xt9M5Z0>%td0PRCT7d zCg-(gKfK{=7hbfaG{Ne0XMb0GEW~`gQ!}yOa&+~-jx4>*(yHz*nQBu4GXU%moy8mviI;Yqy z%xQ^SZMtcq+1vVRKcst^y8mGG+jU>-T>br1rQnTrW%9KmVHWVg9+YH3I4zMf`OX>| zg3#A{jJjk^sGBa=jrmhA}bU@7v z;m33IH)I)_+eCiu_ug`zInQ)DWawUT7So{qw-&&Ei{s(pzwE78Z^sNxhJZSlWm@F+ z8~-Uq{QU7h{aELmn{n_(D*%%?b;5yg@1wep1a=M?yei>(71*bsvJvqZSKqNc5u_0( z$)x(3O4U^zgTZ*JZ8;MM3{@$9B?j_$G2Y5x&t?W=`np%XZliaV*PrH8>t*6y4yPlN z4X&B}Xk?ZiA=mver8{N`s~kvt)Fyu92d9N2OrQ>YXwZtr<$O8L*}Kk{aZB=C@VqcAyNdeXyv$kh0|ChtLwfASk#*yDdn(XfeMP~(uGqG)2%~GC z2G+LE8^earfC;Di_OyCrqh>GOR;DOmgLUI|kr^i)rIfyFxAGi4cM;mow>7^-Tib@+ zq!%tJEf1g(yz%Fsjf~_>^D4trT&5~RJSM{_6_7m>PL~AHdR$Kz@}SPk2_~EF6ZvG% zN&Q7gJ=F6}(K3^pf_|oKBD~jsH7V08f808QWL+Jrl{JyyC0`pcglmf-dL{-^vBGq? z+wp>Xo;+T4oK&{q85yDn0EFPc=FO5T~LjmB4!CKy-b@I?c1GUExf|r z412tK>WJK!RZjzF58Lx)qDgs0O&ZCH;9$xggn~P2&ZQocEohVsABmdZx~~`}m3Goy zo|mi7hFkSW#@uD9{i!yYai%^cO&&DqkMCu&a92I%3%AU@}I({TdBcO}oHzf)s+ zx@7((nc;#OO<%NlFotQsRnfpCPYpLya@`#|5&u%S%91KtLgI$NIe>fsTQ@_`<&>(0 zjYO^PzCq%P_vq{t`Dt;TdB0TW^S12OYw+<5V2qcj$fwLMIk^>ngl5yddRYtYI9Vpq zDRj%WF~X9b&|qhRY2>MSrC*#Y|GG^!vS70yz2_in9=ikEvz$lRFz5JuS&ij$fY&F^ z3Ejc|XSVJoQVuYl#|%%5*W8+QMe^s2M8fvO+P_7n9+sjmX>@bD(BRwli@IE>m5wy6 zT*09rh>tS7M9*5Xey92;re`WT^l((eYLw&$-Fb%w4vTvNUUrqmJX{7gc8H8kq^9gS zEXz?+_>x)O^6k_XyJ#9tY{7nQnwc^GVj{@K;QL~<{}8!$FkJq%6mq=~CcP>}Z}u2X*8doj@t#I^BNx<~_ysCRKHd;=$Vc$+qTPWUU%|Qm>_}Vn4M;*+we8 zA1yf#gl2EN?Ut=xzI5Fu&}=*;|Dn(R|Ha;W$2GNWZKHO#1yQL|x3WR$BE72!D7}Rq zdhZZAgdz&kMF_n}hXe=#lF&gBkluRi&D4d|e0ERo--nFxpM5mvCN@oqI3goR)Ruj4 z_)N2sy1LVu|G^)VxGlr*^Y5oZr%nC7JVmiSn3`IB5Xl%mnfP-|Y#K5R$dsZicWlu0 z9m>BODx6E4Zx(*>*V%FZm}n>ZHznFH{+q7zE1|zwE~x|PkXR0(XWt^qw;2bvsnrzt z+QQKzOHN!sut)(cf)J%tI%Z*Hwq8ZI757uwW7Be~>{)17IC0>$cKgcW5_?plEdpGa z)EZz1TRc4=>_;S@C|P(()~sIVm*Y$y?((f-{i zC6OoW)9r{wZg;tYDce%9BSEQ1KWJ@Gg#@c5d*8P-C>zm7S+)Hxe}%Dj<)q&E;~*}} znn-2K+)T=M=2%Z~W{dC}VEq9jczaE$&)odEfa%a&ng!3|A?>;vw0?MzJZmgJ?U!mOLvY|SNXI~wOCui0D#&h0^^=9(tI20 zR;9VDaw-5~_)}VKqat6Vbi7Mly|TbplR8#Cso2%<>@uV%aFcl6$L86V!nJsbtyA{QX~wYsuH4IjVw#!b;( zcavbRK%xd*%7nOyQ-JxrZyDZ}-AF9j8ZP3LX&c#NsxDA$ktiEh8gE9;V=O&9^PMQ@nBz1I=sk5LW6@p^tt<#Mz%rg$zSfM))0P_%He_h%~ z`T0+cO@Q%*jO5VKd(t`!&#l94nPs=siiZ}>%J)6B)#zxgGVQX5KBPA7g!P&_=k&`W zoD*{2Z3t(x6pk$&I1#Y8x5o{wC|j)BUt5f4;@=oW&$?WqV%Mw5I`X%snDgM#M*C8j zUU*i)UhvTx+!(!IBlL95#?a2Ywe$V4@qDgy{z;aFI>Ng9V!@4HbCV-X{+k7uka4;B zca>s0)jza)`FH*B)05Mx;)Nb6RqjrJJoPTTsN`(OiC(=$)hRD}lmV=8sbKZOt8-*Z zN$*lX4-ZpR@Ii#*+sl^&-dN4hJm^*_xKr@!ToW>SPdFk&<3jRE z@e(2v^_QRV(c90F$SA|3+MV8mcMiXfKlcv;$p6n3g{U)T>_;v;##!{|q*flLjFzP< za7!hv%;i_u&SkXV6&ps7s^P>4*mD<-v!`^2BI=#hSDhVq;E|wM`h(^bs70} zPM_(eH&?7!;j*2qxP_Pe(p!_T@WrkHeEy*Sxwwua#HKVW6FTrtVQgO!>Y*B2A%5?9 zUA_|?v0>Ho=VL!(MEuDn_ym3Ni7AUjlB{@=%q0Mb%cQpkvZ;<2sFYvYs&vbl<#Jb` zTd~PpmAY>+WEo2u3q^$ixi-h(cDqXHXj?ZhaW8JzUM={@m@{@A`^y zEAV4{2JvXdGqdfL5{4)1h>76H4Aq@y?eA=!u^sqI^L_Oz4`&VbVt5pXsz=la@2`9N z=qaaHtC}OrtZLq-Gjx6^>Ynn}r{EnZxE`=SRkH{|(o5eP+S`tIwB! zi&t^55>IgTXG+~n!K)9U*rAFNbLHrwHouYU8xX{O;5`rTY>KUPVj`dU3%TIa@*7MzFD!lN9)sj%CY6R!j(zD9vd!MFF`K=hI!Ev4guv*>FHUqc zayo|*0w-7_;drjUCq%pAL>JVsj{|bZHMN{z{x3a>O6Dy`(i(13Ha^FvGglqz$uQQ3yC4wv#370KU`)au^CprtG541<3+k1Ci7#R6` zLaw>FrUqQH6J4kaAlkw{V`nx$lwmzgRfr&S8mO)2&9Mf!;4>CK$44qT?ON3>&n;>J z?G9mq7jOpQ^lCL^H!D7sg0JT#E*I6Ua9Qf=ScXo93R+A6*90mg-l@c9BRL!AGR-xZ z-gE16XmgO2C3JIMyhrc&a|T1*Yjk;W~`uGG0NGy5_z4*`88c5GbQ6;Cm?V;n`pmq(nI z!GbQt7Af#W4`%?Dd5TyWsbE<{0VmUyS434kej!`2sRWl!&t$!^xw6yaCn?+)y>Ol8jns!;ZtNhN0j^^pbNS)}(9 z_$tyH1Go7bG>H0rV`i5Vt_^sRtqXqUCTvAM8EDlO{Ph41x8=+%@G*{^QK|EV zqAXM_bN=%8-(78>{%v#qv5N9P^SVzUFg1tlu%ux^?VNs&cE|ClKFwX5)V}@~fNZ$( ztY&sqGqtRvFV9emW82VzBTl3Jbqdd7jhOQsnM)G$@Zl%(j+X;@YCA7wJCsJwn=+4@ zBbPcq_$DAZbH=Qd-=zg`s}(Qcb3NJMY;IkFp2p_tlR6tgVY2LYw8d_wB7NEwi zmvp|d7MFRiD(MkWdhl330f{R|B8khalPIBaPVEunTRW5Le?t^}i0_}w-u(x4394!& zF78-ZKrTf^mj7omTbI`y(=BcB+(+I}w^yt)^n#P|Yb_OvB?b|K%4x+aSPB;h+$~nB zBC*T;MvmIt*|Kk&sT{28{)T3#-;@4>r^k7 z{#0CzIt~@9Zi<=ZUSa_t>WcgJ%c@3riUQLT1X4%6U3%Fy(Kzb+?c2W}Qoc$avC`2i zmvR|y%U%VYV|o0?l}qkGwO&cPj?|y!IY1tCZ#c?rS?}{dkmA0MHg6C(=nW%VA4uxfh{);CrJ_pdqeZt5Wj@hFeU~|B<^o zh#R(C!b}G&))||YNl?HI7bnjD_-GSN;c*JMAf9D~i0Z9`E@I=?YgKW_$g1m=7f!RW4e$ezn6=WqZ~-GyDyco_9BL)OFchw48~Vzf7Z=ySg+M) z2DP;!e|ef(Tln|#sTrw?GjsjxU(Y4})N_AdSE+w52g?onr&IgitTybwb~-;R&E}tQ zhXg8`^poPfa_>LY&i{M?yZPcjvQ!h77QbA!A{)yk#Amby23)YgOzbOOD+JD7{JB-F8$ZDQr)&Lz9#=-%0sD{VjfM9IABP??0o^XEj*L@f zR`a%6c)Ze8k?uTbA!EiZ&TAH#Rd-i=0y+q&3p&VH`@?VvC3J?>CN*2UPGQc@10~qo zvU2v(xFM91IjF&GjsS7px(f)GiOVNQ$lnI`J6oDA`bkzilF+wEiOsk?FL#iPTP(R> zKb$2URV?;vZr{PyWi1~I*#Z@~O+Enq7^o`~mqpJHAQ{Wup@A7MNV3XjewnfHrfXmo0 zB9+NXsw>YH4YSDW^RlM{^sP7@r>v-81u9DHX4N#y1!WMjX#n$)yKQpqojU06`NY%V z(_yRiNmXu0w<-^ofa=`CEq8u2)$Q&f-04Xvm`|;UREnw+mEn-3SZr=#@1gIy&!oPG zped_LU|a0f3THUdvh{|*<~GuZ<0I1|`klS2xfSK*H8WpB5#?OR7wT0BBDRgpCo^I; zu?aSPq3G>?-Q;AL)y{9|Q9GHaeSXAiK1SG$>G6yaa=LfB+h*ZtNyT~`DOa3QE)@aE z=nR6W2&RQus79?j8<|JGYIJ7n8+=GJz?>_}cu3gq`5z>G*A-pg-lX?NsJJ1u7}v)3 zhKt=$BCgOBcOamV>fYI%pL-M&S@60o+qh$V!9$rjNtsc)>AP~07Os?Bkylu#Fnh-) z74n>z!b0;oF%d@2UjG14h>7R!@bJLO(pTA3H5_YA=g)JT#N{gzGAwlX>8N(^#%b<~ zr9NO^DDVZ_DvUr)e%GGYP9|lXMSS;_^k?se(sJnJRy*SI{GqyxTK7CMS8tRDTU6340|n991EY(G{IuIwQZtQge8b*gp|V>1)%QeizoAj;C(;jI&m1KZ}&2g-Pn? zkCq70WL1F^l~EY|b9QZ5r4jQA(Gf{Fc(lALc!u@44?(m1$~`XQ8TS zx&@UR%vNdBRZ5+5vpSNpS9r0EhiS|1%jrY$hff8?mw}maoJu95H(y;lyXv_pv3jZd zeJPIFEh@zl1T!-y-`c5@st%Z;-N`u3W88%{ISts7?sdSVOLwxhWr^LV0V$m-prE&U zhJ54z?BnMZ2%1qmQpa8CqRx?0LJ?<)=ck)h$J;man_wR?mhdOh9er0%sIoq>%MI}6 z>JHb5szU#oF=p$_+tC^5^gdKhVFP9l_2e0AZCjkMi!y_n)F?I%ZwqsB*9q;PHMhkl z6<_?SY5CbXnN7JamfYCH+Wv3USdZ>6_w{i8cEqoHtZfSXKhhoiXKVfy0HsLn+>e>t z;Z6gjKBq_j4iEX4H$3-!F?j727Id_9iB+(*46*?_;~{ICSX>l8 z2s#=44k^l*1|<%qyOJaa;ei@*e@wR00!y9q;yyBM1Xpm4CZP$+rN!FY`X8fDx(tg* z23FwluIUwru}?m|TNw`NEF_4ac(P}*0GY>(o1}7w(#$k8Muuc^dS6Lt=*;m%eJ*df#?2XAu=WMmCAA5lA15#PgGivP zr4_dMu^^OToHU;bgSC{&dLXbj-XRy?!>(jry(nl2AKv0@A!Sa@_CE3?61hy%cuCEq zLZknQhv<0<)yU|Bc8uHJXXHmqV1vkOxc=%E61@SY8MEZ?5^gV?0YD~3yb;FjrX_=A zW$YUpF*W*hze_FY`HcPFaY3X({+PTH_AC5i!tsT*@$HVf$F&VA(^0)NwPXD(oaX~< z=f2h&##&zth;n?+oeh53Qbn)Ui)-GvdRJLQN!wKSvX)&+(6;41$DWBSSDngm%jo+r zw=~m8Nc%oxRQ(Zt%8;~|P9=4f6NY>KHC$K|=%Rt(-bkWe1G?aZ4}tUqxcUx10=w&( zaZ3jmkG`_hXar?O%~uCO>!n^c0jxlv#3B@@%%Jgwd~frx5vBOaHcLj~dR;|sSNAMO z8?lv7Q=tST*)p=5fcF|JeVcij7KS3syzxPBpXRzdT2ae#(d_~O&VVF~!cZG!{yn(U z&;hxp{90|H0{^l*m<}dDgbJ0qzH1dG+qNCxL;z!Cu?#)|2^yz&Z>s+rSgUrliZxtPHRIjLKb>{|-kr8zg11`s>UT$+TLqGgD zWfNXr29Yxvn-lZDqMe6$RtI!eN_eFERayE@eE`{LspKAaUH%aSnRE>_mA}J`q!Ken zDLTr!bel>gJ3s*-|F>L|5fo-}*L)}MFFE;TVo8}Ebi2!Es~WP8Mhl&J; z1NE0e>oL5GA1?h`4$i`BecR|;O6!k@w6UQv1US_oRFXKfhlv8NenA= zOSj&%xM0zM_c6VwOPWbgrkSHD{d5<7?j7RGpPz|oxhrzLv4A>i zG4{osm!XdbTF>8T$@0wj3k38W*h0O8*~6a%kBcoHA=rjqBv+it(4NN0<@&UB@Fpg+ zcdiQ;L*Gb2&pCh9{|p~FBzZAo;O~)`nWpzyWjBia`rcrj7(+!JPrS%wQO>r?Fx;w# zT%j5C^ZqT{w0CJ(um*Vb?VI{Re1$-=hH8NYzu>OL{kH2u0X~nr8!x%~ikUJ}5;QD$sGLYn|xRh%m;67vL-ES*3!dz*{TpXq|Qj5L(M%7OZ%ao_eiuVL8{fPuN^+3j@`_FKu7p~M~%OMj$ ztp3)86wz?Un1odEgh$yStG`evpInzuzWRGru5T%B)oSmirof;4t`Qv8anITg<{+|y zOvN%9ucyhy6Y(V)Tq6;2hN#qbdbh87WC`TBrX)HMs)4_~#cyzwRK#s6HNjaG(tS}< z(C0b@+p5Wdn_bq4b1AVao5*(Yq!fit&m|G13LCllSR$W(rF{#u12hVEp^ipyRYNDo zljv6T6QR^=Sq5XNPeUii(&+IWkIg|x;Ew3xO9Y|niEi7mX^;sI!aUFlDFjw;gIThJ z_6xw|8y{FbN%=I<%)h}>b~vi-QQm7w{YB;YvX@CK=gNf(&phT{>OxXLl{RJlPAssy zZPeGh$%qB(Vrjs!XO;f7asL<4q__O9t|S2=B8L(U9HCKAhhW`K8Q`f#oK)^TYf%qY zn?f%8B5$)78?7A0q1T?=g)FGb$KC#{X*wW9&|@%=3s7VmV9hJMegdZ&u*1UKTGeda8j{T#JD%nX&wp5?U|8l!=`jqh|x9 zgC4gX5ATkr==lybo$#;e?&yiPgifs_(C=35tO0ur20rd`gWyhG2Si`c;SuRY{H@pH$|t3*@{X9t~| zFme>SfKqmR_m!ySX7-~EtH(PU`m>OakT;gUz?SKsf0G&64X3^S4U2a}|6Q`rM2_=X zm`QKI@G8%8A|4@JVcf`J6jh(uk^)~;gV$+o>>Zh{zU-$7%qRi{x>wEw9jHHP`**a zH3*zB(t}P)-8kBBkd)FW>nciU4j<2|QUPHyNpA;(Dk88V)EKg$2_4ds+9cjaJ2b zbx370DpBKiI18;^sJzSEGU^pW$46;}6BUN~60JfUsh3csLHVTl_jL~eL^!WYx-n^> z3J&c%?PvQzoIBS%8RdROYpG0033~^RG}Y^-lguli-=WYje`?=Pn5Bh7DlL4w5v$GM zxu7Q7lRrZ(S!#XWv+?oBY)Oa<8kccNPz4mmYvl%TVmANdDXGuzd_s3pUA~o zf8*KMext5!$_LzkJ$lJGspcV`q2AKMt!-T3fOqmGedxRJx~OnsQ(5dvQ*U8AoKZgr z1YA0*Sd@eJjbEE?E${byHE`y*&YcSo$h?5sj0)%KPohZ#%8GeHw2sn9Oz_qEj&08~ zGucqs42^}kD>5ie)~J3wk~5T|b?ElKNn|iYG*hrnG0v*V4@>f~va&#}<7E}!AxFz4 z+c1Qm?u|dXp^W-PMAvCveFdyLJ!;n`V?;$(ByUN*`|#j_^dHxLtqFxJWhT81%k)4T zl*u@x#(^1Q1J8VCvHc?Ov&FJvcdS+Ym}>X!P~*n{o#Kp3yonSJHmDC*4xS68$XO7P z+%_1}S7SwT)G0`)It?&BLqeO~L^aH@`_P%@xeAh8?0|GADj=J7SNL$6_feJgVfrQXoBk%PS}z#@dAY?|sfq zK9(wffCmx%G#|QX^$4_dat3FUUc-iNZV2&UZbx|FjeN5KeWmX4gzc^tE3u{87l<=; z5VIGsRm8I+ySN<}tdtD+MQHknC8nJpVR1@Cs^Rv_`V8839*K83oAK<@C=>LLQ(x~A za$(VX_i|wHQ*OJ!vyNxX(ghBAM`Q%`W;&4<>mDn=Qe`&#L)vg@!bvLJB9))Ok9p#W zth(BvhNaCa@3-KJ!)MwNn#b1pYOhtx#blzrsJZCn`TJy2l6*LJ%Wo>7wOw8|JKXaA z%??QZ=X6i5)2lQ=CyRN(L%5WRMd$mVtP6Q<3wIcE7CHMC;!>#K>v=y%|;w$KM1cwf_(5%ltSQ^cKJ0 z66JV9(gx*m|DVRyeN9OR`A*%5?91JDF26|Za}QH~_LFJpeas*cr=c}kMyI^^;e`v7 z*l$_MBwKS?=A*Xk(jhy6GdAqawZXd(Xz8cmv1r4#H-@ali|zcC+apWqzNBO$4V(Cw zd znQ4UcVwAFpqdGV!^(;jkXpSuZu?r8l{|_gsNtvtEb&vW3^s1-Jil2e6>qOTG4ecdT zZEwttEO+kINn<=0uOuhjIjoMcPkLRTh^QtO3`hep7nCe&=Z$5Xxpf`~>jreg<<~k& zPDTlj_#O81CU!cqTX(3=mI~v)j6d6BmfJn=oo}_ReRDC6UNt`M_Ll*y;fO8K6Jnf; z3~Fls2tZ`(NJhg-^dZVogh6{gBMn4>s)XKUz~oh%#35y$x5*HIVq`~2@?W5zcWS3x z%6B|S$cu_+y_HKtb*$=9Z~axJTu`@&C*D=7#KAMgk0UNt7XXN zx9eD>)lwaJG;#GJwA%<?l*5A@scTRO~pIb(m#9j0AoRpv7 zXhr#^z9)k6+t_3_22ok`Adc5=)lynG$jkLu6jQ6~+ourMroIBGLFIyY1xnHj%R&<^8$dNo8_ z+d-$qd=L137>9IlZ~%~gPOviY!BR6+8=dL-x?t-gsob2J(%aN)J3*KI_sW(LGJnj- z;KdnVZ{*yfM9}|P(h6w5KdF1I^?2LJQcm%0T-gO3$CxhvqUYsOCLrQIx)R{=BNtr=^igT*VG!3v@)UVg5IhFu+jWmlFn_*Ewq;&IR`mmm^PKaP1yckM-i!6vzeSXPVaWUX22{tj*V z#rRmSp%phjpFao5Ze3jk>_D)bX9@UPdpoJiR?kS3hx)j_?9h95ai+pRU4?AkY}Odfw^di?mCkPwj>QsK*bub9}Q4ypNshqD`tOLVW+K0(6i zIk49LZ#*$OWt>~tFUfbGOH@p?=j$-vee5{BaAl@q z-1&0uwS!UIc+B04eq4*3OIoBtTv?M>N`zd_9NH=+9z*enqCYgKg>p0WP?s0Jk;*)W z540aO3DxAy@hi?4L0wI9a|GH{I{u>eOP!aZjbB@BMQy+Lt=7LX_H^pKsoUP*ef>4l zFA(i|wZwa`yWMDF*~xGGaSgnre+3Lt_P^#bYVkQup*=Sw2>0!VgXW`t_l~#ol6L=Mr9Rno5Uj!oXQcAhi*TvI#w zAYA1hSP)M`Bs$jvo0jg&;4HrSJRK@9xk0mUZ&2Hr_Ur*wmqZ#CSXo_WjKK)awTR`st-(o!!anM&?m zytMJQvc}+{cb!CN(t5-Po)=7rFZXGrdtQNtab1NUJ7?#HCZDNX^q!G(W1g|8)CgoX zR$I6n;7EUSY|b!1$hU+2Mk$YTz1k}hRgT-szXtO45T~5OQ zK)YSkCw)lGgBG`Zm2&ER$YZNi{e2dfuhMnHw&)yfR-R9QHIW1?5-n#e=Cjdi9!}t5KPpbqP$XAls{Oxq594{CDOZ`jT;`_zY;* zUQ_u`A|xXV;Dg2t&sx}Mn2}RHGTTB9d4q3%dAWEFW1<^s2EJJm7%g<}$Ln2C| zE4wL%#;@s2=RWI~$p#Jkh3ofo)GfxbZ;owU6sy7$)uhA%akZaSj4tn=;KuB&Vs?@q z?uK9d^v&+0tAL4ed(GRoM)iFx>4Cg{qvH#fjM5Ui4ZYgyU&_TZK~JG_5Swq z-f=P(i|Gin-{rqQxauC7d|ZuL**Ns-*m1KvXsq1Y^HO$o41&0Mv+UL)^ zR|>E`YKk$nVsUQ@*Ub>@RK42%jk#oEqg?S{ZJR{t? zNweXWwNTxJWtTY`$vaFk7WsB0bCOVSkX6mJ;ynG6nImx}J^}6B{lol7rs~vOa zW@fExc~UYSf8_a7TI6==sk?u?G8*h-?aOv&uSrUpzafh?VudoA7HBW`GbyurTj^(! zXYEDlv(Aa5re`oX$L}nY^{X?zkHA@_&c|E-vxn7*5f$Q=$0)_BaN=<2&P$gNs(BXo z4dwXhrsXtFcBJG9^B89}Cfw*Cj9dW0yN@P2ZOZH8_ECR+T7HymxLC8oL^dQuhs_<- zbJ$v)=5%#T&@iL8Y_69g{McGDJ$tTA{QBT_eVp0iJr)TOIYzzVyVSDc=munQ_OfdS zS9Sq2dt-mK!Ne`4+J3KU+hHfpu?>ktkxd6jYWDJ-&aw6*vCP}n@{G}BV^I0!)2+yT zt`6){UJdRajnY(WT+NggXXmY98r%<)FxS%Eo1+aaef%CRP0OKuP?~9H{_RWq9P9oa zzpgC)C`_t)Ay@X^#)NWgX|9z!ehtjc&hq2@m z+y3c010nRH-?6Yq4kkq3WQl&j!cIF#O;@i7e9oa;u9kh}KVsy-9u~zp8-y9pJ zC)`kArNz|DyHk@mDPxsA;717*hG0`39Tvs72Bv{F;Xjy`dCQiJt-WW<{z7)B?b%Sk zz}_=Eky|TVJ583#^ae9%i`QQdfh+GK@w*6{CJiC$cY10xw&nI8ViYOlvB6%rgYvqg z0bX9xe8Hxb0nt6S?)50-O5VDbi&yxMN!R+>KEr)Nc>%wCvUUTgugq2g3!DYG?y^$5 z)pmOrNtXcgRGuXT&n2P))ZAWu&T{1z6zy5}hj?VHgjo-3d!jkZn^QHtYA%|_)Ni=l zgUTey>sAg|W>US_T7u?wk8mp_tId0Q$qMXa*u>RjOSy|1<_47s+}F=Nf@dv;hl=}@ z^4EAfhjYb5_w;$F%zn6#d$d>}qdJzk(oRYN)>}q)AK*foTmS-GcRB{%=(g~3*X!+# z=JHiNNtp&(GKovCh3!iwq%VG1Sg;jetL{D$WMD|i+&(rR&m;@4pIi?gdj%?~k6U*k zOblH*GVwM$sdVpHukqMvm~%bQK0X+#3h1{^yt(${Y4}{lyuLojmRR6VC#)84;7zX{ zKUxP9mSVR3(izuW6mk)Pbk6-W8_H2)3b;vK4#IExNi)sCqiFNOO7{+{c(F(iHnQ#D z&@~V9SZt<$ZSq~1g?fLVW=My{{@sW^?7|S_bN%ul=CIBnu9++5E3DmOxvK~&>@@kjCFhBD*X zv*_-l1S#bcp7?kJu>F2rXd|q?m{tTtUm&X;7+H_$c)LdFX6X8$0BOT=a@@2`Y}O8^ zm-)e<_;^@8yKDu(bzu;B6l|H`j^^pMu5J~ZRs!zr?&4%6^+=Yf@wS`vMa^P zc(p~`i?&GYat$%A5iMKN6Igzd6DN?e?CN#c`)%CTyy?^WhtMIR?!@k7qdlhtI<_!V z?0R#~VY#_S6GRr{#|rGZ_plf%cTkXd&?~Y?jqP?Rq51+yh8N|1+vG>i@Up^^4v2f8 zM-ts$E-utBy>6P6oiqY+(H^_nZYSl3RT(be*^AzWKNm3UpO{!=VMcQ{*xsbM+9-D) zcI1gMQa{bd)E;skH+)Lt=FRNyS|%_ypEDr)pUN$17NP{?jpgS@ydkv&*XAK zg=d6IEtuiw#w7oDT*_|;wc2^fssg_r6>L4aU<<&BUnk8%3DlQ3=`n0*>5IjAn8b0#wt zv8j^WmN?l?(f32pMPBbnblP^po~%TI&7owkq5 zby#NI&HgHo4f*0b#XszRCD>BLt4b2}Vx(TVUT`7!BAHtKv3v#voKr42HW$hkn$4dS z+(T54?=XWOwHHl3vE0$nVL-S@-UL8Dqp&!sEmiKNIL$t8!?)^dV~z#R^IwPY7PMbA zWhPZqq#ECNX0B$j({{nrVg>1~Y?!yw+7PUeSE+4mkMC-oZrrizx#(J{Ni;#d?8YyJ zEyghJtl!RC_lR7%FYICcM-23erwq zj9QAHUtz!Oxl?37_+zemBI*j~N8a`{PT6%Wmvs{#Fq3F{NFgePhG{Y(yasbJ^xy8i z%OBARE0`8XyBXfZX^@BoENg>Rs~TNH0MY!FV)gw22_h+0s!1Q4|1yo*ihzPnse@!lqjKRt7{@iS zXx&6MfEB?DN0P~bV<)w#2_V3tO(cb}oL8c81RE4oTv=|dT1QmRIbab!mMdl5?)&HI zJD@eeo0*>1uo7*9Q%lGV(KOHfve5kw?*keqryHjx>H&xqwiwq|r-r7mKt6>xx|w7! zh+{GSZr+U(wAoJ{KJ9`HS6OIuNh!@}byY@A*KrVMGIk&;TtG{hVovv-vcOrh6m5ed zVN^k|1wC+a!5{@Szf+~PcWlGCYyA7>%t?%CoHG`rFVSqKj3Xrv&$n7 z7gyt$?<7DW2J>@4pq~|ZJ^}B~nx)XFpJme~M2LRY;ytB4D@IhfdZt+FeRfuU;dItb z<-c>7tJwwASe1ui4!UX%uthT;7D1OJZtEol5*h;Hd&qnrrErR9k>fA8G+`Lhvj5B1 zxtTOx-nNb0X*6xK&_SR+`rI z@Q|`grD?qK03^oHQkTQ-Dx;pID25kT9=Gg)nVMRaj7Y?nZ9az_Dy7qMDPEJvv9m5V9ztGjyk-B^~rWnf<`adv8Z+4)VMxsY}<( zzpAT77#MZc6mkFV7??@uP(VI%!=tH_A?i1!viL> zmSI{~HOmBs82`M|$6j=rs$*jwr};7U98#59=gCb3pLU5y0ayL8R3TRxp}I$u>iD}< zPKfcns|J?1qQEvvL$eMjxqu^fp?E>K!O$vgv=l@#5D@>%Y*rdr2Tj-Aq3$cpgCWUN z`ZnnwSSDMhWtHby3F#zh7Zjb^(e*>U#7gom6hC2OL6R`O@ci2;=NBuFpNDE6%@K7A zbW&+}Cr>E(b-IJ0M2ni-mrr79X}Dk~wwhRI>6HiNL93Q0<;?c01>33#U=d|U+mJAH zhpfMGZaFSF4y31U=$ht=1uP~|8ZI?g;R~&QyrYTZ?>4Mt!os2KvoAT7bz$Wk)6A#d1qWo8(~GA+S-~G;t~R-9?BL;$NClvM|EN&KEc@a~#46D3eRq zsMT?v=S?%Y*MbwA+Up;N^8L8B&()p_1cO%$7HhW_jtwaprW~W1Q#CpYlsQUlq!GPS z(PsR>;ul7fb{%nt@pPOleSGO_W=V~_|Xm)oCXU28F$P^ z%sRTyG)$GZ-63l%2JIzV>^b#pe_&3izB(c^&}xK7CNc*-fNI_i52gx3Vac(E>zm#qGpM-|o zEa1by5pfSy%YnSWh^`iKTbuZlA+?g_k9ff7$U~N-Io(x*GutGtDtmc;_0T1|Vp3{S4HK%HD|>{acy#4-eTmTgYa1EzKVT!-i@}mNog_BN zb{MS%$-4MOna7$}79rG#iaE8Y#vaa_A!Kx?hG+xx8XtO8${4KR>6NY|_N~|pS$V=r zRDF7kfXFs3o%CHBftcsX&D{~motKz=pwbh>kH$Ei?&<)%>1COqC44Ao2(wdzCc?;>~3hx!gdj-O4bwAgtq1 zM%gQ!!ABc2s$OE@B%uaeIo(TC&r4mwqcC5W%)T(^`r=q3ni*h-Ck}Rdeh>#j0OdXa z(F1x$&*2_oxa#K|b0+-ks7Ff5c5UcyHm|r$EETy{Gk7Mno!Q1uIzMb<36}v6ynF93 z-f^=A7*sF>?ZV?jwPMR{GT;6&KtZOSmEnubC##(hvytyuM=&?nU(gO8JIecN@3eo9 zuABHFa=awdlrK_y z_0x@MtZ%g~6Abp|W|~|aO0hEzb7+sgqIdnFksziO2+Bcxi6;4-W&Li`a*2?MJ3foK z?ri9|)Knl1u>ni2jIGC>ej+J?;x#GpoOwYd1JKf~44xsg%>2{h z&otN{@!RlxnJO! zAywk=IA&kjuS#k{t-z;cTp4#a;q;P(K|dq<%c{R3`nyXR^mky=FLWySv~LCcFun`d zy#=O?8edT55X1#>{v(Esr*Oz@MyI)5-5WPUl2|5njl0t|_y^l8E;NB6Yrvj-{tOmk zr6sf@?dsmMQrfVx>LODuC`zl^#+o}MZ)qkPJUgjzeOs=6KG0ZkIC8gv@XYC4Nqz8hCHT_sySV4@CKqZ|_aZS&iJxn62(o=?5z(MLm88t+Typ6aV>wtSgc7AUs>{M^Yoq z=D)()&X8a;8jl1$(!D*dk0l2o#2`VX_&7JBK{<0+xyu1HyFcaP?rePYgN{r(^&fwt zKVCrH$cFifwY9Wp9i9x#HZTKf zu5;*KFPd@GeBkf{z92{jKR9Ch@{&pa{mpG7~X_iDEi zT4P^m)+U?l>mqCtj|7N@MaS^Wmeys z9EL`*w*r4n?*b3$dq2d&Sc_sgf-ipD`>*Ixn^=}lR$q^UT5wCn_qU3tBi6l1j|@E5 zF>_CtQL&nQ$XXF(Y)VsO2yTx<@<`3mbUoCMZ}$G(RdI%@V#tNfVgD z<|Q<)S@fXhRCT*Mcx}+t3^{%nyxW%I#VK+UqJ$^{oqL5Q}7^UbI*&Vc{p@vZ7|4NE zaJ}BV$B|3w+sB~}uCCTy-McN46w~{3(o@4znQPMxDZ!tN^Y>0EUv;}nRzgt%@Z(p9 z{V85GbDtirh;s2Xo>U#??hb^*nXh{P_~clqE}-N;oAP`aI6fXW1Aag@VuE7AMuQ6A zJPnH&@{pc+Pb_vCts3%WAUyPi5R#*M+tYGy76*c=TMWgj>9Fqi1rr zfi^L`1Lr9s;3Wd)FC)$NIFa3yl=htA9iE+X4$Bpy3k;XGhM>spxI zt6fMFdoCS*vP^umiSWqWsu{lvvR}fJ0eo@;VG2AxakbSLppZ9Bso5=im~QRnmZK0f zF6J$|Elk28;J`Yrv2K~LDR@{%@sVih$n@T#{Gg~!YSQg;Y( zKc$EI=+&n8&egR8OiLZ|+oJAKlI!~1OKs-;ooB7(q$Szu$9okTq#3-9y6BM-%6_uW{)N_aCEW0&1x}Jqo5d;T zW$RQq4(6&pt}}QPT2=I5Uss4UKpE{}dNW^u?5ZJXsmzTjdEC3e6VM%>Bv@wi7wWjd zl0!3u{yXP9-xrg<=*n@s=JwHv0|dUdhIV5fZNfz8n)RPwG&;^D&ZqZLx8Mfb!*tfWE5n(6cb#yogSnzV7w5{$Rx zNi0^FJ7OKWp{OCIL6IIB%ptCAtqc-eB)6RqP=q-=9v;N(SUDac>+iIXHilQ9NUpsV zW9{;GG~^oBCbdp!DgZBfE)8*#>K^;Cu9eBNhc#%e)Q4)_F*KF0#~vSuwtH9ftJM&T zx}*3hXtk(#y`qKXLnKdbV1nudQIaQN{bm|>Io5WLB}NY?5B9d~QpT*j1&%jTj*`-T z@QbycnXmJ2F>1q(Dg{N~VMK|#{#$KlAJudf#&J8I?35*W5G)ByF$ssPB{2$=5)lHC z6Cx0AQwL4Y1~`IkjJ;?CDmbPc6bW!CE>hUWAOUTUj*I14yzFkTkSgbCaD!Cu++ z`$bUsN1e{;kM7^kIrrXko_o)IzMtnl&u|m^sFBnidvi|#t`7KcIs{iU6~8!sFBL^P zbGG1YElR=2!Bqs5xY8@ZgErz@Zq3^wwU+yoB^Nk?rqS`=#Tcy0{afAfOFfYhNSH|<<=SPRKg-wX->r$}gV z4t!c2D`8&SKO>-jC^F^4Xpa2y%JNzBxyTCkMn`ur%JL@QgkfU}^OE{edeI#St#W{= zLF3B_OlPL~OGjeOEwkIWNB9QiWhFEkH?S&C{&I4$V*}xCCeOH}O=KxyO%?d$W?&%% zH-7}kn)XqdLO;U`tgG+y)YrYOM+WX?yB7dtpGIv@vG%65npC?D^z@H4yR*e7xK zcj~GVuG*Eul!i8kiD8PTRr+fLTEz=d76r%5VBJpBL)Mhhh4-i@);Ip>m9hfeUHgJ$ z6#TADCcs%BYWE7mr+2a5i4X#h`+rBEv4Uc;x=)U^e~(i&Sk8`46~$sL%JJ7RWuDmb zfjB*^70!y9-;I|!2bD3=3-MW%ZxnTNI6EHJWX~pmDgBux7|S&l_+;S{rDe`E-51!L ze3=p5N&Idm^vCuEq^cYZAEu?vAiGS0R9%WbvF*yljGA9sr4eUH&QCw{Ka*Gzs~+}f zmEPtK#J5TL^Uc(n9ne%{;5CO1Iw_||6}(!g=G=vz^{p?BRoHrs6#5MAl$zP*Cd|z7 z0Y2Db1(xG$SGo&|fyRqM^7X@Ww-Ml=e2_s9y?z0bNF}o4MLW||m9DOZ9-?K{h_Y!f zuo#U!KuYu3M6*z6#!zw=uh;Z;pUF8Fp%4u@^W=Q-Ft-mY_OBu?Y6Tbkf8%!X(EhxfKn>UUh&2K)7gE#@Qc=`2V(mrKPR2)XM2eDo zZ+dD@#?0p#N#72!Rl4un2V%a!7S#*OI>`||#tu&f(+>D6vE_?{N z3ulhx(v~>s#l~QH0~jov#&v@FjARxR>)ZXfD5T0mfmf7i##H_D?ZA@EpXgpbB=g_v z_$GIDzdqmms1T2$B61-l!yn>kD~WYgsBS*8_&QS`ZPQ@`FCi<^Joy)_b4&0jKxw*_ z7`2+1*%6S9G@fv*6P~kmE;6C1{OfUK)j+0;wzM>segH72MM?VA8~lbq8{A>+@ZQ{$ zH!JUxl*;HkAVK7>t-wS3LLd)9=CA#aaX>i{yyEam%aS=kXWJE@VG9nR(|3iTCyT`( z!;2BEl{%A!5fl`VY2`!J&#)-_1f0^d=m(Erine>(E#}EyX*b4;TI;uZ zdOK*iOQAn>-X7CQ+=>3yBNAR*bh;?eVhMdv+3VLJH7$Wz^lg|5y6+Z_T2Y{Pd2RG+ zlKcuQ6{nK9v%7d>p9^;2(J7j&-S}!m)W^qMBVYKeCH#J6_py}hnvN;p+Dq?UK#mDu`Ziv%xLkmyRd>$+QLjqH$ z$F{l&z@9v?_Iy2;JC~e#jB~ofsKs2~vUk--)-^Y2kNX-fZ6N5{3@a?7#tvZ=7oJ8-Fqj>Hyio4D0Pidu5+XP#n9=u|3u|= uKfgS(HuHbaw0f?6{_D2?ce7S!5MFP&xcigx@06=l>eJw(hxi9ieDxdr^!(ib literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/caldera_inject_definition.png b/1.0.X/usage/assets/caldera_inject_definition.png new file mode 100755 index 0000000000000000000000000000000000000000..da512051f883748466c07819f63bba08fa5a2237 GIT binary patch literal 29051 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 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/example_inject_filtering.png b/1.0.X/usage/assets/example_inject_filtering.png new file mode 100755 index 0000000000000000000000000000000000000000..2165924654786158f95b976951e5b2aaea96f61e GIT binary patch literal 102136 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%0A^x2LiXkH^ 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 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/expectation_edition_screen.png b/1.0.X/usage/assets/expectation_edition_screen.png new file mode 100755 index 0000000000000000000000000000000000000000..8c2a6178f8ebdbcca49f830c6fbefbb2fe980b6b GIT binary patch literal 19565 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 K&t;ucLK6TNbL=Sq literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/index.html b/1.0.X/usage/assets/index.html new file mode 100755 index 0000000..ab79e99 --- /dev/null +++ b/1.0.X/usage/assets/index.html @@ -0,0 +1,3238 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Assets - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Assets

+

The Assets section provides users with a centralized hub for managing and organizing the entities targeted for testing and simulation.

+

When you click on “Assets” in the left-hand banner, you see all the “Assets” pages. When accessing the Assets section, users are directed by default to the Endpoints page, where they can start managing their assets.

+

From the Assets section, users can access the following pages:

+
    +
  • Endpoints: Individual entities, representing any object or terminal that can be connected to a network.
  • +
  • Asset groups: Group of asset allowing you to organize endpoints into logical groups based on various filters applied by the user.
  • +
+

Endpoints

+

Endpoints encompass devices and systems that connect to a network, serving as the foundation for interaction with OpenBAS.

+

The list of endpoints continues to grow with the changing landscape of networked technologies and the increasing interconnectivity of digital ecosystems. Below is a non-exhaustive list of terminal categories:

+
    +
  • Computers: This category encompasses a wide range of computing devices, including desktops, laptops, and servers deployed within organizational networks.
  • +
  • Mobile devices: Smartphones and tablets represent another prominent category of endpoints, providing users with mobile access to network resources and services.
  • +
  • Workstations: Workstations refer to terminals or dedicated machines utilized by individuals or groups to perform specific tasks or access networked resources. These systems are typically tailored to meet specific operational requirements and may include specialized software or configurations.
  • +
  • IoT devices: The Internet of Things (IoT) encompasses a diverse array of interconnected devices and sensors. IoT endpoints include smart thermostats, cameras, environmental sensors, smart watches, and health tracking devices, among others.
  • +
+

When accessing the Endpoints pages, you see the list of all endpoints imported in your platform. Here, users can create and manage details specific to each endpoint.

+

Assets can be imported with the help of specific Collectors, like Microsoft Entra.

+

Example of list of Assets

+

Asset groups

+

Asset groups serve as a mechanism for organizing and grouping related Endpoints. These groups are constructed based on filters that define the criteria for inclusion, allowing administrators to segment and categorize Endpoints based on common characteristics or attributes.

+

When creating a new asset group, administrators have the flexibility to specify the filters that will delineate the group's membership. Currently, the platform offers a range of filters such as platform type, hostname, and IP addresses. We plan to extend the possibilities by including additional filters in future updates.

+

Example of a Group configuration

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/assets/inject-caldera.png b/1.0.X/usage/assets/inject-caldera.png new file mode 100755 index 0000000000000000000000000000000000000000..26604f1b20bcb75003251629ddb3136692269a50 GIT binary patch literal 39341 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஑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 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/install_agent_instruction.png b/1.0.X/usage/assets/install_agent_instruction.png new file mode 100755 index 0000000000000000000000000000000000000000..a981bfe6f951cbdfd303df8ea94ef686d8abc15f GIT binary patch literal 75527 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 literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/simulation_agents_screen.png b/1.0.X/usage/assets/simulation_agents_screen.png new file mode 100755 index 0000000000000000000000000000000000000000..ad5ffd525b2bce4942b67edb5da143f572e7acbd GIT binary patch literal 43163 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 cDYpQ@ufFARG50w|Q&^#A|> literal 0 HcmV?d00001 diff --git a/1.0.X/usage/assets/variables-usage.png b/1.0.X/usage/assets/variables-usage.png new file mode 100755 index 0000000000000000000000000000000000000000..541f73dca0992639ef3476270144359bb8f17c79 GIT binary patch literal 76910 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 DpLChD literal 0 HcmV?d00001 diff --git a/1.0.X/usage/atomic/index.html b/1.0.X/usage/atomic/index.html new file mode 100755 index 0000000..f7ddca4 --- /dev/null +++ b/1.0.X/usage/atomic/index.html @@ -0,0 +1,3304 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Atomic testing - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Atomic testing

+
+

Under construction

+

We are doing our best to complete this page. +If you want to participae, dont hesitate to join the Filigran Community on Slack +or submit your pull request on the Github doc repository.

+
+

When clicking on Atomic testing in the left menu, you access to the list of all atomic testings ever launched in the platform.

+

Atomic testing is a great way to simulate a singular attack technique you are particulary interested in, and test immediately your capability to prevent and detect it.

+

You can search for a specific one by name.

+

The presented list allows you to easily see global scores of all your recent atomic testings.

+

Example of Atomic testing

+

Create an Atomic testing

+

An atomic testing is essentially the simulation of a single inject, against a selection of targets (Players, Teams, Assets, Assets Group) with assorted expectations.

+

By clicking on the + button at the bottom right of the screen, you enter the atomic testing creation workflow.

+

On the left of the creation screen is the list of all available Inject you can play for atomic testing. Logos on the left of each line indicates which Injector is associated with each inject.

+

Depending on your integrations, this list can be long. You can filter the list by compatible platforms or by Mitre Att&ck tactics.By clicking on the "Att&CK" logo near the search bar, you can also filter by selecting a precise Mitre Att&ck techniques.

+

When selecting an inject on the left, the form on the right populates itself with a by-default title and propose you to define when the inject should be played after the launch of the atomic testing. You can keep it to 0.

+

By clicking on Inject content, you can define now or later the targeted assets or players, needed configurations, and the assorted expectations.

+

The "available variables" button helps you to use already defined variables into compatible fields.

+

Atomic testing screens

+

Details of an Atomic testing is composed of three parts: +- a header allowing to launch the test, see its state and update/delete it. +- an Overview screen to eaily see the results of the test. +- an execution details screen to see expectations of the test and investigate on execution logs

+

Overview

+

The first screen displayed when you click on a specific Atomic testing from the list is a breakdown of your security posture against this test.

+

As for Simulation and Scenario, Results are broken down into: +- Prevention: the ability of your security posture to prevent the inject +- Detection: the ability of your security posture to detect the inject +- Human response: the ability of your security teams to react as intented facing the inject

+

Big metrics on top of the screen sum up the expectations' result of all targets.

+

The list of targets on the left allows you to easily see the result per Target, and for example investigate further why a specific Asset have failed the test.

+

For a selected target, you can on the right the timeline of the test against the target and the assorted results. The result logs are also displayed.

+

Atomic testing Overview with Results

+

Execution details

+

On this screen, you can retrieve details about the atomic testing and its expectations.

+

You can also see the raw execution logs of the Injector responsible for the test execution.

+

Execution trace of a successfull atomic testing

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/challenges/index.html b/1.0.X/usage/challenges/index.html new file mode 100755 index 0000000..ec95d7c --- /dev/null +++ b/1.0.X/usage/challenges/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Challenges - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Challenges

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/channels/index.html b/1.0.X/usage/channels/index.html new file mode 100755 index 0000000..a8a3105 --- /dev/null +++ b/1.0.X/usage/channels/index.html @@ -0,0 +1,3243 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Channels - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Channels

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+

In OpenBAS, Channels represent communication medias with a particular look. There are used to present web articles or other media contents to Players in a specific way.

+

It helps give shape to your Scenario context and events.

+

Create a Channel

+

First step is to click on the + button at the bottom right and give your new Channel a type (Newspaper, Microblogging, TV Channel), a name and a subtitle.

+

Once done, click on the Channel in the list to access its overview. Here you can define how media content associated to this Chennel will be displayed to Players.

+

You can define primary and secondary colors, choose logos and define how the header is presented.

+

On the right, a mock up of the overview is displayed to give you the look and fill of it.

+

Channel creation

+

Use a Channel

+

A Channel will then be used in Scenario and in Simulation definition. When you create an Article, you have to choose the Channel that will give it an adequate shape.

+

See Media pressure page to know how to create and add Articles to your Scenarios.

+

Channel selection during Article creation

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/collector-caldera/index.html b/1.0.X/usage/collector-caldera/index.html new file mode 100755 index 0000000..4afe38b --- /dev/null +++ b/1.0.X/usage/collector-caldera/index.html @@ -0,0 +1,3329 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Caldera Collector - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Caldera collector

+

The integration between an OpenBAS instance and a Caldera instance allows you to enrich assets data.

+

Configuration variables

+

Below are the properties you'll need to set for OpenBAS:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Propertyapplication.propertiesDocker environment variableMandatoryDescription
Enable Caldera collectorcollector.caldera.enableCOLLECTOR.CALDERA.ENABLEYesEnable the Caldera collector.
Collector IDcollector.caldera.idCOLLECTOR.CALDERA.IDYesThe ID of the collector.
Caldera URLcollector.caldera.urlCOLLECTOR.CALDERA.URLYesThe URL of the Caldera instance.
Caldera API Keycollector.caldera.api-keyCOLLECTOR.CALDERA.API-KEYYesThe API Key for the rest API of the Caldera instance.
Caldera polling intervalcollector.caldera.intervalCOLLECTOR.CALDERA.INTERVALNoThe time interval in seconds where the collect is triggered. Default is 60 seconds.
+

Behavior

+

Each interval, a job retrieves the deployed agents on Caldera and populates the OpenBAS database by creating Assets.

+

Deduplication is done thanks to the caldera paw property :

+
    +
  • if there is no asset on OpenBAS based on this paw, a new asset is created
  • +
  • if there is an asset on OpenBAS based on this paw and the source of creation is only Caldera, this asset is updated
  • +
+

There is no automatic deletion of OpenBAS assets if Caldera agents no longer exist.

+

Mapping

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Agent PropertyAsset Property
pawexternalId
pawname
host_ip_addrsips
platformplatform
last_seenlastSeen
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/collectors/index.html b/1.0.X/usage/collectors/index.html new file mode 100755 index 0000000..551cf75 --- /dev/null +++ b/1.0.X/usage/collectors/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Collectors - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Collectors

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/components/index.html b/1.0.X/usage/components/index.html new file mode 100755 index 0000000..3ffccd3 --- /dev/null +++ b/1.0.X/usage/components/index.html @@ -0,0 +1,3014 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Components - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Components

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ +
+ + + + +
+ +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/documents/index.html b/1.0.X/usage/documents/index.html new file mode 100755 index 0000000..7553269 --- /dev/null +++ b/1.0.X/usage/documents/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Documents - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Documents

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/expectations/index.html b/1.0.X/usage/expectations/index.html new file mode 100755 index 0000000..41ec232 --- /dev/null +++ b/1.0.X/usage/expectations/index.html @@ -0,0 +1,3354 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Expectations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Expectations

+

Expectations define what is expected from an Asset (endpoint) or a Players when facing an Inject in terms of security posture. Each expectation has a score representing how well it has been met by the target.

+

Expectation types

+

Expectations can be categorized as either Manual or Automatic, depending on how they are validated.

+

Manual expectations

+

Manual expectations require manual validation by the animation team, with the validation process and scoring managed manually. They are simple, customizable expectations to be manually validated.

+

Automatic expectations

+

Automatic expectations are validated automatically under specific conditions. Currently available automatic expectations include:

+
    +
  • Automatic - Prevention: Triggered when inject is processed: automatically validated by security integration with compatible Collectors if the inject's action generates a prevention alert, such as quarantine.
  • +
  • Automatic - Detection: Triggered when inject is processed: automatically validated by security integration with compatible Collectors if the inject's action generates a detection alert, such as an incident.
  • +
  • Automatic - Triggered when team reads articles: Automatically validated when the article of a Media pressure inject has been read by targets.
  • +
+

For injects targeting asset groups, some expectations can be validated in two modes:

+
    +
  • All assets (per group) must validate the expectation.
  • +
  • At least one asset (per group) must validate the expectation.
  • +
+ + +
+

Special case: Publish Challenges inject

+

The "Publish Challenges" inject doesn't require an expectation, as results are computed directly from Challenges' scores.

+
+

Expectation manipulation

+

Add an expectation to an inject

+

To add expectations to an inject, navigate to the inject's content and click on "Add expectations". From there, select the type of expectation you want to add and set a score for it.

+

You can add multiple expectations to a single inject.

+ + +

Validate a manual expectation

+

If you have configured manual expectations in your scenario, you will have the opportunity to handle manual validations during each simulation. During a Simulation, navigate to the Animation tab, under the Validation screen. Here, you'll find a list of expectations that require manual validation.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/exports/index.html b/1.0.X/usage/exports/index.html new file mode 100755 index 0000000..ad6e43c --- /dev/null +++ b/1.0.X/usage/exports/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Exports - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Exports

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/getting-started/index.html b/1.0.X/usage/getting-started/index.html new file mode 100755 index 0000000..03111e1 --- /dev/null +++ b/1.0.X/usage/getting-started/index.html @@ -0,0 +1,3361 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Getting started - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Getting started

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+

This guide aims to give you a full overview of the OpenBAS features and workflows. The platform can be used in various contexts to handle Breach and Attack simulations at technical or strategical levels. OpenBAS has been designed as a part of the Filigran XTM suite and can be integrated with OpenCTI to generate meaningful attack scenario based on real threat. OpenBAS is result-oriented with many dashboard helping you to evaluate you securoty posture given a defined context.

+

Here are some examples of use cases: +- Designing attack scenario based on real threat +- Evaluate your security posture against technical simulations on endpoints +- Enhance team skills by evaluating them during simulations along with your security systems +- Organize Capture The Flag with multiple challenges +- Conduct atomic testing

+

Home screen

+

The Home screen gives any visitor on the OpenBAS platform an outlook on the live of the platform as well as an overview of your global security posture.

+

Your first Breach and Attack Simulation

+

Importing players and assets to play with

+

First, you need to import Players and Assets that will participate to the simulation and be targeted by technical or strategical events. To do so, you need to ...

+

Integrate with Simulation Agent to simulate technical events

+

If you want to simulate attack at a technical level, you will need to install a Simulation Agent that will play technical events on your imported assets. To do so, you can go to the dedicated panel from the top right button and follow installation instructions. By default, Caldera is part of the OpenBAS stack.

+

Simulation Agents screen

+

The Caldera agent will allow you to play various technical events, based on the Mitre ATT&CK matrix.

+

Building your Scenario

+

Once integrations is done, you are ready to create your first Scenario!

+

Scenarios act as template for your Breach and Attack simulations. After establihing such a template, you will be able to schedule it as a one shot simulation, or as a recurring one.

+
    +
  • First, go to the Scenarios menu and create a new one with the + button.
  • +
  • Once done, define Teams that will be playing in this Scenario by going to the Definition/Teams tab
  • +
  • Now go to the Injects tab and add some to build the serie of events that will define the core of your Scenario. If you want to stay strategical, you can select inject like "Send individual mails". If you want to go technical, you can select injects linked to attack pattern (Caldera integration allows you to play hundreds of them).
  • +
  • Then, define who or what will be targeted by those injects, customize them, and define what is expected to happen. For example, you expect the targeted team to perform a specific action and the animation team will validated this expectation manually. Or, you expect the technical event to be prevented and it will be automatically checked through your integrations with your security systems.
  • +
  • Do not forget to define when the inject is played in the scenario chronology.
  • +
+

Optionnaly, you can buff up your scenario by adding Documents, Media pressures, or even CTF Challenges to your injects.

+

Play the simulation

+

You can now schedule your Simulation by hitting the blue "Simulate now" button. Choose your moment and hit start.

+

On time, a Simulation based on your Scenario template is generated. it is listed in your Scenario overview and in the Simulations menu. Fron there, you can follow the course of the Simulation and interact with it, for example to validate manual expectations.

+

During the course of the simulation, results are updated and can be consulted in the Simulation overview.

+

Evaluate your security posture

+

Results in OpenBAS are based on expectations' results that are linked to injects played during Simulations. It is then important to manually validate expectations that need it.

+

Results are broken down by "Prevention", "Detection" and "Human response" metrics. +- Prevention displays your ability to prevent the scenario's technical events to be completed +- Detection displays your ability to detect the scenario's technical events +- HUman response displays how well players and teams react as expected facing the scenario's events.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/inject-caldera/index.html b/1.0.X/usage/inject-caldera/index.html new file mode 100755 index 0000000..53ac55e --- /dev/null +++ b/1.0.X/usage/inject-caldera/index.html @@ -0,0 +1,3299 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Caldera Injector - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Caldera injects

+

The Caldera framework, developed by MITRE, is a powerful framework designed to simulate cyberattacks. It enables security teams to conduct realistic and controlled simulations of adversary behavior, reducing the amount of time and resources needed for routine cybersecurity testing.

+

Injects

+

In OpenBAS, the Caldera framework has been fully integrated, offering users access to a comprehensive library of injects for conducting simulation exercises. With this integration, users can leverage the extensive capabilities of Caldera within OpenBAS.

+

Caldera offers 1600+ abilities, covering the full range of ATT&CK tactics and techniques. These capabilities equip security teams with an extensive toolkit to simulate various threats and assess defense mechanisms effectively.

+ + +

Behavior

+

Injects within the Caldera framework can be played on both individual Endpoints and Asset groups. Prior to playing injects, Caldera agents need to be installed on the target machines to enable interaction with the platform.

+

Once the agents are deployed, simulations with Caldera injects can be executed. The platform will contact the agent to start the ability. Subsequently, the agents will report the results to OpenBAS. Below is the workflow illustrating the behavior of injects.

+

Async workflow

+

Configuration variables

+ + +

Below are the properties you'll need to set for OpenBAS:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Propertyapplication.propertiesDocker environment variableMandatoryDescription
Enable Caldera collectorinjector.caldera.enableINJECTOR_CALDERA_ENABLEYesEnable the Caldera injector.
Injector IDinjector.caldera.idINJECTOR_CALDERA_IDYesThe ID of the injector.
Collector IDsinjector.caldera.collector-idsINJECTOR_CALDERA_COLLECTOR_IDSYesThe collector IDs compatible with the injection process.
Caldera URLinjector.caldera.urlINJECTOR_CALDERA_URLYesThe URL of the Caldera instance.
Caldera API Keyinjector.caldera.api-keyINJECTOR_CALDERA_API-KEYYesThe API Key for the rest API of the Caldera instance.
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/injectors/index.html b/1.0.X/usage/injectors/index.html new file mode 100755 index 0000000..3dc7f8b --- /dev/null +++ b/1.0.X/usage/injectors/index.html @@ -0,0 +1,3233 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Injectors - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injectors

+

Injectors serve as the backbone of the platform, enabling essential integration and functionalities for conducting simulations and exercises effectively. These components empower administrators to orchestrate a diverse range of activities and responses during simulation scenarios. Some of them are built-in in the platform, and others are external integrations.

+

Built-in injectors are seamlessly integrated into the platform, while external injectors require the deployment of additional systems alongside the platform to enable their functionality. Together, these injectors provide a comprehensive toolkit for administrators to design and execute simulations tailored to their specific objectives and requirements.

+

Injectors list

+

A multitude of injectors are available, each offering distinct capabilities and functionalities to enhance the simulation experience. Here is an overview of the existing injectors:

+
    +
  • Airbus CyberRange (Lade): Integration with the Airbus CyberRange platform, enabling seamless interaction and collaboration with CyberRange environments. For more information concerning CyberRange, please refer to the Airbus website.
  • +
  • Caldera: Facilitates the use of the MITRE Caldera framework, empowering administrators to leverage advanced simulation capabilities. For more information concerning the Caldera injector, please refer to the dedicated documentation page.
  • +
  • Challenges: Manages inject "publish challenges". To find more information more about this type of inject, please refer to the dedicated documentation section.
  • +
  • Email: Manages the sending of injects' emails, enabling communication and dissemination of simulation-related information.
  • +
  • HTTP query: Executes HTTP requests on external services, facilitating interactions with external systems. To find more information about the related inject, please refer to the dedicated documentation section.
  • +
  • Manual: Platform functionality for creating manual action reminders, allowing administrators to prompt specific actions to be performed manually. To find more information about the related inject, please refer to the dedicated documentation section.
  • +
  • Media pressure: Manages inject "publish channel pressure". To find more information about this type of inject, please refer to the dedicated documentation section.
  • +
  • OVHCloud SMS Platform: Facilitates SMS messaging for injects, providing an additional communication channel for simulation participants.
  • +
  • OpenCTI: Integration with an OpenCTI platform, enhancing simulation capabilities with access to threat intelligence and automatic scenario generation based on observed threat activities.
  • +
+

List of Injectors

+

+

Agents

+

For certain injectors, deploying an agent on the target machine is necessary to facilitate integration with OpenBAS. These agents are software programs that connect back to OpenBAS at certain intervals to get instructions.

+

To access the agents and installation instructions, navigate to the dedicated page located in the top right-hand corner (button with the screen logo).

+

Detailed guidance on installing the agents, along with downloadable packages, is provided on this page. Agents are available for various operating systems, including Windows, Linux, and MacOS, ensuring compatibility across different environments.

+

As of now, only the Caldera injector requires the installation of an agent. This agent enables full integration with the MITRE Caldera framework, unlocking advanced simulation capabilities and enhancing the overall effectiveness of simulation exercises. Full details of the Caldera agent are available in the MITRE documentation.

+

Install Agent panel with instructions

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/injects/index.html b/1.0.X/usage/injects/index.html new file mode 100755 index 0000000..0986e35 --- /dev/null +++ b/1.0.X/usage/injects/index.html @@ -0,0 +1,3555 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Injects - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injects

+

Injects are fundamental elements of simulations within OpenBAS, each representing a discrete action to be executed during a Scenario. Managed and facilitated by various injectors, each inject type serves a distinct purpose, contributing to the comprehensive evaluation of defenses.

+

Injects list in a Scenario

+

Create an inject

+

Whether intended for Atomic testing or for a Simulation, the process for creating injects remains consistent within OpenBAS.

+

Capture of a filtered list of inject during selection process

+

For Atomic testing

+

To create an inject for atomic testing, navigate to the "Atomic testing" section located in the left-hand banner. Click on the "+" icon in the bottom right corner to initiate the inject creation process.

+

For Scenarios and Simulations

+

For injects intended for use within simulations, access the desired Scenario or Simulation and navigate to the "Injects" tab. Click on the "+" icon in the bottom right corner of the screen to open the inject creation panel.

+

Note that an inject defined in a Scenario will be used in all the scenario's subsequent simulations. An Inject defined at the simulation level will not be replicated into the Scenario itself, thus it will not be replicated in future scenario's simulations.

+

+

Inject creation process

+

Once the inject creation panel is open, you can proceed to configure the inject according to your requirements. Key steps in the creation process include:

+

1. Choose the type of inject

+

You first need to select an inject in the list of available ones (on the left of the creation screen). Logos on the left of each line indicates which Injector is associated with each inject. Depending on your integrations, this list can be long.

+

To facilitate the selection into this possibly very long list, you can search injects by name and filter the list by selecting a precise MITRE ATT&CK techniques for instance.

+

2. Set inject parameters

+

When selecting an inject on the left, the form on the right populates itself with a by-default title and propose you to define:

+
    +
  • Descriptive information: Fill in details such as the title, description, and relevant tags to categorize the inject effectively.
  • +
  • Execution timing: If you are creating your inject in the context of a scenario or simulation, you have to set the timing for when the inject should be executed within the simulation timeline, ensuring it aligns with the overall scenario progression.
  • +
+

By clicking on "Inject content", you can define now or later:

+
    +
  • Inject targets: Specify the targets for the inject, which may include players and teams or assets and assets groups depending on the inject chosen.
  • +
  • Expectations: Define the expected outcomes or responses to the inject, outlining the desired actions or behaviors by players.
  • +
  • Attachments: Attach any relevant documents or resources to provide additional context or information related to the inject.
  • +
  • Additional fields: Depending on the type of Inject selected, you may have access to additional fields specific to that inject type. These fields may include the subject and body of an email, channel pressure settings for public communications, obfuscation options, and more.
  • +
+

The "available variables" button helps you to use already defined variables into compatible fields.

+

screenshot of the inject creation panel

+

By following these steps and providing the necessary information, you can create injects tailored to your specific testing or simulation objectives.

+

Inject types

+

There are different types of injector in OpenBAS.

+

+

Manual action reminders

+

Manual action reminders are injects designed to prompt animation team to perform specific actions manually. It allows to place in the timeline a stimulus to be produced manually, outside the platform (e.g. simulated a call from a journalist on the switchboard telephone). These reminders ensure that critical tasks are completed as part of the simulation, enhancing the accuracy and realism of the exercise.

+

The inject associated with this type is referred to as Manual.

+

Direct contact

+

Injects for direct contact allow sending emails or SMS messages to players. These injects assess the organization's response to communication-based threats, such as phishing attempts, social engineering attacks, or emergency notifications. They can also assess crisis management, including responses to internal information requests or management pressure.

+

Here's the list of injects linked to this category:

+
    +
  • Send a SMS: enables sending SMS messages.
  • +
  • Send individual mails: enables sending emails to individuals separately.
  • +
  • Send multi-recipients mail: enables sending emails to a group of people (each recipient can see the other recipients).
  • +
+

+

Media pressure

+

Injects simulating public communications involve the publication of articles, social media posts, or other fake announcements. These injects replicate scenarios where public disclosure of information or events affects an organization's reputation or operational continuity.

+

The inject associated with this type is referred to as Publish channel pressure.

+

+

Challenges

+

Challenge injects are set to test participants' skills and response capabilities by publishing challenges. These injects present scenarios or tasks that require active participation and problem-solving, allowing administrators to evaluate players.

+

The inject associated with this type is referred to as Publish challenges.

+

+

HTTP requests

+

HTTP request injects are used to forge HTTP requests to a third party services in order to perform actions outside the platform (e.g. API call to an EDR). These injects enable the platform to communicate with external services, gather information, or trigger specific actions via HTTP protocols.

+

HTTP requests GET, POST, and PUT, can be sent. The corresponding injects are named HTTP Request - \<request type>.

+

+

Integrations with Agents and CyberRanges

+

Injects executed on remote systems are facilitated by Injectors like Caldera or Airbus CyberRange. These actions simulate real-world attack techniques, allowing administrators to gauge the effectiveness of their security posture in response to various technical actions attackers may take.

+

There are over 1,700 such injects covering all the TTPs in the MITRE ATT&CK matrix.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/injects_and_expectations/index.html b/1.0.X/usage/injects_and_expectations/index.html new file mode 100755 index 0000000..8c3cfbd --- /dev/null +++ b/1.0.X/usage/injects_and_expectations/index.html @@ -0,0 +1,3225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Injects and Expectations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injects and Expectations

+

Evaluating security posture in OpenBAS is to confront events (aka Injects) with Expectations.

+

Injects

+

Threats are the results of actions by threat actors, and a combination of intent, capability and opportunity. In OpenBAS, simulating threats and their attack capabilities involves executing injects targeting players and assets.

+

Injects can be technical, emulating action attackers might take on an endpoint, and non-technical, representing interactions with players or impactful contextual events during a crisis (such as media inquiries by phone following a data breach).

+

Caldera inject definition form

+

Email inject definition form

+

Expectations

+

Each Inject is associated with Expectations. Expectations outline the anticipated outcomes from security systems and teams in response to attacker actions or contextual events.

+

Expectations can be about:

+
    +
  • Prevention: ensuring that the security posture can prevent the attacker's actions.
  • +
  • Detection: ensuring that the security posture can detect the attacker's actions.
  • +
  • Human response: ensuring that teams react appropriately according to defined security processes.
  • +
+

The collection and concatenation of expectations' results, broken down per type, allows to assess the security posture against a threat context. This provides insights to identify areas for improvement.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/injects_builtin/index.html b/1.0.X/usage/injects_builtin/index.html new file mode 100755 index 0000000..c03ddfb --- /dev/null +++ b/1.0.X/usage/injects_builtin/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Built-In Injector - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Injects built-in

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/media_pressure/index.html b/1.0.X/usage/media_pressure/index.html new file mode 100755 index 0000000..555a83c --- /dev/null +++ b/1.0.X/usage/media_pressure/index.html @@ -0,0 +1,3251 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Media pressure - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Media pressure

+
+

Under construction

+

We are doing our best to complete this page. +If you want to participae, dont hesitate to join the Filigran Community on Slack +or submit your pull request on the Github doc repository.

+
+

Media pressure are Articles or web contents you create to give more shape to your Scenario, or to simulate contextual pressure on your Teams and Players.

+

For example, you can create an Article about the data leakage your organization is said to be affected by during the Scenario, and simulate its publishing by a large coverage media outlet with a "Publish channel pressure" inject.

+

Create an Article

+

To create an Article, go to the definition page of your Scenario or your Simulation and click on the + button near "media pressure". If you did not create Article yet, you can also click on the more visible "Create an Article" button.

+

An media pressure Article is defined by: +- Channel: the Channel template that will shape the article during the display to the Players. A Channel must have been defined in the platform. +- Title +- Author +- Content: the content of your article. You can enrich the text and have a preview of the formatted result. You can also go fullscreen. +- To simulate social network engagement, you can define number of comments, Shares and Likes of the Articles. +- Documents: you can attach file to the Article. It can be useful if you want to simulate the publication of a large report you don't want to craft inside OpenBAS, like a pdf security report for example.

+

Once created, Articles appears as cards in the definition screen of the Scenario or Simulation they have been created into. Note that if an article is not yet used in the Scenario or Simulation (probably because it does not have been used in a "Publish channel pressure" inject), it is mentioned into the Article's card.

+ + +

Use an Article in Scenario and Simulation

+

To use an Article in a Scenario or Simulation, it must have been created in the context of the Scenario, the Simulation's parent Scenario or the Simulation itself.

+

When you select an Inject, if it is compatible with media pressures, you can add a media pressure article to it.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/mitigations/index.html b/1.0.X/usage/mitigations/index.html new file mode 100755 index 0000000..aeb79de --- /dev/null +++ b/1.0.X/usage/mitigations/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Mitigations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Mitigations

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/opencti_scenario/index.html b/1.0.X/usage/opencti_scenario/index.html new file mode 100755 index 0000000..49698a4 --- /dev/null +++ b/1.0.X/usage/opencti_scenario/index.html @@ -0,0 +1,3129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Generating Scenario from OpenCTI - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Scenario generation from OpenCTI

+

Creating a scenario can be a complex task, especially when aiming to build one that is meaningful and relevant to the specific threats facing your organization. To streamline this process and ensure that scenarios are closely aligned with your threat landscape, you can leverage the integration between OpenCTI and OpenBAS.

+ + +

When generating a scenario from OpenCTI, a scenario is created and can be accessed from the scenarios screen. The scenario name will include a reference to OpenCTI, indicating its origin. This scenario will automatically contain relevant sequences of injects based on the threat context identified in OpenCTI.

+

However, it's important to review and potentially customize the scenario to ensure it meets your organization's specific requirements. Additionally, you'll need to select appropriate targets for the injects within the scenario.

+

Once you've finalized the scenario, you can schedule your simulation as you would for any other scenario. The overall results of the simulation will also be available directly within OpenCTI, providing insights into the threat context upon which the scenario is based.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/overview/index.html b/1.0.X/usage/overview/index.html new file mode 100755 index 0000000..bafa7ff --- /dev/null +++ b/1.0.X/usage/overview/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Overview - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Overview

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/payloads/index.html b/1.0.X/usage/payloads/index.html new file mode 100755 index 0000000..9038a8f --- /dev/null +++ b/1.0.X/usage/payloads/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Payloads - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Payloads

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/personas/index.html b/1.0.X/usage/personas/index.html new file mode 100755 index 0000000..1084089 --- /dev/null +++ b/1.0.X/usage/personas/index.html @@ -0,0 +1,3143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Personas - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Personas

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/playing/index.html b/1.0.X/usage/playing/index.html new file mode 100755 index 0000000..1cfa0fc --- /dev/null +++ b/1.0.X/usage/playing/index.html @@ -0,0 +1,3014 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Playing - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Playing

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ +
+ + + + +
+ +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/reports/index.html b/1.0.X/usage/reports/index.html new file mode 100755 index 0000000..6bebf2a --- /dev/null +++ b/1.0.X/usage/reports/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Reports - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Reports

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/scenario/index.html b/1.0.X/usage/scenario/index.html new file mode 100755 index 0000000..ffe0314 --- /dev/null +++ b/1.0.X/usage/scenario/index.html @@ -0,0 +1,3308 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Scenario - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Scenario

+

When clicking on Scenarios in the left menu, you access to the list of all Scenarios defined in the platform. Scenarios act as templates that translate threat contexts into meaningful events to simulate.

+

Scenarios can be grouped by defining categories, main focus, severity and tags. It is then possible to filter the Scenarios list based on these attributes. Quick filters are available by default at the top of the screen to filter Scenario on most used categories.

+

It is also possible to search Scenarios by their names using the search bar.

+ + +

Create a scenario

+

To create a scenario, hit the + button on the bottom right of the screen and define general metadata that make sense for you.

+

Once done, the scenario is accessible in the list. Click on it to see its details and define them.

+

Scenario overview

+

The overview provides comprehensive information for evaluating your security posture against the threat context over time. It displays the scenario's context along with the results of the simulations played from it. Additionally, the list of these simulations is shown, allowing easy access to their specific details and results.

+

If the scenario has never been simulated, the results' widget contains an example of how results will be displayed, and the list of simulations is replaced with an invitation to generate one.

+ + +

Defining a Scenario

+

To define the scenario, navigate to the "Definition" and "Injects" tabs.

+

In the "Definition" tab, you can add various elements to construct events:

+ + + +

Once you have added all the elements you need, you can go to the "Injects" tab to begin to create the chain of events that will shape your scenario.

+

By clicking on the + button at the bottom right of the screen, you enter the inject creation workflow.

+

Launching a simulation of the scenario

+

Once you've finished defining your scenario, it's time to simulate it and evaluate your security posture!

+

To do so, click the "Simulate now" button. You can choose to simulate this scenario as a one-time evaluation, scheduling it for a specific date and time. Additionally, you can set it to simulate recurrently to assess your posture over time. The results of each simulation will populate your scenario overview.

+

A visual indication, located to the right of the scenario's title, provides a quick way to know if the scenario is currently being simulated.

+

Export your scenario

+

You can export your carefully crafted scenario as a JSON file by clicking the three-dots button at the top right of the scenario screen. This allows you to share it with others, or store it outside the platform.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/scenarios_and_simulations/index.html b/1.0.X/usage/scenarios_and_simulations/index.html new file mode 100755 index 0000000..93ec424 --- /dev/null +++ b/1.0.X/usage/scenarios_and_simulations/index.html @@ -0,0 +1,3221 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Scenario and Simulations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Scenarios and Simulations

+

In OpenBAS, the core concept to simulate attacks is based on the duo Scenario & Simulation.

+

Scenarios

+

Scenario enable to translate a threat context, such as an attack or even a threat actor, into a meaningful sequence of events (referred to as injects), which can be technical or non-technical. This chronology of events can be enriched with associated documents or media articles to simulate the environment surrounding them.

+

Within Scenarios, you also specify who participates, whether actual people (referred to as Players) or endpoints (referred to as Assets). They will be the targets of the events representing the threat.

+

In order to translate real threats into Scenarios, it is possible to create them from OpenCTI data, such as Reports.

+

Simulations

+

If a Scenario translates threat context into meaningful events, a Simulation serves as a means to evaluate your security posture against this threat context.

+

By simulating a scenario with recurrence, you can evaluate your security posture over time in response to a threat context. Since simulations are always linked to their parent scenario, even if it evolves, you can: +- assess your risk against evolving threats, +- evaluate the effectiveness of your security governance in addressing your most relevant threats.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/simulation/index.html b/1.0.X/usage/simulation/index.html new file mode 100755 index 0000000..0c3d9a9 --- /dev/null +++ b/1.0.X/usage/simulation/index.html @@ -0,0 +1,3314 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Simulation - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + + + + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Simulation

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+

When clicking on Simulations in the left menu, you access to the list of all Simulations ever launched in the platform. You can filter by tag (for example to only display simulation related to a specific threat actor) and sort them (chronologically, by status, etc.).

+

From this screen, you can easily see last global scores and access ongoing Simulations at platform level.

+

Creating a Simulation

+

The best practice to create a Simulation is to do it from a Scenario in order to evaluate your security posture over time against a specific threat context.

+

But you can create directly a Simulation if you want, by hitting the + button on the bottom right of the screen. You will have similar definition options as in Scenario creation.

+ + +

Simulation overview

+

The Overview regroups everything you need to know to follow your Simulation by its Results. Results are broken down into 3 main metrics:

+
    +
  • Prevention: the ability of your security posture to prevent the simulated scenario's events to happen
  • +
  • Detection: the ability of your security posture to detect the simulated scenario's events
  • +
  • Human response: the ability of your security teams to react as intended facing the simulated scenario
  • +
+

The top of the Simulation screen give you the ability to Start, stop and Reset the Simulation, delay the launch time.

+ + + + +

Overriding the Scenario definition

+

In a Simulation, you can see and modify all elements defining it: Teams and Players, Variables, Media pressure, Challenges, Injects. Modifying the Simulation definition allows you to customize it to adapt a singular play to some temporary changes. For example, change an email address into Variables to be used in email-related injects, change a playing team, etc.

+ + +

Animating a Simulation

+

The Animation screen of a Simulation is the place to follow the Simulation execution, especially if you are conducting simulation at strategical level (heavily relying on interactions with Teams and Players, manual validations of expectations) for training your organization on all aspects of a cyber crisis.

+

The Timeline screen is the overview of the Animation tab, to see ongoing injects.

+

The Mails screen is a way to manage email interaction with Players into the OpenBAS platform.

+

The Validation screen is the place to manually validate expectations of the Simulation to consolidate Results.

+

The Simulation logs is an interface for the animation team to collaborate during the Simulation.

+ + +

Lessons learned

+

In the Lesson Learned tab of a Simulation, you can manage the collection and concatenation of customizable surveys. It helps you in conducting the most underestimated part of a Breach and Attack simulation involving real people, by automating it and complete your Simulation's Results with qualitative feedback.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/skills/index.html b/1.0.X/usage/skills/index.html new file mode 100755 index 0000000..bd93579 --- /dev/null +++ b/1.0.X/usage/skills/index.html @@ -0,0 +1,3126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Skills - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Skills

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/systems/index.html b/1.0.X/usage/systems/index.html new file mode 100755 index 0000000..e897fae --- /dev/null +++ b/1.0.X/usage/systems/index.html @@ -0,0 +1,3014 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Systems - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Systems

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ +
+ + + + +
+ +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/targets/index.html b/1.0.X/usage/targets/index.html new file mode 100755 index 0000000..7f13a68 --- /dev/null +++ b/1.0.X/usage/targets/index.html @@ -0,0 +1,3225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Targets - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Targets

+

When you are using an Inject, whether for Atomic testing, Scenario or Simulation, it's necessary to define the recipients, known as "targets", which could include Players, Teams, Assets (endpoints) or/and Asset groups it will be sent to. They are called "targets" of the inject.

+

Note that certain injects can't target assets, while others can't target players. For instance, the "Send individual mails" inject can only target players and teams, not assets.

+

Target selection is performed during inject creation or update.

+ + +

Selecting Players and Teams

+

Directly targeting a player isn't yet possible. Instead, you must target a team. In scenarios or simulations, the team must be included in the scenario or simulation to be selectable. However, when creating atomic testing, all teams in the platform are selectable.

+

Note that visibility of teams and players is limited by the organization's segregation.

+

When selecting a team as the target, all players within that team will be targeted by the inject. Each player will have to complete expectations.

+ + +

Selecting Assets (endpoints) and Asset groups

+

You can target assets (endpoints) directly or asset groups. In the dedicated dialog, only assets compatible with the inject are listed by default.

+

When selecting an asset group to target, all assets (endpoints) within the group will be targeted by the inject. Each one will have to complete expectations.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/teams_and_players_and_organizations/index.html b/1.0.X/usage/teams_and_players_and_organizations/index.html new file mode 100755 index 0000000..f966243 --- /dev/null +++ b/1.0.X/usage/teams_and_players_and_organizations/index.html @@ -0,0 +1,3268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teams, Players and Organizations - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Players, Teams and Organizations

+

Breach and Attack Simulation involves testing your security posture, and people are an essential part of it!

+

Players, teams, and organizations are where you organize the human aspect of your security posture within OpenBAS (in the "People" section). These entities are the targets for injects during your simulations and atomic testings.

+

+

Players

+

Players are the users that may take part into your scenarios, to be tested against attack or contextual events (i.e. injects).

+

Players can be created manually with the + button at the bottom right, but we encourage you to activate an integration allowing to import them from your IT environment, like with Microsoft Entra integration.

+

Players are defined by:

+
    +
  • Email address,
  • +
  • First name,
  • +
  • Last name,
  • +
  • Organization: to link a player to an organization (see below),
  • +
  • Country,
  • +
  • Phone number: necessary if you want to play SMS injects,
  • +
  • PGP public key: necessary if you want to play encrypted email injects,
  • +
  • Tags: if you want to sort them by custom categories.
  • +
+

This list of players can be exported by clicking on the export button, at the top right of the players screen.

+ + +

Teams

+

Teams group players into units that can be targeted by injects during simulations or atomic testing. They serve as a way to represent different security teams (e.g., CSIRT, SOC, VOC) and other relevant teams that might be involved into your scenario (e.g., legal department, communication department).

+

Teams are defined by:

+
    +
  • Name,
  • +
  • Description,
  • +
  • Organization: to link a team to an organization (see below),
  • +
  • Tags: if you want to sort them by custom categories.
  • +
+

From the teams list, you can manage players by clicking on the three-dots inline button on the right and selecting "Manage players." From there, you can view, update, or delete all the team's players and see their communication channels' state.

+ + +

+

Organizations

+

Organization provides a straightforward method to segregate players and teams within the platform. A player associated with an organization, even with the required rights to animate and planned scenarios and simulations, will never see players and teams from other organizations.

+

This feature can be particularly useful if you are using OpenBAS to plan and execute simulations for various companies or subsidiaries.

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/testing/index.html b/1.0.X/usage/testing/index.html new file mode 100755 index 0000000..563a3dc --- /dev/null +++ b/1.0.X/usage/testing/index.html @@ -0,0 +1,3014 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Testing - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Testing

+
+

Under construction

+

We are doing our best to complete this page. If you want to participate, don't hesitate to join the Filigran Community on Slack or submit your pull request on the Github doc repository.

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ +
+ + + + +
+ +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.0.X/usage/variables/index.html b/1.0.X/usage/variables/index.html new file mode 100755 index 0000000..f91b149 --- /dev/null +++ b/1.0.X/usage/variables/index.html @@ -0,0 +1,3309 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Custom variables - OpenBAS Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + + + +
+ +
+ + + + + + + + + +
+
+ + + +
+
+
+ + + + + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + +

Variables

+

Built-In Variables

+

Within certain injects, users can leverage a set of predefined built-in variables to dynamically customize content. +These variables are designed to streamline the process of personalizing messages. +Examples of built-in variables include but not limited to :

+
    +
  • ${user.email}: Represents the email of the target user
  • +
  • ${exercise.name}: Represents the name of the current exercise
  • +
  • ${player_uri}: Represents the player interface platform link
  • +
+

Custom Variables

+

In addition to the built-in variables, users can define their own variables within an exercise.

+

To define custom variables :

+
    +
  1. Select an exercise
  2. +
  3. Navigate to the Definition tab
  4. +
  5. Navigate to the Variables section
  6. +
+

In this section, users can create, update or delete custom variables. +Variables section

+

Limitation

+

To create custom variables, consider the following limitation:

+
    +
  • Only lowercase characters and _ are authorized for the key value
  • +
  • Variable value can only be string
  • +
+

Use Variables

+

These variables can be used to enhance personalization of certain stimuli within an exercise. +Here is a non-exhaustive list of concerned stimuli : +- Email sending +- Sms sending

+

Variables usage

+ + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + \ No newline at end of file diff --git a/latest b/latest new file mode 120000 index 0000000..baece31 --- /dev/null +++ b/latest @@ -0,0 +1 @@ +1.0.X \ No newline at end of file diff --git a/versions.json b/versions.json index fe51488..28e9abc 100644 --- a/versions.json +++ b/versions.json @@ -1 +1,9 @@ -[] +[ + { + "version": "1.0.X", + "title": "1.0.X", + "aliases": [ + "latest" + ] + } +]